1.Assets
unity项目中最重要的文件夹,保存着当前项目中的所有资源。
拓展文件夹:
Eiditor:所有在此文件下的脚本或文件夹都不会在运行期间被编译,脚本可引用 using UnityEditor; ,使用编辑器专属API(自定义菜单栏、Inspector面板、编辑器窗口、批量导出工具);常用来批量修改资源、自定义属性面板、场景快速生成工具、一键打包工具、插件编辑器代码。
Gizmos:Assets/Gizmos,必须在Assets一级目录,全项目只能1个,不能多层嵌套新建Gizmo;专门给Gizmos.DrawIcon()在Scene窗口自定义图标。
Plugins:用于存放插件资源。
Resource:用来存放需要通过代码初始化来使用的一些资源,以及代码动态的加载资源(感觉是最常用的)
实例代码:
//路径不带Resources、不带后缀,加载预制体
GameObject pre = Resources.Load<GameObject>("Monster/Slime");
//实例化生成物体,后面可以再传两个参数:transform.position(坐标),transform.rotation(旋转)
Instantiate(pre);StreamingAssets:只能在Assets根目录新建;可跨平台统一路径,通过string path = Path.Combine(Application.streamingAssetsPath, "test.txt")读取,每个平台所读取到的路径(安卓、Windows等)是不一样的,简单读取代码演示:
//IEnumerator:协程返回值,必须配合StartCoroutine调用
IEnumerator ReadFile()
{
//拼接文件完整路径:StreamingAssets路径+文件名cfg.json
var req = UnityWebRequest.Get(Path.Combine(Application.streamingAssetsPath,"cfg.json"));
//发送网络请求,暂停协程,等下载完成再往下执行
yield return req.SendWebRequest();
//把下载到的文本数据存入txt变量
string txt = req.downloadText;
}
StreamingAssets的特点就是打包原始文件结构,可放视频、压缩包、自定义配置,以及只能读写,不能写入修改;一般用来放一些我们要播放的视频,并且可以在平台进行读取就会用这个。
Stadard Assets:当我们使用Unity的标准资源库时就会默认放到这个文件夹里面。
特殊的文件--mate文件:与资源文件是一一对应的,不仅是资源文件文件夹也有,用于记录资源的原数据,也就是当我们导入资源时Unity将为我们记下这些资产的原始数据,比如像某个脚本上挂载了什么挂机,都会被mate文件给记录下来,以及用来标记该资产在我们的项目里面的身份。
2.Library
保存着当前项目中所需要的库文件。
3.Logs
当前项目中各种各样的输出日志等等。
4.Packages
用于记录项目中使用到的插件的信息。
5.ProjectSettings
保持着项目中的各种设置,如输入设置等。
6.UserSettings
仅重置你自己的编辑器布局和偏好,项目资源、打包参数完全不受影响(不是很重要,可以直接无视)。
评论