本文**自: (牆外)
筆記:20131030 unity原廠講師大解密
ab選項的差異
瀏覽器本身也有cache,為什麼要用unity的cache?
assetbundle.createfromfile
assetbundle可以作相關性!
假設push以下資源:a,b,c,透過push&pop,可以產生3個packege,c依賴b,a,b依賴a,a獨立的asset bundles,完全不會重複包資源!
可以把script放在scriptobject裡面,再透過asset bundle載回來,如此就不需一定要將script放在第一包。
官方demo案例,透過dependency的使用可將131mb大小縮成8.2m!
角色紙娃娃的處理方式,可以參考unity提供的character customization範例,看裡面如何拆分asset bundle。
code安全性
推薦拆分工具:terrain composer,最大可以拆8x8,每塊大小2000x2000,也就是16000x16000,也就是16kmx16km
如果地形早就已經編好一堆了,該怎麼辦?自行拆分
地形資源怎麼拆?先生成空的nxn的terrain
地表資料怎麼拆?
拆好了, 如何顯示?
載入時間比較:
object pool範例請參考angrybot裡面的子彈
記憶體leak,4.1.2的profile可以看到所有gameobject的狀態,請多用profiler
動態載入,用scriptableobject定義場景描述檔,記錄dependency,然後根據這些資料來載場景內容。
協程在團結不是多執行緒,多用還是會拖為主線,請慎用。
在乙個新場景或新關卡,把material與shader先load出來,放到乙個空的gameobject裡面,然後diactive,有需要在放到正確的地方。--> 第二次提到
assetbundle打包顆粒度,debug可以包越小越好,release建議1mb
封住右鍵功能,防止使用者更換unity player版本。
從放遊戲的web server上取其他url的資源,要設定crossdomain.xml
如果不用asset bundle,自行作壓縮解壓縮,一定要在載下來的時候馬上解壓縮,而且用assetbundle.createfrommemory,耗時。-->assetbundle的確是要load才需要解壓...
material,shader先打包吧!--> 這應該算第三次提到吧?因為很重要所以要講三次??
靜態物件
地形:texture數量<4,用texture融合,可加5fps~10fps
紋理格式
mesh簡化,用meshlab,但只能簡化靜態mesh。用simplygon,
mesh簡化,animation簡化,用simplygon,要錢,效果好。
不要用system.xml用mono.xml,減少程式碼大小
forwarding light原理,要draw的object數量x光源數,所以光源越少越好。
把pixel light設定固定值,美術再多光也只有乙個。
粒子在mobile平台,是以block為單位render,太多粒子會加高畫素填充率,因為粒子沒有深度,所以一定要畫,mobile平台的功率不夠就會大大拖效能。
盡量不使用mesh colider,用box,capsulecollider
動畫部分
渲染部份
移動平台的遮擋剔除適合用pv和動態物件
用為代替的foreach,因為的foreach會生一堆迭代器
用struct代替class,快30倍
傳說中8小時一定回信的高階 email support
影子的優化,可參考shadowgun模擬影子的實作
接下來unity的roadmap會支援新ui(講好久了)與server。
Unity原廠講師大解密
本文 自 asset bundle工作流程及人物換裝例項 劉剛 ab選項的差異 透過web player下載asset bundle的cache需要收費,在ios,android的cache不需收費。手持遊戲卯起來用 瀏覽器本身也有cache,為什麼要用unity的cache?assetbundle...
雪鐵龍原廠儀安裝注意事項
1.windows7 32位系統,其他的系統可能產生問題,所以最好用windows7 32位作業系統 2.需要關掉網路,關掉防毒軟體 3.所有的步驟在視屏中都能看到 4.版本7.02和版本7.57是最穩定的版本,最完美。如果7.57能夠滿足你的需求,沒必要花很多時間去公升級更高的版本 5.雪鐵龍的原...
刷OPENWRT後悔了,刷回原廠韌體教程
之前之所以要刷韌體,是因為上網時經常將網頁重定向到路由器的管理員介面,如果你也有這種問題,那麼不用刷了,直接找售後換貨或退貨,這是路由器質量問題,刷機沒法解決。原文 菜鳥tl mr11u刷openwrt後悔了,刷回原廠韌體教程 1.刷openwrt後,上網絡卡無法驅動,只好刷回原廠韌體!這時你會發現...