/Assets
- 对应
Application.dataPath
- unity的资源目录,根目录,只有一个。
project
窗口里的内容与之对应 - 大部分API默认资源在Assets目录中,不需要明确指出Assets路径。
但有例外,如AssetDataBase
/**/Resources
- 资源目录名,可以是子目录
- 这类目录下的资源会被打包
- 使用
Resources.Load
加载其中资源 - 如果是在Editor目录下,不会打包进游戏
/Assets/**/Editor
- 编辑器目录名,可以是子目录。编辑器要用的脚本和资源放在这里面
- 不会被编译到游戏里去
- Editor目录里的asset只能被
Editor Script
加载,加载APIEditorGUIUtility.Load
- Editor目录下的脚本组件不要继承
MonoBehaviour
,因为不能加载到GameObject上
/Assets/Editor Default Resources
- 编辑器脚本使用
EditorGUIUtility.Load
加载资源时,会在这里面找。
/Assets/Plugins
- 插件目录,通常放置C/C++扩展的静态DLL
- 插件目录里的Editor子目录只用于编辑器,不会打包进游戏。
- 插件相关官方说明
/Assets/Standard Assets
- 使用
menu: Assets > Import Package
加入的标准资源包,会放到里面。
/Assets/StreamingAssets
- 对应
Application.streamingAssetsPath
,只读的。 - StreamingAssets目录下的资源会被复制到不同平台的特定目录,详见官方文档。
- StreamingAssets目录下的
*.dll
不会participate in the compilation
。 - 官方文档·StreamingAssets目录
Application.persistentDataPath
- 游戏在手机上安装后才有这个目录
- 这个目录可以存放热更文件
/Temp
- 对应
Application.temporaryCachePath
隐藏目录
unity会忽略下面的目录或文件
-
.*
类型的文件或目录 -
*~
类型的文件或目录 -
cvs
命名的文件或目录 -
*.tmp
类型的文件 - 系统隐藏目录
/Assets/Gizmos
Unity’s Gizmos allow you to add graphics to the Scene View to help visualise design details that are otherwise invisible.
The Gizmos.DrawIcon function places an icon in the Scene to act as a marker for a special object or position.
You must place the image file used to draw this icon in a folder called Gizmos in order for it to be located by the DrawIcon function.
特殊目录和脚本编译顺序
脚本编译顺序影响脚本间的引用,一个文件使用另一个脚本定义的类,则它需要在另一个脚本之后编译。
编译有4层优先级
- 1号优先级:Standard Assets, Pro Standard Assets, Plugins目录下的脚本
- 2号优先级:Standard Assets, Pro Standard Assets, Plugins的子孙目录Editor下的脚本
- 3号优先级:其他不再Editor目录下的脚本
- 4号优先级:剩下的Editor目录下的脚本