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