index
title: class ARPersistentAnchor toc_max_heading_level: 4
class ARPersistentAnchor
(Niantic.Lightship.AR.PersistentAnchors.ARPersistentAnchor)
概要
XRデバイスでトラッキングする永続的なアンカーを表します。
class ARPersistentAnchor: ARTrackable< XRPersistentAnchor, ARPersistentAnchor > {
public:
// フィールド
IntPtr nativePtr => sessionRelativeData.nativePtr;
new TrackingState trackingState => trackingStateOverride ?? sessionRelativeData.trackingState;
TrackingStateReason trackingStateReason => trackingStateReasonOverride ?? sessionRelativeData.trackingStateReason;
UInt64 TimestampMs => sessionRelativeData.timestampMs;
// プロパティ
Pose PredictedPose;
// メソッド
void RegisterInterpolator(ARPersistentAnchorInterpolator interpolator);
void DeregisterInterpolator();
};
詳細なドキュメント
XRデバイスでトラッキングする永続的なアンカーを表します。
永続的なアンカーとは、処理されたスキャンによって生成される、世界における永続的なポーズのことで、今後のセッションでも同じ現実世界の場所に存在する。 仮想コンテンツを永続的なアンカーに相対的に配置することで、将来のセッションで現実世界の同じ位置に復元することができます。
フィールド
nativePtr
IntPtr nativePtr => sessionRelativeData.nativePtr
この ARPersistentAnchorに関連付けられたネイティブ・ポインタを取得する。
このポインタが指すデータは、実装で定義されています。 その有効期限も実装で定義されますが、少なくとも次のARSession更新まで有効である必要があります。
trackingState
new TrackingState trackingState => trackingStateOverride ?? sessionRelativeData.trackingState
永続的なアンカーの現在のトラッキング状態。 永続的なアンカーは、トラッキング状態がTrackingまたはLimitedである場合にのみ、仮想コンテンツを表示するために使用します。 それ以外の場合に使用すると、永続的なアンカーのポーズが現実世界の正しい位置に表示されない可能性があります。
trackingStateReason
TrackingStateReason trackingStateReason => trackingStateReasonOverride ?? sessionRelativeData.trackingStateReason
永続的なアンカーが現在のトラッキング状態である理由
TimestampMs
UInt64 TimestampMs => sessionRelativeData.timestampMs
このPersistent Anchor(PredictedPose)に対して最後に予測されたポーズに対応するミリ秒単位のタイムスタンプ。 タイムスタンプはフレームと同じベースである。
プロパティ
PredictedPose
Pose PredictedPose
このPersistent Anchorの最後の予測ポーズ。 これは、GameObjectのポーズが補間や他の機能によって操作された場合の真実のソースとして使用される。