本篇講解的是3D游戲的場景資源打包方式,首先簡單的分析一下場景中所包含的資源的類型。 場景資源一般包含:地表模型(或者是Unity Terrain),非實例化物體(攝像機、空氣牆、光源、各種邏輯物體之類的)、場景物體(花草樹木、房子箱子之類的)。 因為場景物體大多是公用的,所以將場景物體都打成 ...
本篇接着上一篇繼續和大家分享場景資源這一主題,主要包括兩個方面: 加載場景 場景異步加載的代碼比較簡單,如下所示: 加載場景物件 主要包含以下細分步驟: a 下載並解析場景配表,得到場景物件信息。場景物件的數據結構如下所示: xml解析的主體代碼如下所示: b 加載場景物件asset 同時開啟多個Coroutine進行WWW的LoadFromCacheOrDownload操作,經測試開啟的WWW線 ...
2014-03-13 15:09 16 10872 推薦指數:
本篇講解的是3D游戲的場景資源打包方式,首先簡單的分析一下場景中所包含的資源的類型。 場景資源一般包含:地表模型(或者是Unity Terrain),非實例化物體(攝像機、空氣牆、光源、各種邏輯物體之類的)、場景物體(花草樹木、房子箱子之類的)。 因為場景物體大多是公用的,所以將場景物體都打成 ...
將本地資源打包,然后放到資源服務器上供游戲客戶端下載或更新。服務器上包含以下資源列表:(1)游戲內容資源assetbundle(2)資源維護列表,包含每個資源的名字(完整路徑名)和對應的版本號[資源名,版本號],如下表所示(VersionNum.xml): 那么本地客戶端 ...
本篇接着上一篇。上篇中說到的4步的代碼分別如下所示: (1)將資源打包成assetbundle,並放到自定目錄下 (2)為每個assetbund生成MD5碼,用於檢查資源是否有修改 MD5列表如下所示: (3)比較新舊MD5碼,生成資源變更列表 ...
最近參考了各位大神的資源,初步學習了Unity的資源管理模式,包括在編輯器管理(使用AssetDatabase)和在運行時管理(使用Resources和AssetBundle)。在此簡單總結運行時用AssetBundle動態打包/解包資源的方法,方便自己回顧。 關於AssetBundle ...
有人在之前的博客中問我有關共享資源打包的代碼,其實這一塊很簡單,就兩個函數: BuildPipeline.PushAssetDependencies():依賴資源壓棧; BuildPipeline.PopAssetDependencies():依賴資源出棧。 直接看代碼,下面 ...
作用:針對不同的運行時環境,使用不同的內容。 一、變體 1、使用舉例 1)不同目標平台,簡化對應AB加載 舉例:一個AB包含用於PC平台的高清紋理,另一個AB包含用於安卓手機的低清紋理,但是他們使用相同的AB名和資源名,只有變體名不同。於是在運行時,不需要更改加載代碼,就可以加載對應的AB ...
前面我們研究了AssetBundle的打包與加載,現在我們來了解下如何在項目中根據版本號更新內容。 最最重要的一點,細心的朋友應該看到了在加載AssetBundle的MrcAssetManager類中,我們使用的WWW加載對象可以使用WWW.LoadFromCacheOrDownload方法 ...
下面代碼列出了對於assetbundle資源的常用操作,其中有針對bundle、asset、gameobject三種類型對象的操作,實際使用中盡量保證成對使用。 這一塊的操作比較繁瑣,但只要使用正確,是可以保證資源完全沒有泄露的。 由於bundle相互之前會有依賴 ...