Class ExternalDeviceMotionFrameSource
- 네임스페이스
- easyar
- 어셈블리
- EasyAR.Sense.dll
모션 추적 기능을 갖춘 외부 장치의 프레임 소스를 나타냅니다. 일반적으로 카메라 렌더링과 장치 추적이 모두 장치 SDK에 의해 처리되는 헤드 마운트 디바이스를 의미합니다.
이 프레임 소스는 ARSession에서 모션 데이터를 출력하는 모션 추적 장치입니다.
이를 상속하여 헤드 마운트 디스플레이와 같은 장치 입력을 구현할 수 있지만, 모션 추적 기능은 직접 완료해야 합니다. EasyAR의 모션 추적은 외부 장치에서 직접 사용할 수 없습니다. 하드웨어나 다른 곳에서 이미지와 pose 데이터를 직접 획득하여 EasyAR로 입력해야 합니다. EasyAR은 이러한 데이터의 획득 능력을 제공하지 않지만, 데이터가 EasyAR에 입력된 후 EasyAR 기능을 실행하는 능력은 제공합니다.
사용자 정의 카메라나 헤드 마운트 디스플레이에서 평가판 제품(개인용 라이선스, 평가판 XR 라이선스 또는 평가판 Mega 서비스 등)을 사용할 때, EasyAR Sense는 시작 후 고정된 제한된 시간 이후 응답을 중지합니다.
public abstract class ExternalDeviceMotionFrameSource : ExternalDeviceFrameSource
- 상속
-
ExternalDeviceMotionFrameSource
- 파생
- 상속된 멤버
메서드
HandleCameraFrameData(DeviceFrameSourceCamera, double, Image, CameraParameters, Pose, MotionTrackingStatus)
카메라 프레임 데이터를 입력합니다.
30 또는 60fps 데이터 입력을 권장합니다. 최소 허용 프레임 속도 = 2이지만, 일부 알고리즘의 응답 시간에 영향을 줄 수 있습니다. API가 스레드 세이프하기만 하다면 어느 스레드에서든 호출할 수 있습니다. 이 데이터는 카메라 센서가 노출되는 시점의 데이터와 일치해야 합니다. 가능하다면 EasyAR Sense에 컬러 데이터를 입력하는 것이 좋으며, 이는 EasyAR Mega 효과에 도움이 됩니다. 최적의 효율성을 위해 원시 YUV 데이터가 공유 메모리를 통해 직접 직전 통과하고 데이터 포인터를 사용하여 EasyAR Sense로 직접 전달되도록 전체 데이터 체인을 설계할 수 있습니다. 데이터 소유권에 유의하십시오.
protected bool HandleCameraFrameData(DeviceFrameSourceCamera deviceCamera, double timestamp, Image image, CameraParameters cameraParameters, Pose deviceToOriginTransform, MotionTrackingStatus trackingStatus)
매개 변수
deviceCameratimestampimagecameraParametersdeviceToOriginTransformtrackingStatus
HandleRenderFrameData(double, Pose, MotionTrackingStatus)
렌더링 프레임 데이터를 입력합니다.
장치 데이터가 준비된 후 매 프레임마다 호출해야 합니다. 프레임을 건너뛸 수 없습니다. 이 데이터는 동일 프레임 내에서 Unity 렌더링 카메라를 구동하는 데이터와 일치해야 합니다.
protected bool HandleRenderFrameData(double timestamp, Pose pose, MotionTrackingStatus trackingStatus)
매개 변수
timestampposetrackingStatus