Partilhar via


Detetar capacidades da plataforma — MRTK2

Uma pergunta comum do MRTK envolve saber que dispositivo específico (por exemplo, Microsoft HoloLens 2) está a ser utilizado para executar uma aplicação. Identificar o hardware exato pode ser um desafio em diferentes plataformas. Em vez disso, o MRTK fornece uma forma de identificar capacidades específicas no runtime (por exemplo, se o ponto final do dispositivo atual suportar mãos articuladas).

Capacidades

O Mixed Reality Toolkit fornece a MixedRealityCapability enumeração, que define um conjunto de capacidades para as quais uma aplicação pode consultar no runtime.

Capacidades do sistema de entrada

O Sistema de Entrada MRTK predefinido suporta a consulta das seguintes capacidades:

Funcionalidade Description
ArticuladoHand Entrada manual articulada
EyeTracking Segmentação de olhar para os olhos
GGVHand Gaze-Gesture-Voice hand input
MotionController Entrada do controlador de movimento
VoiceCommand Comandos de voz com palavras-chave definidas pela aplicação
VoiceDictation Ditado da voz para o texto

O código de exemplo abaixo verifica se o sistema de entrada carregou um fornecedor de dados com suporte para mãos articuladas.

bool supportsArticulatedHands = false;

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

Capacidades de sensibilização espacial

O sistema de Sensibilização Espacial MRTK predefinido suporta a consulta das seguintes capacidades:

Funcionalidade Description
SpatialAwarenessMesh Malhas espaciais
SpatialAwarenessPlane Planos espaciais
SpatialAwarenessPoint Pontos espaciais

Este exemplo verifica se o sistema de deteção espacial carregou um fornecedor de dados com suporte para malhas espaciais.

bool supportsSpatialMesh = false;

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

Ver também