Table of Contents

Class ExternalDeviceRotationFrameSource

Spazio dei nomi
easyar
Assembly
EasyAR.Sense.dll

Un frame source che rappresenta un dispositivo esterno con capacita 3DOF rotation tracking. Di solito rappresenta un head-mounted device, in cui camera rendering e device tracking sono entrambi completati dall'SDK del dispositivo.

Questo frame source e un dispositivo 3DOF rotation tracking e produce dati di rotazione in ARSession.

Puoi ereditarlo per implementare input di dispositivi come headset, ma devi implementare tu stesso tracking. Il 3DOF rotation tracking di EasyAR non puo essere usato direttamente su dispositivi esterni. Devi ottenere autonomamente dati immagine e rotazione dall'hardware o da altre sorgenti e inserirli in EasyAR. EasyAR non fornisce la capacita di acquisire questi dati, ma fornisce la capacita di eseguire le funzioni EasyAR dopo che i dati sono stati inseriti in EasyAR.

Quando prodotti trial, come personal license, trial XR license o trial Mega service, sono usati su una custom camera o headset, EasyAR Sense smettera di rispondere per un tempo limitato fisso dopo ogni avvio.

public abstract class ExternalDeviceRotationFrameSource : ExternalDeviceFrameSource
Ereditarietà
ExternalDeviceRotationFrameSource
Membri ereditati

Metodi

HandleCameraFrameData(DeviceFrameSourceCamera, double, Image, CameraParameters, Quaternion)

Inserisce dati frame della camera.

Si consiglia di inserire dati a 30 o 60 fps. Il frame rate minimo accettabile e 2, ma il tempo di risposta di alcuni algoritmi sara influenzato. Puo essere chiamato da qualsiasi thread purche le tue API siano thread-safe. Questi dati devono essere coerenti con i dati al momento dell'esposizione del sensor camera. Quando disponibili, si consiglia di inserire dati colore in EasyAR Sense, cosa utile per l'effetto di EasyAR Mega. Per la massima efficienza, puoi progettare l'intera catena dati in modo che i raw YUV data passino direttamente tramite shared memory e vengano passati direttamente a EasyAR Sense con un data pointer. Fai attenzione alla proprieta dei dati.

protected bool HandleCameraFrameData(DeviceFrameSourceCamera deviceCamera, double timestamp, Image image, CameraParameters cameraParameters, Quaternion deviceRotation)

Parametri

deviceCamera
timestamp
image
cameraParameters
deviceRotation

HandleRenderFrameData(double, Quaternion)

Inserisce dati rendering frame.

Assicurati di chiamarlo a ogni frame dopo che i dati del dispositivo sono pronti. I frame non possono essere saltati. Questi dati devono essere coerenti con i dati della camera di rendering Unity corrente nello stesso frame guidato dal dispositivo.

protected bool HandleRenderFrameData(double timestamp, Quaternion rotation)

Parametri

timestamp
rotation