偵測平臺功能

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);
}

另請參閱