偵測平臺功能 — MRTK2

MRTK 的常見問題涉及瞭解哪些特定裝置 (例如:Microsoft HoloLens 2) 用來執行應用程式。 在不同的平臺上識別確切的硬體可能很困難。 相反地,MRTK 提供在執行時間識別特定功能的方式, (例如,如果目前的裝置端點支援清楚的手部) 。

功能

Mixed Reality工具組提供 MixedRealityCapability 列舉,其會定義一組可在執行時間查詢應用程式的功能。

輸入系統功能

預設 MRTK 輸入系統支援查詢下列功能:

功能 描述
ArticulatedHand 清楚的手部輸入
EyeTracking 眼球注視目標
GGVHand 注視手勢語音手部輸入
MotionController 動作控制器輸入
VoiceCommand 使用應用程式定義關鍵字的語音命令
VoiceDictation 語音轉換文字聽寫

下列範例程式碼會檢查輸入系統是否已載入資料提供者,並支援已表達的手部。

bool supportsArticulatedHands = false;

IMixedRealityCapabilityCheck capabilityCheck = CoreServices.InputSystem as IMixedRealityCapabilityCheck;
if (capabilityCheck != null)
{
    supportsArticulatedHands = capabilityCheck.CheckCapability(MixedRealityCapability.ArticulatedHand);
}

空間感知功能

預設 MRTK 空間感知系統支援查詢下列功能:

功能 描述
SpatialAwarenessMesh 空間網格
SpatialAwarenessPlane 空間平面
SpatialAwarenessPoint 空間點

此範例會檢查空間感知系統是否已載入支援空間網格的資料提供者。

bool supportsSpatialMesh = false;

IMixedRealityCapabilityCheck capabilityCheck = CoreServices.SpatialAwarenessSystem as IMixedRealityCapabilityCheck;
if (capabilityCheck != null)
{
    supportsSpatialMesh = capabilityCheck.CheckCapability(MixedRealityCapability.SpatialAwarenessMesh);
}

另請參閱