Class ExternalDeviceRotationFrameSource
- Пространство имен
- easyar
- Сборка
- EasyAR.Sense.dll
Frame source, представляющий внешнее устройство с возможностью 3DOF rotation tracking. Обычно представляет head-mounted device, где camera rendering и device tracking выполняются SDK устройства.
Этот frame source является устройством 3DOF rotation tracking и выводит данные вращения в ARSession.
Можно наследоваться от него, чтобы реализовать ввод устройства, например headset, но tracking нужно реализовать самостоятельно. 3DOF rotation tracking EasyAR нельзя напрямую использовать на внешних устройствах. Нужно самостоятельно получать изображения и данные вращения из оборудования или других источников и передавать их в EasyAR. EasyAR не предоставляет возможность получения этих данных, но предоставляет возможность запускать функции EasyAR после передачи данных в EasyAR.
При использовании trial-продуктов, таких как personal license, trial XR license или trial Mega service, на custom camera или headset, EasyAR Sense после каждого запуска перестает отвечать на фиксированное ограниченное время.
public abstract class ExternalDeviceRotationFrameSource : ExternalDeviceFrameSource
- Наследование
-
ExternalDeviceRotationFrameSource
- Наследуемые члены
Методы
HandleCameraFrameData(DeviceFrameSourceCamera, double, Image, CameraParameters, Quaternion)
Вводит данные frame camera.
Рекомендуется вводить данные с 30 или 60 fps. Минимально допустимый frame rate равен 2, но время отклика некоторых алгоритмов будет затронуто. Его можно вызывать из любого потока, если ваши API thread-safe. Эти данные должны соответствовать данным в момент экспозиции sensor camera. Когда возможно, рекомендуется вводить цветные данные в EasyAR Sense, что помогает эффекту EasyAR Mega. Для максимальной эффективности можно спроектировать всю цепочку данных так, чтобы raw YUV data напрямую передавались через shared memory и напрямую передавались в EasyAR Sense с помощью data pointer. Обратите внимание на владение данными.
protected bool HandleCameraFrameData(DeviceFrameSourceCamera deviceCamera, double timestamp, Image image, CameraParameters cameraParameters, Quaternion deviceRotation)
Параметры
deviceCameratimestampimagecameraParametersdeviceRotation
HandleRenderFrameData(double, Quaternion)
Вводит данные rendering frame.
Обязательно вызывайте каждый кадр после готовности данных устройства. Кадры нельзя пропускать. Эти данные должны соответствовать данным текущей Unity rendering camera в том же кадре, управляемом устройством.
protected bool HandleRenderFrameData(double timestamp, Quaternion rotation)
Параметры
timestamprotation