Unity基础学习(八)Unity中的特殊文件夹们_unity特殊文件夹
目录
一、工程路径
三、StreamingAssets 流动资源文件夹
四、persistentDataPath文件夹
五、Plugins插件文件夹
六、Editor编辑器文件夹
七、默认资源文件夹 Standard Assets
八、Hidden Assets
九、Editor Default Resources
十、Gizmos 标注资源文件夹
十一、WebGLTemplates
十二、Tests 测试文件夹
总结啦总结啦
补充说明表格:
一、工程路径
即你创建的Unity工程所在的路径,可以这样得到
Debug.Log(Application.dataPath);

注意 该方式 获取到的路径 一般情况下 只在编辑器模式下使用
我们不会在实际发布到游戏后 还使用该路径
游戏发布过后 该路径就不存在了
特性:
编辑器模式下指向项目Assets文件夹的上级目录
打包后路径结构会改变(移动平台变为.apk/.ipa包内路径)
发布后不可写,仅用于读取初始资源
二、Resources 资源文件夹
路径获取:Debug.Log(Application.dataPath + \"/Resources\");

一般不获取
只能使用Resources相关的API进行加载
如果硬要获取 只能通过工程路径拼接
注意:
需要我们自己创建
作用:
资源文件夹
1-1需要通过Resources 相关的API动态加载的资源需要放在其中
1-2该文件夹下的所有文件都会被打包出去
1-3打包时Unity会对其压缩加密
1-4该文件夹打包后仅可读 只能通过Resources相关API加载
支持子文件夹Resources/SubFolder的多级嵌套
使用Resources.Load()加载时不需要文件扩展名
可通过Resources.LoadAll()批量加载
建议通过Resources.UnloadUnusedAssets()释放资源
过度使用会导致包体膨胀,建议仅存放必需资源
三、StreamingAssets 流动资源文件夹
路径获取
Debug.Log(Application.streamingAssetsPath);

注意
必须手动创建
作用:
流文件夹
2-1打包出去不会被压缩加密 可以任由我们摆布
2-2移动平台仅可读 PC端可读可写
2-3可以放入一些需要自定义动态加载的初始资源
四、persistentDataPath文件夹
//路径获取
Debug.Log(Application.persistentDataPath);

注意:
不需要手动创建
作用:
固定数据文件夹
3-1所有平台可读可写
3-2一般用于放置动态下载或者动态创建的文件,游戏中创建或者获取到的文件都放在其中
五、Plugins插件文件夹
路径获取 一般不获取
注意:
需要我们自己手动创建
作用
插件文件夹
不同平台的插件相关文件放在其中
比如ios和Android平台
六、Editor编辑器文件夹
路径获取
Debug.Log(Application.dataPath + \"/Editor\");

一般不获取 因为不会改动他
如果硬要获取 只能拼接
注意:
需要我们自己手动创建
作用:
编辑器文件夹
6-1开发Unity编辑器时,编辑器相关的脚本放在该文件夹中
6-2该文件夹中内容不会被打包出去
七、默认资源文件夹 Standard Assets
路径一般不获取
注意:
需要我们自己手动创建
作用:默认的资源文件夹
一般Unity自带资源都会被放在这个文件夹下
代码和资源优先被编译
八、Hidden Assets
路径:任何以.开头的文件夹
特性:
不会被Package Manager识别
常用于存放临时文件/测试资源
仍需手动管理避免资源冗余
九、Editor Default Resources
路径:Assets/Editor Default Resources
作用:
存放编辑器默认资源(图标、预设等)
通过
EditorGUIUtility.Load()加载示例:
Texture2D icon = EditorGUIUtility.Load(\"Icons/PlayButton.png\") as Texture2D;
十、Gizmos 标注资源文件夹
路径:Assets/Gizmos
用途:
存放场景视图的标注图标
通过
Gizmos.DrawIcon()显示支持自定义
.png图标(需开启alpha通道)
十一、WebGLTemplates
路径:Assets/WebGLTemplates
作用:
自定义WebGL加载页面
包含
index.html模板文件可修改加载动画/背景样式
十二、Tests 测试文件夹
路径:Assets/Tests
特性:
存放单元测试脚本
使用Unity Test Framework
支持EditMode/PlayMode测试
总结啦总结啦
Application.dataPath(上级目录)Application.dataPath + \"/Resources\"Resources.Load()加载- 仅可读
- 所有资源强制打包
Application.streamingAssetsPath- PC端可写
- 跨平台路径差异大
Application.persistentDataPath- 适合存档/下载内容
Plugins/Android)- 支持
[DllImport]调用Application.dataPath + \"/Editor\"- 可使用
UNITY_EDITOR宏- 包含基础着色器/脚本
.开头的文件夹- 仍会被打包
Assets/Editor Default ResourcesEditorGUIUtility.Load()加载- 存放编辑器图标/预设
Assets/GizmosGizmos.DrawIcon()显示- 支持自定义调试工具
Assets/WebGLTemplatesindex.html模板- 支持自定义HTML/CSS
Assets/Tests- 生成测试报告
补充说明表格:
Resources.Load()UnityWebRequest/File.ReadAllBytes()File.ReadAllText()


