今天想總結一下unity中的特殊文件夾,我之所以寫這個文章是最近我發現在我帶一些初學者做項目時他們對一些基本的文件夾的功能很模糊,如Resources文件夾的基本功能及使用。
作者公眾號
在Resources文件夾中可從腳本中按需加載資源,而不必在場景中創建資源實例以用于游戲。為此,應將資源放在一個名為 Resources 的文件夾中。通過使用 Resources.Load 函數即可加載這些資源。
可在 Assets 文件夾中的任何位置添加多個 Resources 文件夾。將所需的資源文件放在 Resources 文件夾內或其中的子文件夾內。如果資源文件位于子文件夾中,請始終在傳遞給 Resources.Load 函數的路徑中包含子文件夾路徑。
打包程序的時候會將Resource目錄下的全部文件都加密壓縮打進包內,Resources 文件夾的使用不當會使項目構建出現膨脹,導致內存消耗過高,并顯著增加應用程序啟動時間。
這是一個只讀、不可寫的目錄; 該文件夾下的資源會保持原始格式(比如圖片不會被引擎進行紋理壓縮);dll文件或者腳本放在該文件夾下也不會參與編譯。
官方推薦使用Application.streamingAssetsPath來獲得該文件夾的實際位置,其可以規避平臺差異。
對于Unity Editor,Windows平臺,其等價于:Application.dataPath+"/StreamingAssets"
對于macOS,其等價于:Application.dataPath+"/Resources/Data/StreamingAssets"
對于ios平臺,其等價于:Application.dataPath + "/Raw";
對于android平臺,其等價于:"jar:file://" + Application.dataPath + "!/assets/";
補充:
對于android平臺
Application.streamingAssetsPath的詳細格式形如:“jar:file:///data/app/包名-XXXXX/base.apk!/assets” 亦即 “jar:file://”+Application.dataPath+“!/assets”
Application.dataPath的詳細格式形如:“/data/app/包名-XXXXX/base.apk”
Application.persistentDataPath的信息格式形如:“/storage/emulated/0/Android/data/包名/files”
在導入過程中,Unity 忽略 Assets 文件夾(或其子文件夾)中的以下文件和文件夾:
隱藏的文件夾。
以“.”開頭的文件和文件夾。
以“~”結尾的文件和文件夾。
名為 cvs 的文件和文件夾。
擴展名為 .tmp 的文件。
這可以防止導入由操作系統或其他應用程序創建的特殊文件和臨時文件。
我的使用情況是在項目中有的資源是輔助性或測試的資源,我不想在發布時嵌入包中,這些我就會使用到上面的規則。
Gizmos 允許將圖形添加到 Scene 視圖,以幫助可視化不可見的設計細節。Gizmos.DrawIcon 函數在場景中放置一個圖標,作為特殊對象或位置的標記。必須將用于繪制此圖標的圖像文件放在名為 Gizmos 的文件夾中,這樣才能被 DrawIcon 函數找到。
只能有一個 Gizmos 文件夾,且必須將其放在項目的根目錄,直接位于 Assets 文件夾中。將所需的資源文件放在此 Gizmos 文件夾內或其中的子文件夾內。如果資源文件位于子文件夾中,請始終在傳遞給 Gizmos.DrawIcon 函數的路徑中包含子文件夾路徑。
編輯器腳本在開發期間向 Unity 添加功能,但在運行時在構建中不可用。Editor 文件夾中的腳本以編輯器腳本的形式運行,而不是運行時腳本。
可在 Assets 文件夾中的任何位置添加多個 Editor 文件夾。應將 Editor 腳本放在 Editor 文件夾內或其中的子文件夾內。
Editor 文件夾的確切位置會影響其腳本相對于其他腳本的編譯時間。參閱特殊文件夾和腳本編譯順序上的文檔了解完整的描述。
使用 Editor 腳本中的 EditorGUIUtility.Load 函數可從 Editor 文件夾中的 Resources 文件夾加載資源。這些資源只能通過 Editor 腳本加載,并會從構建中剝離。
注意:如果腳本位于 Editor 文件夾中,Unity 不允許將派生自 MonoBehaviour 的組件分配給游戲對象。
Editor 腳本可以使用通過 EditorGUIUtility.Load 函數按需加載的資源文件。此函數在名為 Editor Default Resources 的文件夾中查找資源文件。
只能有一個 Editor Default Resources 文件夾,且必須將其放在項目的根目錄中;直接位于 Assets 文件夾中。將所需的資源文件放在此 Editor Default Resources 文件夾內或其中的子文件夾內。如果資源文件位于子文件夾中,請始終在傳遞給 EditorGUIUtility.Load 函數的路徑中包含子文件夾路徑。
Plugins文件夾是用于存放第三方插件和庫文件的文件夾。這些插件和庫文件可以是由其他開發者創建的,用于擴展Unity的功能或提供特定的功能支持。
在Unity項目的根目錄下,可以找到一個名為"Assets/Plugins"的文件夾。在這個文件夾中,可以放置編譯后的插件文件,如C++編寫的動態鏈接庫(.dll文件)或其他平臺特定的插件文件。
使用Plugins文件夾可以方便地將第三方插件和庫文件與Unity項目集成在一起,并在項目中使用它們的功能??梢酝ㄟ^在Unity腳本中調用插件的API或使用插件提供的功能來實現這一點。
需要注意的是,Plugins文件夾中的插件文件需要按照Unity支持的平臺進行編譯,以確保在特定平臺上能夠正常工作。否則,在構建項目時可能會出現問題。
此外,Unity還提供了其他類型的插件文件夾,如"Editor"文件夾用于存放編輯器插件,"iOS"文件夾用于存放iOS平臺相關的插件等。這些文件夾的作用和用法與Plugins文件夾類似,但是它們更加特定于不同的用途和平臺。
在我的開放出來的游戲項目中已基本使用了上述準則,希望我提供的游戲項目能夠幫助到大家。
Vuforia 宣布為 Windows 10 支持 AR 功能
Vuforia 原是高通旗下的 AR 開發平臺,后被高通作價 6500 萬美元賣給了軟件巨頭 PTC。Vuforia 剛剛宣布,該平臺將擴展支持Windows 10,通過在 Windows 設備上的開發,包括 Surface Pro 4 和 Surface Book,目標是在消費者和企業之間建立一個 AR 跨平臺的標準。Vuforia 有一個全球生態系統,上面有 20 萬開發者在為手機、平板電腦和新一代的數字眼鏡開發 2 萬多個應用程序,Vuforia 平臺已經被廣泛用于消費品牌的推廣和產品的銷售。開發人員現在可以使用 Unity 建立一個單一的跨平臺應用,該應用可在 iOS、 Android 還有 Windows 10 設備上運行。此外,開發者還可以使用 Microsoft Visual Studio 來為他們的 Windows 10 應用增加 AR 功能。
Oculus 更新移動 SDK,新增 Gear VR 錄屏功能
Oculus 再次更新了移動 SDK 開發者文檔,為三星 Gear VR 新添加了錄屏功能。現在 VR 應用程序開發人員不用借助第三方錄屏軟件就可以輕松把 VR 中的游戲畫面錄制下來,同時還不用擔心出現桶形失真(barrel distortion)問題[桶形失真是由鏡頭引起的成像畫面呈桶形膨脹狀的失真現象]。值得注意的是,Oculus 建議開發者基于 Oculus Mobile SDK 1.0 或者更高版本使用錄屏功能,避免游戲和錄制畫面同時進行時而引起畫面顫抖。錄屏功能視場角(FOV)降低到 80 度,以 5MB 每秒的速度生成 1024 分辨率的 MP4 文件。
OSVR 獲得虛幻 4 引擎插件
OSVR 一直致力于讓自身的 VR 開發變得更加快捷。之前,在雷蛇的帶領下,這款頭戴設備已經支持好幾款外設,而且 OSVR 本身獲得了巨大的進步,當然這也離不開大家的共同努力。近日,OSVR 又得到了 Epic Games 公司的支持,現在開始開發人員可以將 OSVR 集成到虛幻 4 引擎的中間件當中,并進行項目開發。目前,開發者可以在 JeroMiya、 rpavlik、B3nac 三家網站上下載到這份插件了。
《金融時報》:蘋果正在秘密組建 VR 技術團隊
據英國《金融時報》報道,蘋果已經組建了一支專注研究 VR 技術的秘密團隊。早在 2013 年,蘋果就申請了一份關于 VR 設備的專利。此外,蘋果還大舉招募 VR/AR 方面的人才,有微軟 Hololens 的音效工程師 Nick Thompson、Lytro 光場相機的資深技術人員以及 VR/AR 領域專家道格伯曼。
除了招攬人才,蘋果還不斷收購了多家該領域的公司,包括瑞典的面部識別技術公司 Polar Rose;蘇黎世的實時面部捕捉和動畫公司 Faceshift;以色列實時 3D 運動捕捉技術公司 PrimeSense;美國加州圣地亞哥的人工智能(AI)公司 Emotient;還有最近剛剛宣布收購的研發 3D 空間感知的公司 Flyby Media。更難得的是,蘋果 CEO 庫克在今年發布第一季度財報時表示虛擬現實非常的酷,不僅僅是小眾的領域,這也是目前為止蘋果首次在公開場合表達出對 VR 的興趣。
《方舟:生存進化》加入似雞龍和新項目
<script src="https://lf3-cdn-tos.bytescm.com/obj/cdn-static-resource/tt_player/tt.player.js?v=20160723"></script>
作為 Steam 更新較為頻繁的游戲《方舟:生存進化》,目前還是保持著它慣有的風格。近日,《方舟:生存進化》再一次迎來了游戲的更新。目前游戲當中加入了新的恐龍物種似雞龍屬——似雞龍。這是一種行動速度極快的食草動物,在游戲當中很可能是速度最快的恐龍了,而且這種恐龍最多能夠搭載三名玩家。不過這種恐龍還是優缺點,它沒有攻擊能力、不能為玩家收集資源、同時也很容易叛變。除去似雞龍,《方舟:生存進化》這次更新還加入了新的戰斗盔甲和激光武器。
魔多VR,虛擬現實專業媒體,讓虛擬現實更好玩。
關注魔多VR微信公眾號:moduovr