Resources文件夹:可以在根目录下,也可以在子目录里,只要名子叫Resources就可以。Resources文件夹下的资源不管你用还是不用都会被打包进.apk(Android包的文件)或者.ipa(Ios包的文件),该文件夹下的资源会被压缩。
Editor文件夹:Editor文件夹可以在根目录下,也可以在子目录里,只要名子叫Editor就可以。Editor下面放的所有资源文件或者脚本文件都不会被打进发布包中,并且脚本也只能在编辑时使用。一般呢会把一些工具类的脚本放在这里。
Gizmos文件夹:比如你想在Scene视图里给某个坐标绘制一个icon,那么这个图片就必须放在该文件夹下。
Plugins文件夹:这个文件夹是专门存放插件的,存放在这个文件夹下的资源会被优先编译,最终也会跟随项目被打包进去,注意这个文件夹只能是Assets文件夹的直接子目录。
StreamingAssets文件夹:所有存放在该文件下的资源都会原封不动的被打包到目标平台,它们的路径会因平台而有差异,但都可以通过Application.streamingAssetsPath来访问存放在这个文件夹下的资源。
以下是在不同平台下访问该文件夹的代码:
①.在台式机(Mac OS或Windows)上,文件的位置可以通过以下代码获得:
path = Application.dataPath + "/StreamingAssets";
②.在iOS,使用:
path = Application.dataPath + "/Raw";
③.在Android上,使用:
path = "jar:file://" + Application.dataPath + "!/assets/";
隐藏文件夹 以.(点)开头的文件夹会被Unity忽略。在这种文件夹中的资源不会被导入,脚本不会被编译。也不会出现在Project视图中。
WebPlayerTemplates 用来替换web build的默认网页。这个文件夹中的脚本都不会被编译。这个文件夹必须作为Assets文件夹的直接子目录。
Standard Assets:在这个文件夹中的脚本最先被编译。
persistentDataPath文件夹:固定路径,在不同的硬件平台上,会是不同的存储路径,就和 PlayerPrefs 一样,不同的平台存储在不同的位置。一般会在这个路径下存放一些持久化的数据,且需要反复读写操作的数据文件。
persistentDataPath文件夹解释:
有些游戏为了让所有的资源全部使用assetbundle,会把一些初始的assetbundle放在StreamingAssets目录下,运行程序的时候在把这些assetbundle拷贝在Application.persistentDataPath目录下,如果这些assetbundle有更新的话,那么下载到新的assetbundle在把Application.persistentDataPath目录下原有的覆盖掉。
因为Application.persistentDataPath目录是应用程序的沙盒目录,所以打包之前是没有这个目录的,直到应用程序在手机上安装完毕才有这个目录。
此文章只是为了记录一下学习笔记,如有不足还望多多指点!