class ARPersistentAnchorManager
(Niantic.Lightship.AR.PersistentAnchors.ARPersistentAnchorManager)
概要
永続的なアンカーを管理します。
class ARPersistentAnchorManager:ARTrackableManager< XRPersistentAnchorSubsystem, XRPersistentAnchorSubsystemDescriptor, XRPersistentAnchorSubsystem.Provider, XRPersistentAnchor, ARPersistentAnchor > {
public:
// プロパティ
float InterpolationTimeSeconds;
bool ContinuousLocalizationEnabled;
bool InterpolationEnabled;
bool TemporalFusionEnabled;
int JpegCompressionQuality;
bool TransformUpdateSmoothingEnabled;
float InitialServiceRequestIntervalSeconds;
float ContinuousServiceRequestIntervalSeconds;
bool DiagnosticsEnabled;
float DeviceMappingLocalizationRequestIntervalSeconds;
bool CloudLocalizationEnabled;
bool DeviceMappingLocalizationEnabled;
DeviceMappingType DeviceMappingType;
bool DeviceMapDownloadEnabled;
// イベント
event arPersistentAnchorStateChanged();
event DebugInfoUpdated();
// メソッド
async Task RestartSubsystemAsync();
IEnumerator RestartSubsystemAsyncCoroutine();
bool GetVpsSessionId(out string vpsSessionId);
bool TryCreateAnchor(
Pose anchorLocalPose,
out ARPersistentAnchor arPersistentAnchor
);
bool TryTrackAnchor(
ARPersistentAnchorPayload payload,
out ARPersistentAnchor arPersistentAnchor
);
void DestroyAnchor(ARPersistentAnchor arPersistentAnchor);
protected:
// フィールド
override string gameObjectName => "Persistent Anchor";
// メソッド
override GameObject GetPrefab();
override void OnEnable();
override void OnBeforeStart();
virtual void Start();
override void OnDisable();
override void OnDestroy();
override void OnTrackablesChanged(
List<ARPersistentAnchor> added,
List<ARPersistentAnchor> updated,
List<ARPersistentAnchor> removed
);
};
// 直接の子孫
class ARLocationManager;
詳細なドキュメント
永続的なアンカーを管理します。
このコンポーネントを使用して、プログラムによって永続的なアンカーの復元や削除、クエリを行います。 永続的なアンカーとは、処理されたスキャンによって生成される、世界における永続的なポーズのことで、今後のセッションでも同じ現実世界の場所に存在する。 仮想コンテンツを永続的なアンカーに相対的に配置することで、将来のセッションで現実世界の同じ位置に復元することができます。
永続的なアンカーを管理するための低レベルのAPIです。 Unity Editorでバーチャルコンテンツをオーサリングする場合は、代わりにARLocationManagerとARLocationsを使用してください。
ARPersistentAnchorManager.arPersistentAnchorStateChangedイベントで変更(追加、更新、削除)をサブスクライブします。
参照
ARTrackableManager<TSubsystem,TSubsystemDescriptor,TProvider,TSessionRelativeData,TTrackable>
フィールド
gameObjectName
override string gameObjectName => "Persistent Anchor"
ARPersistentAnchorごとにインスタンス化されるGameObject
に割り当てる名前
Properties
InterpolationTimeSeconds
float InterpolationTimeSeconds
アンカー補間が行われる秒数。 タイムが速いほど、動きはより顕著になります。
.. 注::
これは実験的な機能であり、予告なく変更または廃止されることがあります
ContinuousLocalizationEnabled
bool ContinuousLocalizationEnabled
連続ローカライズを有効にするか無効にするか
InterpolationEnabled
bool InterpolationEnabled
レガシーなMonoBehaviour駆動補間を有効または無効にするかどうか。このプロパティの代わりに、ネイティブ・ソリューション "TransformUpdateSmoothingEnabled "を使用することを推奨します。
TemporalFusionEnabled
bool TemporalFusionEnabled
テンポラル・フュージョンを有効にするか無効にするか。 フュージョンは複数のローカライズ結果を平均化し、より安定したローカライズを提供します。
JpegCompressionQuality
int JpegCompressionQuality
ローカライズ画像の JPEG 圧縮品質を定義します。 これはクラウド・ローカリゼーションにのみ適用されます。 圧縮率を低くすると、帯域幅の使用量が少なくなります。ローカライズの品質低下を避けるため、20以上にすることをお勧めします。
TransformUpdateSmoothingEnabled
bool TransformUpdateSmoothingEnabled
トランスフォーム更新のスムージングを有効にするか無効にするか