Unity 提供各種與效能相關的工具和 API。使用這些工具評估及監控效能指標、指定螢幕更新率,以及逐一分析場景的影格算繪方式。
評估及監控成效指標
Unity OpenXR:Android XR 套件提供完整的效能資料,可用於監控及最佳化應用程式。
您可以透過成效指標 API 存取這些指標。
優點
- 即時監控記憶體用量、CPU 和 GPU 效能。
- 合成器和執行階段層的系統統計資料。
- 評估最佳化變更的影響。
為獲得最佳結果,請在開發應用程式及調整效能時,主動監控下列指標:
AndroidXRPerformanceMetrics androidXRPerformanceMetrics = OpenXRSettings.Instance.GetFeature<AndroidXRPerformanceMetrics>();
string values = "";
if (m_Display != null && androidXRPerformanceMetrics != null && androidXRPerformanceMetrics.supportedMetricPaths != null)
foreach (var metric in androidXRPerformanceMetrics.supportedMetricPaths)
{
float stat;
XRStats.TryGetStat(m_Display, metric, out stat);
values += string.Format("{0}: {1:F2}\n", metric, stat);
}
指定螢幕刷新率
應用程式可透過「螢幕更新率」在執行階段要求較高或較低的影格速率,系統會盡量滿足這類要求。
優點
- 根據場景複雜度調整重新整理頻率。
- 在較暗的場景中降低耗電量。
- 根據應用程式需求動態調整。
啟用這項功能
使用 Unity API 存取 XR_FB_display_refresh_rate
擴充功能。
你可以要求 72 FPS、90 FPS 或 120 FPS 等畫面更新率,如果硬體可以處理且熱狀況允許,系統就會切換至你要求的更新率。
啟用 Unity 的影格偵錯工具
影格偵錯工具是 Unity 的內建工具,可逐一分析場景的影格算繪方式。這項工具會顯示繪圖呼叫的順序,並讓您逐步瞭解轉譯行為。
優點
- 找出算繪瓶頸和非預期的繪圖呼叫。
- 確認 SRP Batcher 正常運作 (尋找「RenderLoopNewBatcher」項目)。
- 檢查 GPU Resident Drawer 批次處理 (尋找「Hybrid Batch Group」項目)。
- 瞭解轉譯作業的順序。
啟用這項功能
- 在 Unity 主選單中,依序點選「Window」>「Analysis」>「Frame Debugger」。
- 按一下「啟用」,開始擷取影格資料。
- 逐步執行繪圖呼叫,查看要算繪的內容和時間。