偵測平臺功能 — 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);
}