Unity 基础 之 特殊文件夹
Posted 陈言必行
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 基础 之 特殊文件夹相关的知识,希望对你有一定的参考价值。
Resources文件夹
Unity允许你按需动态加载游戏资源到场景中。Resources.Load 函数可以加载项目中位于任何位置的 Resources 文件夹中的资源。你可以有多个Resources文件夹,不管是否是顶级文件夹都可以。在打包后无法写入数据。这个文件夹下不建议放太大的资源,不然打出来的包体太大。
Editor文件夹
Editor文件夹可以在根目录下,也可以在子目录里,只要名字叫Editor就可以。比如目录:/xxx/xxx/Editor 和 /Editor 是一样的,无论多少个叫Editor的文件夹都可以。Editor下面放的所有资源文件或者脚本文件都不会被打进发布包中,并且脚本也只能在编辑时使用。
一般呢会把一些工具类的脚本放在这里,或者是一些编辑时用的DLL。 比如我们现在要做类似技能编辑器,那么编辑器的代码放在这里是再好不过了,因为实际运行时我们只需要编辑器生成的文件,而不需要编辑器的核心代码。
Plugins文件夹
文件夹中存放用于扩展unity功能的插件(多为C/C++写成的原生动态链接库(DLLs))。这些插件可以访问第三方代码库,系统API以及其他超出Unity功能的模块。
StreamingAssets文件夹
这个文件夹下的资源也会全都打包在.apk或者.ipa 它和Resources的区别是,Resources会压缩文件,但是它不会压缩原封不动的打包进去。并且它是一个只读的文件夹,就是程序运行时只能读不能写。
它在各个平台下的路径是不同的,不过你可以用Application.streamingAssetsPath 它会根据当前的平台选择对应的路径。
有些游戏为了让所有的资源全部使用assetbundle,会把一些初始的assetbundle放在StreamingAssets目录下,运行程序的时候在把这些assetbundle拷贝在Application.persistentDataPath目录下,如果这些assetbundle有更新的话,那么下载到新的assetbundle在把Application.persistentDataPath目录下原有的覆盖掉。
因为Application.persistentDataPath目录是应用程序的沙盒目录,所以打包之前是没有这个目录的,直到应用程序在手机上安装完毕才有这个目录。
StreamingAssets目录下的资源都是不压缩的,所以它比较大会占空间,比如你的应用
Gizmos文件夹
Unity的Gizmos类可在Scene视口中绘制图像用来显示设计细节。Gizmos.DrawIcon函数可以在场景视口中绘制一个图标以标记特殊的对象和位置。该函数使用的图像文件需要位于 Gizmos 中。
Hidden Assets文件夹
在导入阶段,Unity将完全忽略以下文件夹下的资源:
- 以 Hidden 命名的文件夹。
- 以 ‘.’ 开头的文件和文件夹
- 以 ‘~’ 开头的文件和文件夹
- 以 ‘cvs’ 命名的文件和文件
- 以 ‘tmp’ 为扩展名的文件
以上是关于Unity 基础 之 特殊文件夹的主要内容,如果未能解决你的问题,请参考以下文章
Unity3D研究院之手游开发中所有特殊的文件夹(不是原创)