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使用

相关推荐
mxwin4 小时前
Unity Shader URP:法线如何进行光照计算
unity·游戏引擎·shader
郝学胜-神的一滴5 小时前
中级OpenGL教程 009:用环境光告别模型死黑
前端·c++·unity·godot·图形渲染·opengl·unreal
一锅炖出任易仙7 小时前
创梦汤锅学习日记day30
学习·ai·ue5·游戏引擎
mxwin16 小时前
Unity URP 中的法线生成完全指南
unity·游戏引擎
游乐码16 小时前
Unity基础(十五)LineRender画线功能
unity·游戏引擎
玖玥拾17 小时前
Cocos学习笔记:瓦片地图与坐标转换
游戏引擎·cocos2d
小贺儿开发18 小时前
Unity3D 图片循环查看器
unity·工具·图片·列表·循环·ugui·互动
晓131321 小时前
【Cocos Creator 3.x】篇——第二章 入门
前端·javascript·游戏引擎
玖玥拾1 天前
Cocos学习笔记:粒子系统与对象层批量处理
游戏引擎·cocos2d
是果果呀儿1 天前
Vuforia实现物体旋转、移动、缩放
unity·增强现实