Serviço de simulação de entrada — MRTK2
Com a simulação de entrada do MRTK, pode testar vários tipos de interações no editor do Unity sem criar e implementar num dispositivo. Isto permite-lhe iterar rapidamente as suas ideias no processo de conceção e desenvolvimento. Utilize combinações de teclado e rato para controlar entradas simuladas.
O Serviço de Simulação de Entrada emula o comportamento de dispositivos e plataformas que podem não estar disponíveis no editor do Unity. Os exemplos incluem:
- Controlo principal do dispositivo HoloLens ou VR
- Gestos de mão do HoloLens
- HoloLens 2 controlo manual articulado
- HoloLens 2 controlo ocular
- Controladores de dispositivos VR
Aviso
Isto não funciona ao utilizar o Modo de Emulação > Holográfica XR do Unity = "Simular no Editor". A simulação no editor do Unity irá tirar o controlo da simulação de entrada do MRTK. Para utilizar o serviço de simulação de entrada MRTK, terá de definir a Emulação Holográfica XR como Modo de Emulação = "Nenhum"
Como utilizar a simulação de entrada do MRTK
A simulação de entrada está ativada por predefinição nos perfis que são enviados com MRTK. Pode simplesmente clicar no botão Reproduzir para executar a cena com suporte de simulação de entrada.
- Prima as teclas W, A, S, D, Q, E para mover a câmara.
- Mantenha premido o botão Direito do rato e mova o rato para dar uma vista de olhos.
- Para levantar as mãos simuladas, prima a Barra de espaço (Mão direita) ou a tecla Shift à Esquerda (Mão esquerda)
- Para manter as mãos simuladas na vista, prima a tecla T ou Y
- Para rodar as mãos simuladas, prima sem soltar a tecla Ctrl e mova o rato
Na folha de truques de batota da simulação de entrada do editor
Prima Ctrl esquerdo + H na cena HandInteractionExamples para apresentar uma folha de truques com controlos de simulação de entrada.
Ativar o serviço de simulação de entrada
Na configuração do fornecedor de Dados do Sistema de Entrada, o serviço simulação de entrada pode ser configurado com o seguinte.
- O tipo tem de ser Microsoft.MixedReality.Toolkit.Input > InputSimulationService.
- Por predefinição, as Plataformas Suportadas incluem todas as plataformas do Editor, uma vez que o serviço utiliza a entrada do teclado e do rato.
Nota
O serviço simulação de entrada pode ser utilizado noutros pontos finais da plataforma, como autónomo, alterando a propriedade Plataforma(s) Suportada(s) para incluir os destinos pretendidos.
Controlo da câmara
O movimento do cabeçalho pode ser emulado pelo Serviço de Simulação de Entrada.
Rodar a câmara
- Paire o cursor sobre a janela do editor viewport. Poderá ter de clicar na janela para lhe dar o foco de entrada se as teclas premidas não funcionarem.
- Prima sem soltar o Botão de Aspeto do Rato (predefinição: botão direito do rato).
- Mova o rato na janela viewport para rodar a câmara.
- Utilize a roda de deslocamento para rodar a câmara na direção da vista.
A velocidade de rotação da câmara pode ser configurada ao alterar a definição Velocidade do Aspeto do Rato no perfil de simulação de entrada.
Em alternativa, utilize os eixos Look Horizontal/Look Vertical para rodar a câmara (predefinição: thumbstick direito do controlador de jogo).
Mover a câmara
Utilize os eixos Mover Horizontalmente/Vertical para mover a câmara (predefinição: teclas WASD ou thumbstick esquerdo do controlador de jogo).
Os ângulos de posição e rotação da câmara também podem ser definidos explicitamente na janela de ferramentas. A câmara pode ser reposta para a predefinição com o botão Repor .
Simulação do controlador
A simulação de entrada suporta dispositivos controladores emulados (ou seja, controladores de movimento e mãos). Estes controladores virtuais podem interagir com qualquer objeto que suporte controladores regulares, como botões ou objetos agarráveis.
Modo de simulação do controlador
Na janela ferramentas de simulação de entrada , a definição Modo de Simulação do Controlador Predefinido alterna entre três modelos de entrada distintos. Este modo predefinido também pode ser definido no perfil de simulação de entrada.
Mãos Articuladas: simula um dispositivo manual totalmente articulado com dados de posição conjunta.
Emula HoloLens 2 modelo de interação.
As interações baseadas no posicionamento preciso da mão ou no toque de utilização podem ser simuladas neste modo.
Gestos com a Mão: simula um modelo de mão simplificado com toque de ar e gestos básicos.
Emula o modelo de interação holoLens.
O foco é controlado com o ponteiro de Olhar. O gesto Toque de Ar é utilizado para interagir com botões.
Controlador de Movimento: simula um controlador de movimento utilizado com auscultadores VR que funciona de forma semelhante a interações longíncronas com As Mãos Articuladas.
Emula auscultadores VR com o modelo de interação controladores.
As teclas de acionador, captura e menu são simuladas através da entrada do teclado e do rato.
Simular o movimento do controlador
Prima sem soltar a Tecla de Manipulação do Controlador Esquerdo/Direito (predefinição: Shift esquerdo para o controlador esquerdo e Espaço para o controlador direito) para obter o controlo de qualquer um dos controladores. Enquanto a tecla de manipulação é premida, o controlador aparecerá no viewport. Assim que a chave de manipulação for lançada, os controladores desaparecerão após um pequeno Tempo Limite de Ocultação do Controlador.
Os controladores podem ser ativados e congelados em relação à câmara na janela das ferramentas de simulação de entrada ou ao premir a Tecla de Controlador Esquerda/Direita (predefinição: T para a esquerda e Y para a direita). Prima novamente a tecla de alternar para ocultar novamente os controladores. Para manipular os controladores, a Chave de Manipulação do Controlador Esquerdo/Direito tem de ser mantida. Tocar duas vezes na Chave de Manipulação do Controlador Esquerdo/Direito também pode ativar/desativar os controladores.
O movimento do rato irá mover o controlador no plano de visualização. Os controladores podem ser movidos para mais ou mais perto da câmara com a roda do rato.
Para rodar os controladores com o rato, mantenha premida a Tecla de Manipulação do Controlador Esquerdo/Direito (Shift Esquerdo ou Espaço) e o Botão Rodar do Controlador (predefinição: botão Ctrl esquerdo ) e, em seguida, mova o rato para rodar o controlador. A velocidade de rotação do controlador pode ser configurada ao alterar a definição Velocidade de Rotação do Controlador de Rato no perfil de simulação de entrada.
Todo o posicionamento manual também pode ser alterado na janela de ferramentas de simulação de entrada, incluindo a reposição de mãos para predefinição.
Definições de perfil adicionais
- O Multiplicador de Profundidade do Controlador controla a sensibilidade do movimento da profundidade da roda do rato. Um número maior acelerará o zoom do controlador.
- A Distância do Controlador Predefinida é a distância inicial dos controladores da câmara. Clicar nos controladores de botão Repor também colocará controladores a esta distância.
- Controller Jitter Amount adiciona movimento aleatório aos controladores. Esta funcionalidade pode ser utilizada para simular o controlo de controlador impreciso no dispositivo e garantir que as interações funcionam bem com entradas ruidosas.
Gestos de mão
Gestos de mão como beliscar, agarrar, espetar, etc. também pode ser simulado.
Ativar o controlo manual com a Tecla de Manipulação do Controlador Esquerdo/Direito (Shift Esquerdo ou Espaço)
Enquanto manipula, prima sem soltar um botão do rato para efetuar um gesto de mão.
Cada um dos botões do rato pode ser mapeado para transformar a forma da mão num gesto diferente com as definições Gesto da Mão do Rato Esquerdo/Médio/Direito . O Gesto de Mão Predefinido é a forma da mão quando não é premido nenhum botão.
Nota
O gesto Pinch é o único gesto que executa a ação "Selecionar" neste momento.
Manipulação manual
- Prima sem soltar a Tecla de Manipulação do Controlador Esquerdo/Direito (Shift à Esquerda ou Espaço)
- Apontar para o objeto
- Premir o botão do rato para aproximar
- Utilizar o rato para mover o objeto
- Solte o botão do rato para parar a interação
Manipulação de duas mãos
Para manipular objetos com duas mãos ao mesmo tempo, recomenda-se o modo de mão persistente.
- Alterne em ambas as mãos ao premir as teclas de alternar (T/Y).
- Manipular uma mão de cada vez:
- Mantenha a tecla Espaço premida para controlar a mão direita
- Mover a mão para o local onde pretende agarrar o objeto
- Prima o botão esquerdo do rato para ativar o gesto De aproximar os dedos .
- Liberte Espaço para parar de controlar a mão direita. A mão será congelada no lugar e presa no gesto de Aproximar , uma vez que já não está a ser manipulada.
- Repita o processo com a outra mão, agarrando o mesmo objeto num segundo local.
- Agora que ambas as mãos estão a agarrar o mesmo objeto, pode mover qualquer uma delas para realizar manipulação com duas mãos.
Interação GGV (Olhar, Gesto e Voz)
Por predefinição, a interação GGV é ativada no editor, enquanto não existem mãos articuladas presentes na cena.
- Rodar a câmara para apontar o cursor de olhar para o objeto interagiável (botão direito do rato)
- Clique sem soltar no botão esquerdo do rato para interagir
- Rodar a câmara novamente para manipular o objeto
Pode desativar esta opção ao alternar a opção Is Hand Free Input Enabled no Perfil de Simulação de Entrada.
Além disso, pode utilizar mãos simuladas para interação GGV
- Ativar a simulação GGV ao mudar o Modo de Simulação Manual para Gestos no Perfil de Simulação de Entrada
- Rodar a câmara para apontar o cursor de olhar para o objeto interagiável (botão direito do rato)
- Mantenha a tecla Espaço premida para controlar a mão direita
- Clique sem soltar no botão esquerdo do rato para interagir
- Utilizar o rato para mover o objeto
- Solte o botão do rato para parar a interação
Criar Eventos de Teletransporte
Para gerar o evento de teletransporte na simulação de entrada, configure as Definições de Gesto de Mão no Perfil de Simulação de Entrada para que um execute o Gesto de Início de Teletransporte enquanto o outro executa o Gesto de Fim de Teletransporte . O gesto Iniciar teletransportar apresentará o Ponteiro de Teletransporte, enquanto a gesure Teleport End irá concluir a ação de teletransporte e mover o utilizador.
A posição y do teleporto resultante depende da deslocação da câmara ao longo do eixo y. No editor, é 0 por predefinição, por isso utilize as teclas Q e E para a ajustar à altura adequada.
Interação do controlador de movimento
Os controladores de movimento simulados podem ser manipulados da mesma forma que as mãos articuladas. O modelo de interação é semelhante à interação de mão articulada enquanto as teclas acionador, agarr e menu são mapeadas para o botão esquerdo do rato, chave G e M , respetivamente.
Monitorização ocular
A simulação de controlo ocular pode ser ativada ao verificar a opção Simular Posição Ocular no Perfil de Simulação de Entrada. Isto não deve ser utilizado com interações de estilo GGV ou controlador de movimento (por isso, certifique-se de que o Modo de Simulação do Controlador Predefinido está definido como Mão Articulada).
Janela Ferramentas de simulação de entrada
Ative a janela de ferramentas de simulação de entrada a partir do menusimulação de entradaMixed Reality>Toolkit>Utilities>. Esta janela fornece acesso ao estado da simulação de entrada durante o modo de reprodução.
Botões Viewport (opcional)
Pode especificar uma pré-criação para botões no editor para controlar o posicionamento manual básico no perfil de simulação de entrada em Indicadores Prefab. Este é um utilitário opcional, as mesmas funcionalidades podem ser acedidas na janela de ferramentas de simulação de entrada.
Nota
Os indicadores viewport estão desativados por predefinição, uma vez que atualmente podem interferir com as interações da IU do Unity. Veja o problema n.º 6106. Para ativar, adicione a prefab InputSimulationIndicators à Prefab de Indicadores.
Os ícones de mão mostram o estado das mãos simuladas:
- A mão não está a controlar. Clique para ativar a mão.
- A mão é controlada, mas não controlada pelo utilizador. Clique para ocultar a mão.
- A mão é controlada e controlada pelo utilizador. Clique para ocultar a mão.
- Clique para repor a mão para a posição predefinida.