1. 隱藏文件夾
以.開頭的文件夾會被忽略。在這種文件夾中的資源不會被導入,腳本不會被編譯。也不會出如今Project視圖中。這種文件咱們能夠在資源瀏覽器的時候,能找到這些文件。
2. Standard Assets
在這個文件夾中的腳本最早被編譯。通常是放一些Unity 內置的一些資源。
這個文件夾中的腳本會被導出到Assembly-CSharp-firstpass, Assembly-UnityScript-firstpass 或 Assembly-Boo-firstpass項目中,依語言而定。
官方文檔:http://docs.unity3d.com/Documentation/Manual/ScriptCompileOrderFolders.html
在這個文件夾中的腳本比其餘腳本都要先編譯。將腳本放在這個文件夾裏,就能夠用C#腳原本訪問js腳本或其餘語言的腳本。
3. Pro Standard Assets
和Standard Assets相同,只不過裏面的文件是給Pro版本的Unity使用的。固然它的功能更爲的豐富,例如一些高級內置的shader文件,只有在Pro版才能起做用。
4. Editor
以Editor命名的文件夾容許其中的腳本訪問Unity Editor的API。若是腳本中使用了在UnityEditor命名空間中的類或方法,它必須被放在名爲Editor的文件夾中。Editor文件夾中的腳本不會在build時被包含。
在項目中能夠有多個Editor文件夾。[注意:若是在普通的文件夾下,Editor文件夾能夠處於目錄的任何層級。若是在特殊文件夾下,那Editor文件夾必須是特殊文件夾的直接子目錄。]
5. Editor Default Resources
你能夠把編輯器用到的一些資源放在這裏,好比圖片、文本文件、等等。它和Editor文件夾同樣都不會被打到最終發佈包裏,僅僅用於開發時使用。你能夠直接經過EditorGUIUtility.Load去讀取該文件夾下的資源,例如:
TextAsset text = EditorGUIUtility.Load(「1.txt")as TextAsset;
6. Plugins
Plugins文件夾用來放native插件。它們會被自動包含進build中去。注意這個文件夾只能是Assets文件夾的直接子目錄。
例如:Windows:dll文件;
Mac OS X:bundle文件;
Linux下:.so文件。
和Standard Assets同樣,這裏的腳本會更早的編譯,而且容許它們被以外的腳本訪問。
6.0. Plugins/x86 || x86_64 (通常PC平臺)
若是爲32bit或64bit平臺建立遊戲,那麼這個文件夾下的native plugin文件會被自動的包含在遊戲build中。若是這個文件夾不存在,則Unity會查找Plugins文件夾下的native pluglins。
若是要建立universal build,建議你同時使用這兩個文件夾。而後將32bit和64bit的native plugins放進相應的文件夾中。
6.2. Plugins/iOS
在這個文件夾放入.o、.m 、 .mm 、.c 、.cpp等文件,通常在IOS 平臺導出對應的文件。
官方文檔:http://docs.unity3d.com/Documentation/Manual/PluginsForIOS.html
7. Resources
Resources文件夾容許你在腳本中經過文件路徑和名稱來訪問資源。放在這一文件夾的資源永遠被包含進build中,即便它沒有被使用。由於Unity沒法判斷腳本有沒有訪問了其中的資源。項目中能夠有多個Resources文件夾,所以不建議在多個文件夾中放同名的資源。一旦build遊戲,Resources文件夾中的全部資源被打包進遊戲存放資源的archive中。這樣在遊戲的build中就不存在Resources文件夾了。即便腳本中仍然使用了資源在項目中的路徑。
官方文檔:http://docs.unity3d.com/Documentation/Manual/LoadingResourcesatRuntime.html
注意:當資源做爲腳本變量被訪問時,這些資源在腳本被實例化後就被加載進內存。若是資源太大,你可能不但願它被這樣加載。那麼你能夠將這些大資源放進Resources文件夾中,經過Resources.Load來加載。當再也不使用這些資源了,能夠經過Destroy物體,再調用Resources.UnloadUnusedAssets來釋放內存。
特色:
(1).文件夾內資源打包集成.asset 文件裏面,例如一些shader/material/prefab等資源文件;
(2).裏面的資源只能是隻讀,不能動態修改,通常動態的更新的資源不雅放在這個文件夾內;
(3).經過主線程加載;
(4). Resources.Load ();加載資源
Resources.LoadAll ();加載全部資源
Resources.LoadAsync ();異步加載資源
8. Gizmos
Gizmos文件夾存放用Gizmos.DrawIcon方法使用的貼圖、圖標資源。放在Gizmos文件夾中的貼圖資源能夠直接經過名稱使用,能夠被Editor做爲gizmo畫在屏幕上。這裏仍是要說說OnDrawGizmos()方法,只要腳本繼承了MonoBehaviour後,而且在編輯模式下就會每一幀都執行它。發佈的遊戲確定就不會執行了,它只能用於在scene視圖中繪製一些小物件。好比要作攝像機軌跡,那麼確定是要在Scene視圖中作一個預覽的線,那麼用Gizmos.DrawLine 和Gizmos.DrawFrustum就再好不過了。
9. WebPlayerTemplates
用來替換web build的默認網頁。這個文件夾中的腳本都不會被編譯。這個文件夾必須做爲Assets文件夾的直接子目錄。
10. StreamingAssets 這裏的文件會被拷貝到build文件夾中,不會修改(移動和網頁版不一樣,他們會被嵌入到最終build文件中)。它們的路徑會因平臺而有差別,但均可以經過Application.streamingAssetsPath來訪問。 例如:有些遊戲爲了讓全部的資源所有使用assetbundle,會把一些初始的assetbundle放在StreamingAssets目錄下,StreamingAssets目錄下的資源都是不壓縮的,並且它比較大會佔空間 <ignore_js_op>