-
隱藏文件夾
以.開頭的文件夾會(huì)被Unity忽略。在這種文件夾中的資源不會(huì)被導(dǎo)入,腳本不會(huì)被編譯缠借。也不會(huì)出現(xiàn)在Project視圖中干毅。這種文件我們可以在資源瀏覽器的時(shí)候,能找到這些文件泼返。
-
Standard Assets
在這個(gè)文件夾中的腳本最先被編譯硝逢。一般是放一些Unity 內(nèi)置的一些資源。
這個(gè)文件夾中的腳本會(huì)被導(dǎo)出到Assembly-CSharp-firstpass,Assembly-UnityScript-firstpass 或 Assembly-Boo-firstpass項(xiàng)目中符隙,依語言而定趴捅。
參考http://docs.unity3d.com/Documentation/Manual/ScriptCompileOrderFolders.html 垫毙。在這個(gè)文件夾中的腳本比其他腳本都要先編譯霹疫。將腳本放在這個(gè)文件夾里,就可以用C#腳本來訪問js腳本或其他語言的腳本综芥。
-
Pro Standard Assets
和StandardAssets相同丽蝎,只不過里面的文件是給Pro版本的Unity使用的。當(dāng)然它的功能更為的豐富膀藐,例如一些高級(jí)內(nèi)置的shader文件屠阻,只有在Pro版才能起作用。
-
Editor
以Editor命名的文件夾允許其中的腳本訪問UnityEditor的API额各。如果腳本中使用了在UnityEditor命名空間中的類或方法国觉,它必須被放在名為Editor的文件夾中。Editor文件夾中的腳本不會(huì)在build時(shí)被包含虾啦。
在項(xiàng)目中可以有多個(gè)Editor文件夾麻诀。[注意:如果在普通的文件夾下,Editor文件夾可以處于目錄的任何層級(jí)傲醉。如果在特殊文件夾下蝇闭,那Editor文件夾必須是特殊文件夾的直接子目錄。]
Editor Default Resources
你可以把編輯器用到的一些資源放在這里硬毕,比如圖片呻引、文本文件、等等吐咳。它和Editor文件夾一樣都不會(huì)被打到最終發(fā)布包里逻悠,僅僅用于開發(fā)時(shí)使用。你可以直接通過EditorGUIUtility.Load去讀取該文件夾下的資源.Plugins
Plugins文件夾用來放native插件韭脊。它們會(huì)被自動(dòng)包含進(jìn)build中去童谒。注意這個(gè)文件夾只能是Assets文件夾的直接子目錄。
例如:Windows:dll文件乾蓬;Mac OS X:bundle文件惠啄;Linux下:.so文件。
和StandardAssets一樣,這里的腳本會(huì)更早的編譯撵渡,并且允許它們被之外的腳本訪問融柬。
6.1 Plugins/x86 || x86_64 (一般PC平臺(tái))
如果為32bit或64bit平臺(tái)創(chuàng)建游戲,那么這個(gè)文件夾下的nativeplugin文件會(huì)被自動(dòng)的包含在游戲build中趋距。如果這個(gè)文件夾不存在粒氧,則Unity會(huì)查找Plugins文件夾下的nativepluglins。
如果要?jiǎng)?chuàng)建universalbuild节腐,建議你同時(shí)使用這兩個(gè)文件夾外盯。然后將32bit和64bit的nativeplugins放進(jìn)相應(yīng)的文件夾中。
6.2 Plugins/Android
在這個(gè)文件夾里放入Java.jar文件翼雀。用于java語言的plugins饱苟。.so文件也會(huì)被包含進(jìn)來。
官方文檔:http://docs.unity3d.com/Documentation/Manual/PluginsForAndroid.html
6.3 Plugins/iOS
在這個(gè)文件夾放入.o狼渊、.m 箱熬、 .mm 、.c 狈邑、.cpp等文件城须,一般在IOS 平臺(tái)導(dǎo)出對(duì)應(yīng)的文件。
官方文檔:
http://docs.unity3d.com/Documentation/Manual/PluginsForIOS.html
- Resources
Resources文件夾允許你在腳本中通過文件路徑和名稱來訪問資源米苹。放在這一文件夾的資源永遠(yuǎn)被包含進(jìn)build中糕伐,即使它沒有被使用。因?yàn)閁nity無法判斷腳本有沒有訪問了其中的資源蘸嘶。項(xiàng)目中可以有多個(gè)Resources文件夾良瞧,因此不建議在多個(gè)文件夾中放同名的資源。一旦build游戲亏较,Resources文件夾中的所有資源被打包進(jìn)游戲存放資源的archive中莺褒。這樣在游戲的build中就不存在Resources文件夾了。即使腳本中仍然使用了資源在項(xiàng)目中的路徑雪情。
官方文檔:http://docs.unity3d.com/Documentation/Manual/LoadingResourcesatRuntime.html
注意:
當(dāng)資源作為腳本變量被訪問時(shí)遵岩,這些資源在腳本被實(shí)例化后就被加載進(jìn)內(nèi)存。如果資源太大巡通,你可能不希望它被這樣加載尘执。那么你可以將這些大資源放進(jìn)Resources文件夾中,通過Resources.Load來加載宴凉。當(dāng)不再使用這些資源了誊锭,可以通過Destroy物體,再調(diào)用Resources.UnloadUnusedAssets來釋放內(nèi)存弥锄。
特點(diǎn):
(1).文件夾內(nèi)資源打包集成.asset 文件里面丧靡,例如一些shader/material/prefab等資源文件;
(2).里面的資源只能是只讀蟆沫,不能動(dòng)態(tài)修改,一般動(dòng)態(tài)的更新的資源不雅放在這個(gè)文件夾內(nèi);
(3).通過主線程加載温治;
(4). Resources.Load();加載資源
Resources.LoadAll();加載所有資源
Resources.LoadAsync();異步加載資源
Gizmos
Gizmos文件夾存放用Gizmos.DrawIcon方法使用的貼圖饭庞、圖標(biāo)資源。放在Gizmos文件夾中的貼圖資源可以直接通過名稱使用熬荆,可以被Editor作為gizmo畫在屏幕上舟山。這里還是要說說OnDrawGizmos()方法,只要腳本繼承了MonoBehaviour后卤恳,并且在編輯模式下就會(huì)每一幀都執(zhí)行它累盗。發(fā)布的游戲肯定就不會(huì)執(zhí)行了,它只能用于在scene視圖中繪制一些小物件突琳。比如要做攝像機(jī)軌跡若债,那么肯定是要在Scene視圖中做一個(gè)預(yù)覽的線,那么用Gizmos.DrawLine和Gizmos.DrawFrustum就再好不過了本今。WebPlayerTemplates
用來替換webbuild的默認(rèn)網(wǎng)頁拆座。這個(gè)文件夾中的腳本都不會(huì)被編譯。這個(gè)文件夾必須作為Assets文件夾的直接子目錄冠息。StreamingAssets
這里的文件會(huì)被拷貝到build文件夾中,不會(huì)修改(移動(dòng)和網(wǎng)頁版不同孕索,他們會(huì)被嵌入到最終build文件中)逛艰。它們的路徑會(huì)因平臺(tái)而有差異,但都可以通過Application.streamingAssetsPath來訪問搞旭。StreamingAssets目錄下的資源都是不壓縮的散怖,而且它比較大會(huì)占空間。