Unity(二)——Resources资源动态加载

特殊文件夹

一、工程路径获取

Application.dataPath

一般情况下只在编辑模式下使用

二、Resources资源文件夹

路径获取

cs 复制代码
print(Application.dataPath+"/Resources");

需要手动创建Resources

作用:需要通过Resources相关的API,该文件夹下的所有文件都会被打包出去,打包时Unity会对其压缩加密,该文件夹打包后只读,只能通过Resources相关API加载

三、StreamingAssets流动资源文件夹

cs 复制代码
print(Application.streamingAsstePath);

需要手动创建

千万不能写成上面那种获取方式

作用:打包出去不会被压缩加密,移动平台只读,PC端可读可写,可以放入一些需要自定义动态加载的初始资源

四、PreisitentDataPath持久数据文件夹

路径获取

cs 复制代码
print(Application.persistentDataPath);

作用:固定数据文件夹,任何平台可读可写

五、Pligins插件文件夹

路径获取,一般不获取

需要自己创建

作用:不同平台的插件相关文件

六、Editor编辑器文件夹

路径获取,一般不获取

需要自己创建

作用:放编辑器相关文件

Resources同步加载

注意:自己创建,名字不能写错

一、Resources资源加载的作用

通过代码动态加兹安Resources文件夹下指定路径资源,避免繁琐的拖曳动作

二、常用资源类型

1.预设体------GameObject

2.音效文件------AudioClip

3.文本文件------TextAsset

3.图片文件------Texture

5.其他类型------需要什么用什么类型

注意:预设体对象加载需要实例化,其他资源加一般直接用

三、资源同步加载 普通方法

1.预设体加载

创建到场景上,所以要实例化

cs 复制代码
//第一步:加载预设体资源文件
Object obj = Resources.Load("Cube");
//第二步:一定要进行实例化
Instantiate(obj);

2.音效资源

切片文件是要放在音效文件的切片上

后面是在Resources文件下的文件路径

3.文本资源

文本资源支持的文件:

.txt

.xml

.bytes

.json

.html

.csv

4.图片资源

5.资源同名解决方式

四、资源同步加载 泛型方法

Resources异步加载

一、Resources异步加载是什么

为了防止同步加载造成的卡顿,开多线程来防止卡顿

缺点:不能马上加载使用,至少要等一帧

二、Resources异步加载方法

1.通过异步加载中的完成事件监听,使用加载的资源

固定搭配

2.通过协程 使用加载的资源

协程异步加载要舒服一点,自我感觉

Resources卸载资源

一、Resources重复加载资源不会浪费内存

加载完之后就作为缓存了,不会浪费内存,但是会浪费性能

二、如何手动释放掉缓存的资源

注意:不能释放GameObject的和实例化的对象

1.卸载指定资源

2.卸载未使用资源

一般配合GC使用

相关推荐
叶帆15 天前
【YFIOs】用C#开发硬件之设备上云
开发语言·unity·c#
久数君15 天前
AI三维建模工具“造形家”:地理场景三维化的高效解决方案
unity·glb·ai算法·ai三维建模工具·地图框选·造形家·城市建筑模型
会思考的猴子15 天前
Unity VFX 属性 Postion 和 TargetPostion
unity
hai31524754315 天前
九章编程法 · 猜数字游戏 (GW-BASIC 重构版) *
人工智能·microsoft·游戏引擎·游戏程序
心前阳光15 天前
Unity资源导入之自动化资源导入
unity·自动化·游戏引擎
心前阳光15 天前
Unity之2021.3.45f2c1发布安卓程序遇到的问题
android·unity·游戏引擎
纪纯16 天前
PicoVR Unity Integration SDK 3.4 常用交互API
unity·游戏引擎·vr·pico
龙智DevSecOps解决方案16 天前
3A 游戏优化技术栈:如何打通引擎级分析工具与 DevOps 持续集成管线?
unity·性能优化·游戏开发·技术美术·perforce·unrealengine
葛兰岱尔16 天前
从 SolidWorks 到 Three.js,从 Inventor 到 Unity——制造业CAD模型“几何-语义一体化“转换,不再是天方夜谭!
开发语言·javascript·unity
鼎艺创新科技16 天前
三维电子沙盘中OSGB倾斜摄影数据的加载与渲染
游戏引擎·cocos2d