class XRPersistentAnchorSubsystem
(Niantic.Lightship.AR.XRSubsystems.XRPersistentAnchorSubsystem)
概要
永続アンカー・サブシステムのベースクラス。
class XRPersistentAnchorSubsystem:TrackingSubsystem< XRPersistentAnchor, XRPersistentAnchorSubsystem, XRPersistentAnchorSubsystemDescriptor, XRPersistentAnchorSubsystem.Provider > {
public:
class Provider;
// fields
bool IsMockProvider => provider.IsMockProvider;
// プロパティ
XRPersistentAnchorConfiguration CurrentConfiguration;
// イベント
event debugInfoProvided();
// メソッド
XRPersistentAnchorSubsystem();
オーバーライド TrackableChanges<XRPersistentAnchor> GetChanges(Allocator allocator);
bool TryAddAnchor(Pose pose, out XRPersistentAnchor anchor);
bool TryRemoveAnchor(TrackableId anchorId);
bool TryRestoreAnchor(
XRPersistentAnchorPayload anchorPayload,
out XRPersistentAnchor anchor
);
bool TryLocalize(
XRPersistentAnchorPayload anchorPayload,
out XRPersistentAnchor anchor
);
bool GetVpsSessionId(out string vpsSessionId);
protected:
// メソッド
override void OnStart();
override void OnStop();
};
詳細資料
永続アンカー・サブシステムのベースクラス。
アンカーとは、XRデバイスによって追跡される物理的環境におけるポーズのことである。 デバイスが環境の理解を深めるにつれて、アンカーは更新され、バーチャル・コンテンツを現実世界の位置や方向と結びつけておくことができる。
この抽象クラスは、XR プロバイダによって実装され、SubsystemManager を使用してインスタンス化され、利用可能な XRPersistentAnchorSubsystemDescriptor s を列挙する必要があります。
プロパティ
現在の設定
XRPersistentAnchorConfiguration CurrentConfiguration
<name>XRPersistentAnchorConfiguration</name>で設定を取得または設定する。
Events
debugInfoProvided
イベント debugInfoProvided()
デバッグ情報が利用可能なときに呼び出される
このイベントの各呼び出しは、XRPersistentAnchorNetworkRequestStatusとXRPersistentAnchorLocalizationStatusと(実験)XRPersistentAnchorFrameDiagnosticsの配列を含むXRPersistentAnchorDebugInfoオブジェクトを含みます。
メソッド
XRPersistentAnchorSubsystem
XRPersistentAnchorSubsystem()
Constructor. SubsystemManager を使用して利用可能な XRPersistentAnchorSubsystemDescriptor を列挙し、必要な記述子に対して Create を呼び出します。
GetChanges
override TrackableChanges<XRPersistentAnchor> GetChanges(Allocator allocator)
GetChanges(Allocator)](./index.mdx#GetChanges)を最後にコールしてからのアンカーの変更点(追加、更新、削除)を取得する。
Parameters:
allocator
- TrackableChanges<T>
の NativeArrays に使用するアロケータ。
戻り値
最後に GetChanges をコールしてからの変更。
TryAddAnchor
bool TryAddAnchor(Pose pose, out XRPersistentAnchor anchor)
提供された_pose_で新しいアンカーの作成を試みる。
Parameters:
pose
- セッション空間における、新しいアンカーのポーズ。
anchor
- 新しいアンカー。 このメソッドがtrueを返した場合のみ有効。
戻り値
新しいアンカーが追加された場合はtrue、そうでない場合はfalse。
TryRemoveAnchor
bool TryRemoveAnchor(TrackableId anchorId)
TrackableId anchorId を持つ既存のアンカーの削除を試みます。
Parameters:
anchorId
- 削除する既存のアンカーの ID。
戻り値
アンカーが削除された場合はtrue、そうでない場合はfalse。
TryRestoreAnchor
bool TryRestoreAnchor(
XRPersistentAnchorPayload anchorPayload,
out XRPersistentAnchor anchor
)
アンカーの復元を試みる
Parameters:
anchorPayload
- アンカーを復元するペイロード。
anchor
- 復元されたアンカー。
戻り値
修復の成否
GetVpsSessionId
bool GetVpsSessionId(out string vpsSessionId)
もしあれば、vpsセッションIDを取得する。
Parameters:
vpsSessionId
- vpsセッションIDで、32文字の16進数大文字の文字列。
戻り値
vpsセッションIDが存在する場合はtrue、そうでない場合はfalse。