Class ExternalDeviceMotionFrameSource
- 名前空間
- easyar
- アセンブリ
- EasyAR.Sense.dll
モーション追跡機能を持つ外部デバイスのフレームソースを表します。通常、カメラレンダリングとデバイストラッキングの両方がデバイスSDKによって行われるヘッドマウントデバイスを示します。
このフレームソースはモーション追跡デバイスであり、ARSessionでモーションデータを出力します。
ヘッドマウントディスプレイなどのデバイス入力を実装するために継承できますが、モーション追跡機能は自身で実装する必要があります。EasyARのモーション追跡は外部デバイスで直接使用できません。ハードウェアやその他から画像とポーズデータを取得し、EasyARに入力する必要があります。EasyARはこれらのデータ取得機能を提供しませんが、入力後のEasyAR機能実行能力は提供します。
カスタムカメラやヘッドマウントディスプレイでトライアル製品(個人版ライセンス、トライアル版XRライセンス、トライアル版Megaサービスなど)を使用する場合、EasyAR Senseは起動後、一定の有限時間で応答を停止します。
public abstract class ExternalDeviceMotionFrameSource : ExternalDeviceFrameSource
- 継承
-
ExternalDeviceMotionFrameSource
- Derived
- 継承されたメンバー
メソッド
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