Menyesuaikan setelan Fitur OpenXR untuk performa optimal

Unity menyediakan beberapa fitur terkait performa di setelan OpenXR-nya. Aktifkan fitur ini agar aplikasi Anda dapat berkomunikasi dengan runtime Android XR, menerima notifikasi performa, dan mengoptimalkan performa GPU menggunakan rendering foveated.

Prasyarat

Sebelum mengikuti panduan ini, pastikan Anda telah memverifikasi dan menyelesaikan prasyarat berikut:

Mengakses setelan fitur OpenXR

Ikuti langkah-langkah berikut untuk mengakses setelan fitur OpenXR Unity, tempat Anda dapat mengonfigurasi fitur performa yang diuraikan di bagian berikutnya:

  1. Dari menu utama Unity, klik Edit > Project Settings.
  2. Luaskan bagian XR Plug-in Management, lalu klik OpenXR.
  3. Buka bagian OpenXR Feature Groups.

Mengaktifkan Setelan Performa XR

Setelan Performa XR di Unity memungkinkan aplikasi Anda mengomunikasikan persyaratan performa ke runtime XR Android dan menerima notifikasi performa.

Manfaat

  • Aplikasi Anda menerima notifikasi sistem untuk mempertahankan performa yang optimal.
  • Anda dapat memberikan petunjuk performa ke runtime OpenXR.

Aktifkan fitur ini

Di bagian OpenXR Feature Groups yang Anda buka sebelumnya, aktifkan XR Performance Settings.

Mengaktifkan rendering foveated

Foveated rendering menawarkan pengoptimalan statis dan pelacakan mata yang meningkatkan performa GPU. Namun, penerapan pelacakan mata menawarkan kualitas yang lebih baik kepada pengguna dengan merender area yang mereka lihat, sekaligus mengurangi kualitas penglihatan periferal mereka. Hal ini secara signifikan mengurangi beban kerja GPU sekaligus mempertahankan kualitas visual di tempat yang paling penting.

Manfaat

  • Mengurangi beban kerja GPU secara signifikan dengan merender lebih sedikit detail dalam penglihatan periferal.
  • Membuat area yang dilihat pengguna tetap jernih.
  • Memungkinkan Anda membuat adegan yang lebih kompleks tanpa menjatuhkan frame.

Aktifkan fitur ini

  1. Di bagian OpenXR Feature Groups yang Anda buka sebelumnya, aktifkan Foveated Rendering.
  2. Setel Foveated Rendering API ke SRP Foveation.

    Setelan Unity untuk rendering foveated

  3. Di bagian Profil Interaksi yang Diaktifkan, tambahkan Profil Interaksi Tatapan Mata.

    Setelan Unity untuk Profil Interaksi yang Diaktifkan

  4. Di bagian Grup Izin, tentukan bahwa izin android.permission.EYE_TRACKING_FINE harus diminta.

    Setelan Unity untuk Grup Izin dengan izin android.permission.EYE_TRACKING_FINE yang diminta

  5. Aktifkan fitur saat runtime dan tetapkan tingkat render foveated untuk aplikasi Anda:

    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.XR;
    
    public class FoveationStarter : MonoBehaviour
    {
      List<XRDisplaySubsystem> xrDisplays = new List<XRDisplaySubsystem>();
    
      void Start()
      {
        SubsystemManager.GetSubsystems(xrDisplays);
        if (xrDisplays.Count == 1)
        {
          xrDisplays[0].foveatedRenderingLevel = 1.0f; // Full strength
          xrDisplays[0].foveatedRenderingFlags
              = XRDisplaySubsystem.FoveatedRenderingFlags.GazeAllowed;
        }
      }
    }
    

Untuk mengetahui informasi selengkapnya, lihat dokumentasi Unity tentang foveated rendering.