Identifiera plattformsfunktioner

En vanlig fråga om MRTK handlar om att veta vilken specifik enhet (t.ex. Microsoft HoloLens 2) som används för att köra ett program. Det kan vara svårt att identifiera den exakta maskinvaran på olika plattformar. I stället ger MRTK ett sätt att identifiera specifika funktioner vid körning (t.ex. om den aktuella enhetsslutpunkten stöder ledade händer).

Funktioner

Den Mixed Reality Toolkit tillhandahåller uppräkningen, som definierar en uppsättning funktioner som ett MixedRealityCapability program kan köra frågor mot vid körning.

Funktioner för indatasystem

Standardsystemet för MRTK-indata har stöd för frågor om följande funktioner:

Funktion Beskrivning
ArticulatedHand Ledade handindata
EyeTracking Rikta blick mot ögon
GGVHand Handinmatning med blick-gest
MotionController Indata för rörelsestyrenhet
VoiceCommand Röstkommandon med appdefinierade nyckelord
VoiceDictation Röst till text-diktering

Exempelkoden nedan kontrollerar om indatasystemet har läst in en dataleverantör med stöd för ledade händer.

bool supportsArticulatedHands = false;

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

Funktioner för rumslig medvetenhet

Standardsystemet för MRTK Spatial Awareness har stöd för frågor om följande funktioner:

Funktion Beskrivning
SpatialAwarenessMesh Rumsliga nät
SpatialAwarenessPlane Rumsliga plan
SpatialAwarenessPoint Rumsliga punkter

Det här exemplet kontrollerar om det rumsliga medvetenhetssystemet har läst in en dataleverantör med stöd för rumsliga nät.

bool supportsSpatialMesh = false;

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

Se även