Share via


HandMeshObserver 類別

定義

提供網格更新追蹤手部偵測到圖形的每個畫面。

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
繼承
Object Platform::Object IInspectable HandMeshObserver
屬性

Windows 需求

裝置系列
Windows 10, version 1903 (已於 10.0.18362.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v8.0 引進)

備註

建立 HandMeshObserver 會訂閱指定 SpatialInteractionSource 的手部網格更新,以追蹤該手的偵測到圖形。

當使用者直接與虛擬物件與其手部互動時,您可能會想要轉譯手部的視覺效果,以提高使用者對互動的信賴度。 藉由建立 HandMeshObserver,您可以藉由呼叫 GetTriangleIndices來取得手部的固定索引緩衝區,然後藉由呼叫 GetVertexStateForPose來取得每個框架的更新頂點緩衝區。 透過這些緩衝區,您可以呈現使用者手部的即時視覺效果。

手部網格的索引緩衝區不會在 HandMeshObserver 的存留期內變更。 手部網格的頂點緩衝區內容將會更新每個畫面,而頂點計數將不會更新。 因此,您可以為每個畫面重新填入相同的頂點緩衝區。

您可以呼叫SpatialInteractionSource.TryCreateHandMeshObserverAsyncSpatialInteractionSource.TryCreateHandMeshObserver,為指定的互動來源建立HandMeshObserver。 可能需要超過一個畫面,才能初始化應用程式的訂用帳戶以手動網格更新。 您應該只從背景執行緒呼叫 方法的同步版本。 如果您要從 UI 執行緒呼叫、轉譯執行緒或更新執行緒,您應該改為呼叫非同步版本。

屬性

ModelId

取得手部網格模型識別碼,以識別多個來源偵測和遺失事件的相同索引緩衝區。

NeutralPose

取得這個手部目前的中性 HandPose

NeutralPoseVersion

取得這個手部 的 NeutralPose 版本。

Source

HandMeshObserver會追蹤其手部網格的SpatialInteractionSource

TriangleIndexCount

取得這個手部網格模型之索引緩衝區中的元素數目。

VertexCount

取得這個手部的頂點計數。

方法

GetTriangleIndices(UInt16[])

填滿這個手部網格模型的索引緩衝區。

GetVertexStateForPose(HandPose)

取得頂點緩衝區,以及轉譯指定框架手部姿勢或手部網格中性姿勢所需的其他狀態。

適用於