Optymalizacja renderowania za pomocą ustawień zasobu URP

Unity udostępnia różne funkcje i ustawienia związane z wydajnością w ustawieniach zasobów Universal Render Pipeline (URP). Włącz lub wyłącz te funkcje, aby zmniejszyć koszty wydajności GPU i CPU oraz poprawić jakość obrazu.

Zmienianie ustawień komponentu URP

Aby uzyskać dostęp do ustawień zasobu URP w Unity, w których możesz skonfigurować funkcje wydajności opisane w kolejnych sekcjach, wykonaj te czynności:

  1. W menu głównym Unity kliknij Edit > Project Settings > Graphics (Edytuj > Ustawienia projektu > Grafika).
  2. Znajdź zasób Default Render Pipeline, który jest też zasobem URP.
  3. Wyszukaj ten zasób w projekcie.
  4. Kliknij komponent prawym przyciskiem myszy i wybierz Właściwości.

Wyłączanie HDR

Wyłącz HDR, aby zwiększyć wydajność na urządzeniach mobilnych XR, na których HDR zapewnia minimalne korzyści wizualne w porównaniu z kosztem wydajności.

Wyłącz tę funkcję

W ustawieniach zasobu URP, do których przejdziesz wcześniej, wyłącz HDR.

Wyłącz przetwarzanie końcowe

Przetwarzanie końcowe jest kosztowne na urządzeniach mobilnych XR i często zapewnia minimalne korzyści wizualne w porównaniu z kosztem wydajności.

Wyłącz tę funkcję

  1. otwartych wcześniej właściwościach zasobu URP znajdź Listę renderujących.
  2. Na liście renderujących kliknij prawym przyciskiem myszy renderujący uniwersalny i wybierz Właściwości.
  3. W sekcji Przetwarzanie końcowe odznacz opcję Włączone.

Wyłączanie trybu Depth Priming

Urządzenia XR korzystają z 2 widoków, co zwiększa koszt wydajności wstępnego przejścia głębi wymaganego do wstępnego przetwarzania głębi. Wstępne określanie głębi pomija rysowanie nakładających się pikseli, aby przyspieszyć renderowanie. W tym celu wykorzystuje teksturę głębi do sprawdzania nakładania się.

W przypadku urządzeń XR bez połączenia przewodowego nie ma jednak korzyści z używania wstępnego określania głębi, ponieważ podobne wyniki można uzyskać, korzystając z funkcji optymalizacji sprzętu, takich jak LRZ (Low-Resolution-Z) czy HSR (Hidden Surface Removal).

Zalety

  • Zapobiega zwiększeniu wpływu na wydajność w przypadku wstępnego przejścia głębi ze względu na dwa widoki na urządzeniach XR.
  • Umożliwia korzystanie z optymalizacji sprzętowych, takich jak LRZ lub HSR, w celu uzyskania podobnych wyników.
  • Eliminuje nieobsługiwany i niepotrzebny krok w przypadku bezprzewodowych urządzeń XR.

Wyłącz tę funkcję

  1. otwartych wcześniej właściwościach zasobu URP znajdź Listę renderujących.
  2. Kliknij prawym przyciskiem myszy plik (Universal Renderer Data) i wybierz Właściwości.
  3. Zmień Tryb przygotowania głębi na Wyłączony.

Włączanie MSAA na potrzeby wygładzania krawędzi

Wygładzanie wielopróbkowe (MSAA) to skuteczny sposób na poprawę jakości obrazu na platformach mobilnych i bezprzewodowych XR. Procesory GPU oparte na kafelkach, które są powszechne w tych urządzeniach, mogą przechowywać więcej próbek w tym samym kafelku.

Dzięki temu MSAA jest wydajnym rozwiązaniem do wygładzania krawędzi. Wartość 2x MSAA zapewnia dobrą równowagę między jakością obrazu a wydajnością.

Włącz tę funkcję

We właściwościach zasobu URP, do których przejdziesz wcześniej, zmień ustawienie Anti Aliasing (MSAA) na 2x.

Korzystanie z ustawień i funkcji trybu debugowania URP

Inne ważne ustawienia zasobów URP są dostępne w trybie debugowania. Aby uzyskać dostęp do tych ustawień, wykonaj te czynności:

  1. W menu głównym Unity kliknij Edit > Project Settings (Edytuj > Ustawienia projektu).
  2. W panelu po lewej stronie wybierz sekcję Grafika.
  3. Znajdź zasób Default Render Pipeline (to jest Twój zasób URP).
  4. Wyszukaj ten komponent w projekcie i wybierz go.
  5. W prawym górnym rogu kliknij 3 kropki i wybierz Debuguj.

Wyłączanie głębi i nieprzezroczystych tekstur

Wyłączenie tekstur głębi i nieprzezroczystych eliminuje dodatkowe kopiowanie tekstur, które marnuje czas procesora graficznego. Tekstury te powodują dodatkowe operacje kopiowania i wczytywania GMEM, co obniża wydajność.

W ustawieniach debugowania zasobów URP wyłącz te opcje:

  • Wymagaj tekstur głębi
  • Wymagaj nieprzezroczystej tekstury

Włączanie SRP Batcher

SRP Batcher zmniejsza czas procesora w przypadku scen z wieloma materiałami korzystającymi z tego samego wariantu shadera, ograniczając zmiany stanu renderowania między wywołaniami rysowania.

W ustawieniach debugowania zasobów URP włącz opcję Use SRP Batcher (Użyj narzędzia SRP Batcher).