Mesh Baker的基本操作与功能演示
如何降低游戲在系統中的消耗并帶給用戶最佳的體驗是開發者一直追求的目標,在Unity里面對于模型與貼圖優化的方式已經提供了不少工具,而在某些地方仍需借由外部的插件才能得到更為理想的效果。在本教程里,我們將介紹一個材質烘培類型的插件- Mesh Baker,通過這個插件的優化之后可降低大量貼圖對系統的消耗,進而達到快速提升游戲的效能!
?
首先,我們看看房屋模型在max里面的情況,如圖所示,這是一組由多個網格物件所組成的房屋,并且在每一個網格面上都設置了幾種以上的材質,其中包含了顏色與貼圖。以房屋模型里面的一個墻面網格為例,在這個模型的墻與柱面分別設置了不同的貼圖,以及旁邊破損的部分加起來總共有數種材質。
?
?
在max里面制作多層貼圖通常會使用Multi-Sub Object的材質屬性,如圖所示,每一個ID代表了一種材質的設置,所以從數字上看來在這個模型上面總共有七種材質。
?
?
?
將模型導入Unity后,在Materails的列表里面可以看到網格模型的材質對應到Multi-Sub Object的ID。
?
?
?
經過Mesh Baker的貼圖烘培后,從外觀看起來的模型并沒有任何的改變,如圖所示,左邊是原來的模型,而右邊則是Mesh Baker使用貼圖烘培出來的結果。
?
?
?
我們來看看Mesh Baker烘培出來的模型材質,原來的七種材質已經合并成一張完整的貼圖了,如此一來將可以大幅的降低貼圖對于系統的消耗。
?
?
?
接下來,我們用一個模型來說明Mesh Baker的操作流程,Mesh Baker插件的下載位置如下:http://www.narkii.com/club/thread-295672-1.html
?
?
?
安裝Mesh Baker后,可以在GameObject > Create Other > Mesh Baker里面找到三個主要的烘培功能,在一般情況下選擇Mesh And Material Baker即可處理大多數的模型,其他兩個功能分別是多網格物件的材質的烘培(Multi-mesh Anb Material Baker)與材質烘培(Material Baker)。
?
?
?
選擇Mesh And Material Baker,在Hierarchy面板里面會產生一個MeshBaker0的組件,如圖所示:
?
?
?
然后我們來看看是那些模型需要進行烘培,需要做的處理是將場景里面的幾個模型合并成一個,并且能共用同一張貼圖。
?
?
?
首先,按下Create Empty Assets For Combined Material保存一個材質烘培后的存檔文件,如圖所示,我們使用了一個building的文件名來作為Mesh Baker的烘培文件。
?
?
?
在Object To Be Combined > Size 的欄位里面輸入5,表示有5個物件需要進行烘培,接下來的動作很簡單,只需要將模型添加進來即可。設置好烘培的模型后,按下Bake Materials to Combined Material,意思就是將所有的材質烘培成一個材質的作用,然后系統就會開始進行運算。
?
?
?
運算完成后,將烘培好的材質添加到Material Bake Result,表示模型將會以這個烘培后的材質來重新進行貼圖的指定。
?
?
?
?
?
如圖所示,Shaders里面所列出的即是合并的材質。
?
?
?
接下來的動作很簡單了,直接按下Object To Be Combined 里面的Bake執行物件的烘培,計算完成后在Hierarchy面板里多出了一個CombinedMesh-MeshBaker0的物件,這個就是烘培后產生的另一個物件。
?
?
?
?
?
將這個烘培物件移到旁邊對比一下,如圖所示,左邊是原來的模型,右邊則是烘培出來的物件,從外觀上看來兩者并沒有任何的差異。
?
?
?
如圖所示,我們可以從材質列表里面來做個比對,原來的一個模型里面有多種材質與貼圖,而經過烘培后的物件則是合并成為一個材質。
?
?
?
?
?
點選貼圖看看,很驚奇的發現原來的多張貼圖已經自動的并成了一張,如此將可以大幅的減低貼圖所帶來的消耗,這就是Mesh Baker在優化功能上的一大優勢。
?
?
?
轉載于:https://my.oschina.net/mbreath/blog/512358
總結
以上是生活随笔為你收集整理的Mesh Baker的基本操作与功能演示的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oxford Nanopore MinI
- 下一篇: 【CCNA3】思科基本命令汇总+网线线序