天天看點

Unity中特殊的檔案夾

大部分内容摘自Unity Manual以及個人了解,歡迎指正。

  • 隐藏檔案夾

    以.開頭的檔案夾會被Unity忽略。在這種檔案夾中的資源不會被導入,腳本不會被編譯,也不會出現在Project視圖中。

  • Standard Assets

    在這個檔案夾中的腳本最先被編譯,允許被之外的腳本通路,會被導出到Assembly-CSharp-firstpass, Assembly-UnityScript-firstpass 或 Assembly-Boo-firstpass項目中(依語言而定)。

  • Pro Standard Assets

    跟Standard Assets差不多,隻不過裡面的檔案是給Pro版本的Unity使用的。

  • Editor

    以Editor命名的檔案夾允許其中的腳本通路Unity Editor的API。如果腳本中使用了在UnityEditor命名空間中的類或方法,它必須被放在名為Editor的檔案夾中。Editor檔案夾中的腳本不會在build時被包含,在項目中可以有多個Editor檔案夾。

    ps:如果在普通的檔案夾下,Editor檔案夾可以處于目錄的任何層級。如果在特殊檔案夾下,那Editor檔案夾必須是特殊檔案夾的直接子目錄。

  • Plugins

    Plugins檔案夾用來放native插件,它們會被自動包含進build中去,這個檔案夾隻能是Assets檔案夾的直接子目錄。在Windows平台下,native 插件是dll檔案;Mac OS X下,是bundle檔案;Linux下,是.so檔案。跟Standard Assets一樣,這裡的腳本會更早的編譯,允許它們被之外的腳本通路。

  • Plugins/x86

    如果為32bit或64bit平台建立遊戲,那麼這個檔案夾下的native plugin檔案會被自動的包含在遊戲build中。如果這個檔案夾不存在,則Unity會查找Plugins檔案夾下的native pluglins。

  • Plugins/x86_64

    如果為32bit或64bit平台建立遊戲,那麼這個檔案夾下的native plugin檔案會被自動的包含在遊戲build中。如果這個檔案夾不存在,則Unity會查找Plugins檔案夾下的native pluglins。

    ps:如果要建立universal build,建議同時使用這兩個檔案夾(Plugins/x86、Plugins/x86_64)。然後将32bit和64bit的native plugins放進相應的檔案夾中。

  • Plugins/Android

    在這個檔案夾裡放入.jar檔案。

  • Plugins/iOS

    自動将任何. A、.m、.mm、.c或.cpp檔案(作為符号連結)添加到生成的Xcode項目中的一種有限的、簡單的方法,如果需要更多控制如何自動向Xcode項目添加檔案,應該使用PostprocessBuildPlayer特性,這樣做不需要将這些檔案放在Plugins/iOS檔案夾中。

  • Resources

    Resources檔案夾允許你在腳本中通過檔案路徑和名稱來通路資源。但還是推薦使用直接引用來通路資源,放在這一檔案夾的資源永遠被包含進build中,即使它沒有被使用。因為Unity無法判斷腳本有沒有通路了其中的資源。項目中可以有多個Resources檔案夾,是以不建議在多個檔案夾中放同名的資源。一旦build項目,Resources檔案夾中的所有資源被打包進遊戲存放資源的archive中。這樣在遊戲的build中就不存在Resources檔案夾了,即使腳本中仍然使用了資源在項目中的路徑。

    ps:當資源作為腳本變量被通路時,這些資源在腳本被執行個體化後就被加載進記憶體。如果資源太大,您可能不希望它被這樣加載,那麼您可以将這些大資源放進Resources檔案夾中,通過Resources.Load來加載,當不再使用這些資源了,可以通過Destroy物體,再調用Resources.UnloadUnusedAssets來釋放記憶體。

  • Editor Default Resources

    這是為editor 腳本使用的檔案夾。

  • Gizmos

    Gizmos檔案夾存放用Gizmos.DrawIcon方法使用的貼圖、圖示資源。放在Gizmos檔案夾中的貼圖資源可以直接通過名稱使用,也可以被Editor作為gizmo畫在螢幕上。

  • WebPlayerTemplates

    用來替換web build的預設網頁,這個檔案夾中的腳本都不會被編譯。這個檔案夾必須作為Assets檔案夾的直接子目錄。

  • StreamingAssets

    這裡的檔案會被拷貝到build檔案夾中,不會修改(移動和網頁版不同,他們會被嵌入到最終build檔案中)。它們的路徑會因平台而有差異,但都可以通過Application.streamingAssetsPath來通路。

繼續閱讀