優化視窗 — MRTK2
MRTK 優化視窗是一個公用程式,可協助自動化並通知在設定混合實境專案以獲得最佳 Unity 效能的 程式中。 此工具通常著重於轉譯組態,當設定為正確的預設時,可以節省毫秒的處理。
注意
您可以從 Unity 編輯器的頂端列選單流覽至 [Mixed Reality>][公用>優化視窗] 來開啟優化視窗。
[作用中建置目標] 是專案目前以編譯為目標的組建平臺。
效能目標會指示優化工具以何種裝置端點為目標。
- AR 頭戴式裝置 是行動裝置,例如 HoloLens
- VR 獨立 版是行動類別的裝置,例如 0s Go 或 Quest
- VR Tethered 是計算機支援的裝置,例如 Samsung Odyssey、Powers Rift 或 VR Vive 等。
設定優化
[設定優化] 索引標籤涵蓋 Unity 專案的一些重要轉譯組態。 本節可協助您自動化並通知您應變更哪些設定,以獲得最佳執行的結果。
綠色複選圖示表示此特定設定已在專案/場景中設定最佳值。 黃色警告圖示表示可以改善目前的設定。 按下指定區段中的相關聯按鈕,就會將 Unity 專案/場景中的設定自動設定為更理想的值。
單一傳遞實例轉譯
單一傳遞實例轉譯 是混合實境應用程式最有效率的轉譯路徑。 此設定可確保轉譯管線只會針對兩個眼睛執行一次,而且繪製呼叫會跨兩眼實例化。
深度緩衝區共用
為了改善 全像投影穩定,開發人員可以共用應用程式的深度緩衝區,以提供平台資訊,以瞭解在轉譯場景中穩定的位置和全像投影。
深度緩衝區格式
此外,針對 AR 頭戴式裝置,建議您在啟用與 24 位相比的深度緩衝區共用時,使用 16 位深度格式。 這表示精確度較低,但可節省效能。 如果 z 衝突 是因為計算圖元的深度精確度較低,因此建議將 遠角裁剪平面 移到相機的較接近位置 (,例如:50m 而不是 1000m) 。
注意
如果使用 16位深度格式,樣板緩衝區所需的效果將無法運作,因為 Unity 不會在此設定中 建立樣板緩衝區 。 如果端點圖形平臺適用,則選取 24 位深度格式 通常會建立 8 位樣板緩衝區。
如果使用需要樣板緩衝區的 Mask元件 ,請考慮改用 RectMask2D ,這不需要樣板緩衝區,因此可以搭配 16位深度格式使用。
即時全球照明
Unity 中的即時全域照明可以提供絕佳的美觀結果,但成本很高。 全球照明光源在混合實境中非常昂貴,因此建議在開發中停用此功能。
注意
Unity 中的全域照明設定是針對每個場景進行設定,而不是在整個項目中設定一次。
場景分析
[ 場景分析 ] 索引標籤的設計目的是通知開發人員目前場景中哪些元素可能會對效能造成最大影響。
光源分析
本節將檢查目前在場景中的光線數目,以及應該停用陰影的任何光線。 陰影轉型是相當耗費資源的作業。
多邊形計數分析
此工具也會提供多邊形計數統計數據。 快速識別哪些 GameObject 在指定的場景中具有最高的多邊形複雜度,以達到優化目標會很有説明。
Unity UI 光播分析
圖形光線傳送作業會針對 MRTK 中的每個指標執行,以判斷是否有任何 Unity UI 元素處於焦點中。 這些光線廣播可能相當昂貴,為了協助改善效能,結果中不需要傳回的UI元素應該停用為光線廣播目標。 每個 Graphic 元素都有 Graphic.raycastTarget
屬性。 此工具會搜尋已啟用此屬性的文字 UI 元素,因此可能停用候選專案。
著色器分析
Unity 標準著色器可以產生非常高品質的遊戲視覺效果結果,但通常不適合混合實境應用程式的效能需求,特別是因為這類應用程式通常是 GPU 系結。 因此,建議開發人員利用 MRTK 標準著色器 來平衡 & 圖形化功能與效能的美感。
[著色器分析] 索引卷標會掃描目前專案的 [資產] 資料夾,以取得使用 Unity 標準著色器的數據,或如有需要,所有材質都不會使用 Mixed Reality Toolkit 提供的著色器。 探索到之後,開發人員可以使用適當的按鈕來轉換所有材質或個別轉換。