簡介
在製作大場景時,通常會進入一個進階流程,就是效能優化。在專案中,常常遇到要不斷的進行效能優化,在Unity中最常見的就是,合併材質球、減少模型面數、材質的優化、環境的設定、透過程式來顯示周遭的物件,而當我們選擇使用透過程式來顯示周遭的物件時,假如遇到一大塊的場景時,組員都把材質減面等工序都做完之後,才發現要進行物件分割時該怎辦,把它丟到3D軟體去切割可能會比較費時,這篇分享兩個簡單好用的工具,可以快速的切割模型。
實作-工具1
首先我們先把下面的檔案下載並放置在你的Unity Assets資料夾中,如下圖。
接著進入Unity中,選擇你要切割的物件,將『MeshSplit.cs』掛載在要切割的模型上。要注意的是,該工具不是像切水果遊戲這樣任意的切割,是做等份的切割,再透過程式顯示Controller周遭的物件比較適用。
如上圖,最重要的按鈕就是『Split 與 Clear』,分別是切割與復原,而上方的設定區有:
Size:這代表你要切割的範圍,這邊沒顯示切割Gizmo我覺得不是很好,會讓我們不知道切割的範圍有多大。
Secondary Axis:切割的軸向,這工具提供兩個軸向,Y與Z軸。
Layer相關:這我看不出來是在做什麼的,可能是假如你的材質圖層有很多塊的話他會將切割後的幫你一需排好,並且你假如有指定名稱,就幫你重新命名。
可以看到上面影片,就是這麼簡單,其實只要調整切割大小跟切割軸向就差不多可以開切了。
實作-工具2
接下來要介紹第二套等分切割工具,大家一樣先下載下面的套件並放在Assets中。
匯入之後,將MeshSplit資料夾中的『MeshSplitController』掛載再要切割的物件中。
接著看到上圖畫紅線的地方,是最主要設定的參數,其他可以先不用管。
Grid Size:這工具是類似Terrain Split,一樣是有等分切割,要注意的是Size的大小不要設定太小,會當機。
Axes:Grid Size大小設定好之後,你要選擇切割的軸向,你可以選擇只要切割某一軸向。
Draw Grid Gizmo When Select:這工具的好處是你可以看到切割的大小,會比較清楚。
Create & Clear:選擇要切割或是重置。
可以看到上面的影片,簡易的操作模式,我是選擇只切X軸向與大小設定,自動切成8等分,一樣是簡單的切割模型工具。
小結
綜合以上的兩個工具,當大家在製作模擬場景優化時,可以更快速的達到目的,切割好大型物件,並放置在第一人稱物件經過的區塊中,可以提高一些效能。