class XRScanningSubsystem
(Niantic.Lightship.AR.XRSubsystems.XRScanningSubsystem)
概要
スキャン機能と相互作用するためのインターフェースを定義します。
class XRScanningSubsystem:SubsystemWithProvider< XRScanningSubsystem, XRScanningSubsystemDescriptor, XRScanningSubsystem.Provider > {
public:
class Provider;
// properties
XRScanningConfiguration CurrentConfiguration;
// メソッド
XRScanningSubsystem();
XRScanningState GetState();
bool TryGetRaycastBuffer(
out XRTextureDescriptor colorBufferDescriptor,
out XRTextureDescriptor normalBufferDescriptor,
out XRTextureDescriptor positionTextureDescriptor
);
void ComputeVoxels();
bool TryGetVoxelBuffer(out XRScanningVoxelData voxelData);
void DisposeVoxelBuffer(XRScanningVoxelData voxelData);
string GetScanId();
void SaveCurrentScan();
void DiscardCurrentScan();
};
詳細なドキュメント
スキャン機能と相互作用するためのインターフェースを定義します。
この抽象クラスは、XR プロバイダによって実装され、利用可能な XRScanningSubsystemDescriptor を列挙するために SubsystemManager を使用してインスタンス化される必要があります。
プロパティ
CurrentConfiguration
XRScanningConfiguration CurrentConfiguration
<name> XRScanningConfiguration で設定を取得または設定 </name>
メソッド
XRScanningSubsystem
XRScanningSubsystem()
コンストラクタ。 SubsystemManager を使用して利用可能な XRScanningSubsystemDescriptor を列挙し、必要な記述子で Create を呼び出します。
GetState
XRScanningState GetState()
スキャン・サブシステムの現在の状態を取得します。
TryGetRaycastBuffer
bool TryGetRaycastBuffer(
out XRTextureDescriptor colorBufferDescriptor,
out XRTextureDescriptor normalBufferDescriptor,
out XRTextureDescriptor positionTextureDescriptor
)
最新のレイキャストテクスチャを入手
ComputeVoxels
void ComputeVoxels()
計算するボクセルバッファを要求する。 これは非同期処理で、時間がかかる。 TryGetVoxelsで結果を得る。 XRScanningConfigurationでは、"enableVoxels "をtrueに設定する必要があります。
TryGetVoxelBuffer
bool TryGetVoxelBuffer(out XRScanningVoxelData voxelData)
最新の計算済みボクセルバッファを取得する。 これは後で DisposeVoxelBufferで処分する必要があります。
DisposeVoxelBuffer
void DisposeVoxelBuffer(XRScanningVoxelData voxelData)
以前 TryGetVoxelBufferから取得したボクセルバッファを破棄します
GetScanId
string GetCurrentScanId()
現在のスキャンのIDを取得します。
SaveCurrentScan
void SaveCurrentScan()
現在のスキャンを保存します。 保存後、録画は停止します。 ScanIDはリセットされます。
DiscardCurrentScan
void DiscardCurrentScan()
現在のスキャンを破棄します。 以前に保存されたものはすべて削除されます。 破棄後、レコーディングは停止します。 ScanIDはリセットされます。