Class ARFoundationFrameSource
- Ruang Nama
- easyar
- Rakitan
- EasyAR.Sense.dll
Menghubungkan output AR Foundation ke input EasyAR melalui sumber frame kustom di dalam adegan. Menyediakan dukungan AR Foundation melalui fitur kamera kustom EasyAR Sense.
Sumber frame ini adalah perangkat pelacakan gerak yang akan mengeluarkan data gerak di dalam ARSession.
Untuk menggunakan sumber frame ini, ``AR Foundation`` diperlukan. Anda perlu mengkonfigurasi AR Foundation sesuai dokumentasi resmi.
public abstract class ARFoundationFrameSource : FrameSource
- Pewarisan
-
ARFoundationFrameSource
- Derived
Properti
AvailableCenterMode
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses Assemble().
Semua mode pusat yang dapat digunakan.
protected override IReadOnlyList<ARSession.ARCenterMode> AvailableCenterMode { get; }
Camera
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses Assemble().
Pada perangkat desktop atau ponsel, kamera ini mewakili Camera di dunia virtual yang sesuai dengan perangkat kamera di lingkungan nyata, matriks proyeksi dan posisinya akan sesuai dengan kamera nyata, dikendalikan oleh EasyAR. Pada headset, kamera ini hanya digunakan untuk menampilkan beberapa teks diagnostik di depan mata, tidak digunakan untuk rendering gambar, dan kameranya juga tidak dikendalikan oleh EasyAR.
protected override Camera Camera { get; }
CameraFrameStarted
Hanya disediakan saat membuat sumber frame baru. Ini akan diakses selama seluruh masa hidup ARSession.
Apakah frame kamera telah mulai memasukkan data.
protected override bool CameraFrameStarted { get; }
DeviceCameras
Hanya disediakan saat membuat sumber frame baru. Ini akan diakses ketika CameraFrameStarted adalah true.
Menyediakan kamera perangkat yang memberikan data frame kamera. Jika data frame kamera disediakan oleh beberapa kamera, daftar harus mencakup semua kamera tersebut.
Pastikan nilainya benar ketika CameraFrameStarted adalah true.
protected override List<FrameSourceCamera> DeviceCameras { get; }
Display
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses Assemble().
Menyediakan informasi sistem tampilan. Anda dapat menggunakan DefaultSystemDisplay atau DefaultHMDDisplay untuk mendapatkan informasi tampilan default.
protected override IDisplay Display { get; }
IsAvailable
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses Assemble().
Apakah sumber frame saat ini tersedia.
Jika nilainya sama dengan null, CheckAvailability() akan dipanggil, dan nilainya akan didapat setelah Coroutine selesai.
protected override Optional<bool> IsAvailable { get; }
IsCameraUnderControl
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses Assemble().
Ketika nilainya ture, sesi akan memperbarui transform kamera dan akan merender gambar kamera.
Saat membuat ekstensi headset, ini harus false. Anda harus sepenuhnya mengontrol kamera 3D di dalam adegan. Anda harus menangani rendering kamera, terutama dalam mode VST.
protected override bool IsCameraUnderControl { get; }
IsHMD
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses Assemble().
Apakah sumber frame saat ini adalah headset. Jika headset, informasi diagnostik akan ditampilkan pada papan 3D di depan kamera.
Beberapa filter frame akan beroperasi berbeda pada perangkat.
protected override bool IsHMD { get; }
Metode
CheckAvailability()
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses Assemble().
Coroutine yang digunakan untuk memeriksa ketersediaan sumber frame ketika IsAvailable sama dengan null.
protected override IEnumerator CheckAvailability()
OnSessionStart(ARSession)
Hanya disediakan saat membuat sumber frame baru. Hanya akan diakses selama proses StartSession().
Menangani peluncuran sesi, jika sumber frame ini telah dirakit ke dalam Assembly. Metode ini dirancang untuk inisialisasi yang tertunda, Anda dapat melakukan pekerjaan inisialisasi khusus AR dalam metode ini.
protected override void OnSessionStart(ARSession session)
Parameter
session
OnSessionStop()
Hanya disediakan saat membuat sumber frame baru. Ini akan diakses selama StopSession(bool) atau proses penghentian/kerusakan sesi lainnya.
Menangani penghentian sesi, jika sumber frame ini telah dirakit ke dalam Assembly. Anda dapat menggunakan metode ini untuk menghancurkan sumber daya yang dibuat selama StartSession() dan selama sesi berjalan, serta memulihkan status internal. Metode ini dijamin akan dipanggil sebelum sesi dihancurkan. Jika sumber frame dihancurkan sebelum sesi, ini tidak akan dipanggil, dan sesi akan rusak.
protected override void OnSessionStop()