HandMeshObserver クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
検出された手の形状を追跡する各フレームをメッシュ更新します。
public ref class HandMeshObserver sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 524288)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class HandMeshObserver final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 524288)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class HandMeshObserver
Public NotInheritable Class HandMeshObserver
- 継承
- 属性
Windows の要件
デバイス ファミリ |
Windows 10, version 1903 (10.0.18362.0 で導入)
|
API contract |
Windows.Foundation.UniversalApiContract (v8.0 で導入)
|
注釈
HandMeshObserver を作成すると、検出されたハンドの形状を追跡する特定の SpatialInteractionSource のハンド メッシュの更新がサブスクライブされます。
ユーザーが手で仮想オブジェクトを直接操作する場合は、手の視覚化をレンダリングして、ユーザーの操作に対する信頼度を高める必要があります。 HandMeshObserver を作成すると、GetTriangleIndices を呼び出し、GetVertexStateForPose を呼び出して各フレームの頂点バッファーを更新することで、ハンドアップの固定インデックス バッファーを取得できます。 これらのバッファーを使用すると、ユーザーの手のライブ視覚化をレンダリングできます。
ハンド メッシュのインデックス バッファーは、 HandMeshObserver の有効期間中は変更されません。 ハンド メッシュの頂点バッファーの内容は各フレームに更新されますが、頂点数は更新されません。 そのため、フレームごとに同じ頂点バッファーを補充できます。
SpatialInteractionSource.TryCreateHandMeshObserverAsync または SpatialInteractionSource.TryCreateHandMeshObserver を呼び出して、特定の相互作用ソースの HandMeshObserver を作成します。 ハンド メッシュの更新にアプリのサブスクリプションを初期化するには、フレーム以上かかる場合があります。 メソッドの同期バージョンは、バックグラウンド スレッドからのみ呼び出す必要があります。 UI スレッド、レンダリング スレッド、または更新スレッドから を呼び出す場合は、代わりに非同期バージョンを呼び出す必要があります。
プロパティ
ModelId |
複数のソース検出イベントと損失イベント間で同じインデックス バッファーを識別するハンド メッシュ モデル ID を取得します。 |
NeutralPose |
このハンドの現在のニュートラル HandPose を取得します。 |
NeutralPoseVersion |
このハンドの NeutralPose のバージョンを取得します。 |
Source |
この HandMeshObserver によってハンド メッシュが追跡される SpatialInteractionSource。 |
TriangleIndexCount |
このハンド メッシュ モデルのインデックス バッファー内の要素の数を取得します。 |
VertexCount |
このハンドの頂点の数を取得します。 |
メソッド
GetTriangleIndices(UInt16[]) |
このハンド メッシュ モデルのインデックス バッファーを塗りつぶします。 |
GetVertexStateForPose(HandPose) |
特定のフレームのハンド ポーズ、またはハンド メッシュのニュートラル ポーズに対してハンド メッシュをレンダリングするために必要な頂点バッファーとその他の状態を取得します。 |