AssetBundle.Unload(true)无法卸载图集

news2024/10/6 0:33:52

1)AssetBundle.Unload(true)无法卸载图集
​2)关于Unity 2D游戏地图预加载的问题
3)Addressables能否支持某些资源不打Bundle直接加载源文件


这是第342篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。

Loading

Q:如图,AssetBundle.Unload(true)中仍然有一份图集残留在内存中,使用Resources.UnloadUnusedAssets()可以卸载,但用GC.Collect无法卸载,若不调用Resources.UnloadUnusedAssets(),有其他的办法可以卸载这个图集吗?

A1:目前Unity 3D中的Atlas不需要额外的卸载操作,只需要确保Atlas的AssetBundle和引用Atlas的AssetBundle完全卸载后,Atlas自然会卸载。

感谢沐风@UWA问答社区提供了回答

A2:可以试试Resources.UnloadAsset,印象中切换场景会自动调用UnloadUnusedAssets。

感谢Knight-132872@UWA问答社区提供了回答


Loading

Q:请问,2D游戏地图如何实现地图的无缝预加载功能?需要具体学习什么才能写出来相关的代码呢?

A1:假设上一个关卡为x-1,本关卡为x,下一关卡为x+1,根据需要提前预加载x+-y的关卡数量就行了,以本身关卡ID去计算需加载的范围,每次切换关卡根据关卡重新计算范围。

感谢曹潘赣@UWA问答社区提供了回答

A2:用一个工具说明一下思路LDTK。

导出的数据是以关卡为单位的。进入目标关卡时,要队列加载相邻的关卡,如果加载过程中卡顿体验不好则要预测下一个目标关卡,并在加载时用其它视觉效果掩盖加载卡顿。

还有一种是把所有关卡都加载完,关卡转换基本上是无感的,这种要考虑解决内存和效率问题。

具体代码实现就是使用工具提供的API,有编程基础就没有问题。

如果是Unity,则涉及到资源加载、场景等概念。

感谢李伟@UWA问答社区提供了回答


AssetBundle

Q:请问Addressables能否支持某些资源不打Bundle直接加载源文件,比如mp4、bytes文件等?

A:Addressables也是基于Bundle的,像播放mp4这样的文件如果在Bundle中则可能播放出错,可以在资源更新时把这样的文件读出来,放到设备的用户目录里,使用时就可以直接用文件或路径了。

bytes这样的文件可以放到Bundle里,某个版本的TextAsset里添加了新方法 ,这个方法可以用一下:

public NativeArray<T> GetData<T>() where T : struct;

对于大量数据表只需要用一个ByteBuffer来处理。如果存储的数据可以分块读取,那内存也不会占用很多。

感谢李伟@UWA问答社区提供了回答

封面图来源于网络


今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。

UWA官网:www.uwa4d.com
UWA社区:community.uwa4d.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/748600.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何在CSDN博客平台上吸引铁粉

&#x1f3c6;荣誉认证&#xff1a;51CTO博客专家博主、TOP红人、明日之星&#xff1b;阿里云开发者社区专家博主、技术博主、星级博主。 &#x1f4bb;微信公众号&#xff1a;微笑的段嘉许 &#x1f4cc;本文由微笑的段嘉许原创&#xff01; &#x1f389;欢迎关注&#x1f5…

照片文件大小怎么修改为200k?图片压缩怎么指定大小?

日常生活和工作中&#xff0c;经常用到图片&#xff0c;但是有时候需要将图片压缩指定大小来符合各种规定&#xff0c;比如图片压缩到200kb&#xff0c;那么有没有简单方便的图片压缩&#xff08; https://www.yasuotu.com/imagesize&#xff09;的方法呢&#xff1f;下面就拿压…

Centos 7 安装 Oracle 11G

Oracle 11G 安装教程 准备环境 p13390677_112040_Linux-x86-64_1of7.zipp13390677_112040_Linux-x86-64_2of7.zipCentos 7- rhel7-英文版的系统–不想换语言的执行(LANGen_US)– 传输 文件到服务器上 创建用户和组 [rootlocalhost ~]# groupadd oracle [rootlocalhost ~]…

用cmd命令刷新dns缓存

DNS flush with “ipconfig /flushdns” To flush the DNS via CMD, use the command ipconfig. To do this, enter the following command and confirm it with enter: ipconfig /flushdns After successful execution, you will receive a message that the DNS resolution…

【Go语言开发】将logrus日志送到elasticsearch构成elk体系

写在前面 这篇文章我们来讲讲怎么把logrus日志送到es。 使用的日志库是 github.com/sirupsen/logrus&#xff0c;由于这个包中的日志对象是可以接入很多个hook的&#xff0c;所以我们可以使用hook来接入 elasticsearch 来操作 。 hook 就是钩子&#xff0c;当设置hook在某个点…

第一章 SegFormer(语义分割篇)——SegFormer: 简单高效的基于Transformer的语义分割设计

0.摘要 我们提出了SegFormer&#xff0c;这是一个简单、高效且强大的语义分割框架&#xff0c;它将Transformer与轻量级多层感知机&#xff08;MLP&#xff09;解码器结合在一起。 SegFormer具有两个吸引人的特点&#xff1a; 1&#xff09;SegFormer包含一个新颖的层次结构的…

【C语言】猜数字游戏

问题描述 猜数字游戏是令游戏机随机产生一个100以内的正整数&#xff0c;用户输入一个数对其进行猜测&#xff0c;需要你编写程序自动对其与随机产生的被猜数进行比较&#xff0c;并提示大了&#xff08;“Too big”&#xff09;&#xff0c;还是小了&#xff08;“Too small”…

springboot项目target下面没有mapper.xml文件

文件结构是这个样子,mapper.xml文件在resources/mappers/fdms目录下面 通常来说, 将mapper打包到target目录下只需要在maven下面配置 <resources><resource><directory>src/main/resources</directory><filtering>true</filtering><inc…

prometheus采集服务的jmx数据,grafana通过dashboard展示jmx数据

prometheus采集服务的jmx数据&#xff0c;grafana通过dashboard展示jmx数据 一、下载prometheus二、解压prometheus三、查看prometheus目录四、查看prometheus版本五、查看prometheus的配置文件六、启动prometheus七、登陆prometheus八、查看prometheus jmx九、下载grafana十、…

嵌入式内核及驱动开发高级

一、起源 仅devfs&#xff0c;导致开发不方便以及一些功能难以支持&#xff1a; 热插拔 不支持一些针对所有设备的统一操作&#xff08;如电源管理&#xff09; 不能自动mknod 用户查看不了设备信息 设备信息硬编码&#xff0c;导致驱动代码通用性差&#xff0c;即没有分离…

AI实现口语练习技术解决方案

最近AI技术取得了技术上的突破&#xff0c;可以非常智能化的实现人机交互。在应用场景上很自然会想到利用AI来实现口语练习&#xff0c;下面和大家分享AI实现口语练习的AI技术方案和开发流程&#xff0c;只列出的整体思路和概略步骤&#xff0c;具体的步骤可能会根据具体的需求…

HttpClient——入门案例(发送http请求)

前言介绍 总结就是使得可以在java程序中发送http请求。 导入依赖 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.13</version></dependency> 发送get请求 用…

分享电商平台美食产品—味尚拉面半干面

很高兴跟您分享电商平台上一款刚推出的热门美食产品——味尚拉面 半干面。 味尚拉面 半干面&#xff0c;由厂家精心制作而成&#xff0c;是一款十分劲道爽口的拉面&#xff0c;让您在繁忙的生活中享受到美味的口感。 作为一款电商平台上备受瞩目的产品&#xff0c;味尚拉面 半干…

​揭示嵌入式系统中的难题和解决方案

嵌入式系统设计和开发过程中存在一些常见难题&#xff0c;下面是这些难题以及相应的解决方案的简要概述。 处理资源受限&#xff1a;嵌入式系统通常具有有限的处理能力、存储容量和能源。解决方案包括&#xff1a;优化算法和数据结构&#xff0c;选择适合的硬件平台&#xff0c…

VUE2教程-基础-简介

Vue.js 是什么 Vue (读音 /vjuː/&#xff0c;类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是&#xff0c;Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层&#xff0c;不仅易于上手&#xff0c;还便于与第三方库或既有项目整合。另一…

【教程】爬取和统计Google Scholar上指定关键词的文章信息

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 目录 背景介绍 未来改进 参考代码 背景介绍 通过自动点击页面来抓取文章信息。这个脚本对于用来看某个关键词在近几年的研究趋势很有用~半自动&#xff1a;当遇到谷歌人机验证&#xff0c;需要手动完成。注意…

SAP MIRO发票过账报错 这个项目不允许输入税

SAP MIRO发票过账报错 这个项目不允许输入税 J3税额0.01为手动输入 原因是含税金额0.08 * J3对应税率&#xff0c;结果保留2位小数大小&#xff0c;系统不允许输入税额

HarmonyOS/OpenHarmony应用开发-Stage模型UIAbility组件使用(四)

UIAbility组件与UI的数据同步 基于HarmonyOS的应用模型&#xff0c;可以通过以下两种方式来实现UIAbility组件与UI之间的数据同步。 1.EventHub&#xff1a;基于发布订阅模式来实现&#xff0c;事件需要先订阅后发布&#xff0c;订阅者收到消息后进行处理。 2.globalThis&…

XSS靶场【1-10关】攻击攻略

文章目录 第一关第二关第三关第四关第五关第六关第七关第八关第九关第十关 通过&#xff08;xss-labs-master&#xff09;[]PHPStudy搭建的XSS靶场1-10关的攻击教程需要下载好XSS靶场源码&#xff0c;导入到phpstudy的WWW目录下攻击主机需要安装BurpSuit、FoxyProxy浏览器插件&…

第三十章:数据库其他调优策略

第三十章&#xff1a;数据库其他调优策略 30.1&#xff1a;数据库调优的措施 调优的目标 尽可能的节省系统资源&#xff0c;以便系统可以提供更大负荷的服务(吞吐量更大)。合理的结构设计和参数调整&#xff0c;以提高用户操作响应的速度。(响应速度更快)。减少系统的瓶颈&…