SimpleLOD的使用方法

除了Mesh Baker,另一個插件SimpleLOD也比較適合大規模場景的製作開發。在處理多人在線的項目(如MMO遊戲)時,按照我們以往的優化方法是儘可能降低Draw Call和減少渲染消耗,在遠處使用低級LOD,在Run-time時根據相機距離切換合適的LOD,使得在手機性能有限的情況下儘量渲染更多的角色,達到更好的效果。

而SimpleLOD恰好可以滿足這一點,除了同樣擁有Mesh Baker所具有的Mesh合併、Atlas烘焙等功能,它還能提供Mesh的簡化(Mesh Baker無法提供),並對動態蒙皮網格進行了很好的支持。該插件可在Run-time和Editor中都可以使用,同時開放了源碼,大家可以根據項目的實際情況而作修改。

我們拿以下原始模型來舉例:

UWA Tech Doc

合併模型

打開插件後有如下一些選項:點擊Merge child meshes

我們知道Unity支持的網格頂點數不能超過65536,但是當我們把很多物體合成一個Mesh時很可能會超過這個限制。而這個插件會針對這種情況進行自動處理,可以看到下圖中的兩輛車Merge後成Merged part1和Merged part2 。

烘焙Atlas

下圖是Texture packing,根據模型的Material自動把不同類型的Texture分類顯示出來,在合併的時候,會自動把同類型的Texture合併。

合併之後的效果對比:Draw Call數量由原來的136降至24個。

模型簡化

選擇了模型之後,點擊Simplify mesh,它會盡可能在保持原樣的基礎上簡化網格。如下圖,汽車模型的網格面片數從六萬多頂點數減少到了兩萬七。

同時,它也能自動生成不同級別的LOD。這裏有6層LOD(從大到小),點擊Bake LOD後它會自動計算,不需要大家手動操作。我們可以通過更改腳本達到希望的效果。

如下就是使用了SimpleLOD後的效果。該插件最大的特色即是對Skinned mesh動畫角色網格提供了很好的支持。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章