Compartilhar via


Orientador de mão

Exemplo: Hand coach

O hand coach dispara mãos modeladas em 3D quando o sistema não detecta as mãos do usuário. Esse recurso é um componente de "ensino" que ajuda a orientar o usuário quando o gesto não foi ensinado. Se os usuários não tiverem feito o gesto especificado por um período, as mãos farão um loop com um atraso. O hand coach pode ser usado para representar pressionar um botão ou pegar um holograma.

Treinador de mão fornecido

O modelo de interação atual representa uma ampla variedade de controles de gestos, como rolagem, seleção distante e toque próximo. Abaixo está uma lista completa de gestos de mão existentes fornecidos no MRTK:

Exemplo de Seleção Próxima
Exemplo de Seleção Próxima – Usado mostra como selecionar botões ou fechar objetos interacionáveis

Exemplo de air tap
Exemplo de Air Tap – usado para mostrar como selecionar objetos que estão longe

Exemplo de movimentação
Exemplo de Como mover um objeto no espaço – Usado para mostrar como mover um holograma no espaço

Exemplo de rotação
Exemplo de Rotate-Used para mostrar como girar hologramas ou objetos

Exemplo de escala
Exemplo de escala – usado para mostrar como manipular hologramas para serem maiores ou menores

Exemplo de Palm Up
Exemplo de Palm up – Uso sugerido, para exibir menus de mão

Exemplo de HandFlip
Exemplo de inversão de mão – outra maneira de abrir menus de mão

Exemplo de rolagem
Exemplo de rolagem – usado para rolar uma lista ou um documento longo

Conceitos de design

Para o Hololens2, projetamos interações com a mão com base em gestos instintivos e naturais das mãos. Acreditamos que eles sejam intuitivos para a maioria dos usuários, portanto, não criamos momentos dedicados de aprendizado de gestos. Em vez disso, criamos o coach de mão para ajudar os usuários a aprender sobre esses gestos se eles ficarem presos ou não estiverem familiarizados com interações de holograma. Sem um momento de aprendizado, sentimos que mostrar aos usuários como executar uma ação demonstrando que seria a melhor opção. Descobrimos que os usuários foram capazes de descobrir o gesto, mas precisavam de um pouco de orientação. Se detectarmos que um usuário não interage com um objeto por um período, um hand coach será disparado demonstrando o posicionamento correto da mão e do dedo.

Intuitiva

Ao animar as mãos, deve ser óbvio e não deve causar confusão. A animação manual é uma representação do gesto que você está tentando solicitar que o usuário entenda.

Por exemplo, se você quiser que um usuário pressione um botão, uma mão pressionando um botão será disparada.

Exemplo: Hand coach Near Tap
Hand Coach demonstrando Near Tapping a Gem

Escala manual

Testamos vários tamanhos de mão com os menus da interface do usuário e sentimos que, se as mãos fossem fiéis ao tamanho, isso dava um sentimento ameaçador. Se eles eram muito pequenos, era difícil ver e entender o gesto.

Voz sobre e mãos

Não espere que os usuários possam ouvir um conjunto de instruções por meio de voz e watch instruções diferentes por meio do Hand coach. Sequencie suas instruções para ajudar os usuários a se concentrarem versus competirem por sua atenção para reduzir a sobrecarga sensorial.

Posso criar o meu próprio?

Sim! Incentivamos você a criar seu próprio gesto exclusivo para seu jogo e contribuir de volta para a comunidade! Fornecemos um arquivo Maya de uma mão fraudada que pode ser usado para seu aplicativo, que pode ser baixado aqui: Baixar HandCoach_MRTK.zip

Exemplo de mãos animadas em Maya
Exemplo de mão animada cutucando uma caixa em Maya

Ferramenta de criação recomendada

Entre os artistas 3D, muitos optam por usar o Maya da Autodesk, que pode usar o HoloLens para transformar a maneira como os ativos são criados. O arquivo de mãos fornecido é um Arquivo Binário Maya, portanto, é recomendável usar Maya para animar e exportar as mãos. Se você preferir usar outro programa 3D, aqui está um . FBX: baixe HandCoachMRTK_FBX.zip para criar sua própria configuração de controlador.

Se estiver usando o arquivo manual maya para download fornecido, é recomendável reduzir verticalmente as mãos no Unity para 0,6.

Exemplo: Plataforma de ônibus manual em Maya
Mãos Manipuladas

Especificações técnicas

  • O arquivo com duas mãos está disponível no formato Maya Ascii
  • Direita e Esquerda estão disponíveis no formato Maya Binary
  • Definir o arquivo Maya como 24 FPS
  • Dentro do arquivo, há uma mão esquerda e direita, que pode ser usada para gestos de duas mãos ou de mão única. A mão direita só ficará visível por padrão.
  • É recomendável deixar um buffer de cerca de 10 quadros no início e no final para fades
  • Se estiver animando um objeto com um destino especificado, sua melhor prática será animar para uma caixa Padrão ou Null.
  • Se a mão estiver animando um objeto físico, como uma caixa, sua melhor prática é não animar a tradução em Maya, mas aguardar para animá-la no Unity ou no Código.
  • A animação visível deve ser de 1,5 segundos para que qualquer informação significativa seja transmitida
  • Quando você se sentir satisfeito com sua animação:

Exportando de Maya

Depois de estar satisfeito com sua animação

  • Selecionar todas as articulações: Selecione > Hierarquia

    Exemplo: hierarquia no menu

  • Asse sua animação: Alterne para Animação bake chave > de animação >

    Exemplo: Local do menu Animação do Bake

  • Excluir a plataforma do controlador: > MainR_Grp de estrutura de tópicos ou MainL_Grp

    Exemplo: Localização do menu de plataforma do controlador

  • Exportar como FBX: selecione JNT + Malha: Seleção de Exportação de Arquivo > (caixa de opção) > Exportar Seleção

    Exemplo: Exportar local do menu de seleção

    Exemplo: Local do menu

    Exemplo: Local do menu Opções de Exportação

Ao exportar como um FBX e trazido para o Unity, reduza as mãos para 0,6. Descobrimos que este era o equilíbrio perfeito para exibir as mãos.

Exemplo: Configurações do Unity
Configurações do Unity para HandCoach_R pré-fabricado encontrado no MRTK

Implementando o Hands em seu projeto do Unity

Práticas recomendadas

  • É recomendável reduzir as mãos na unidade para 0,6

  • As mãos devem ser reproduzidas duas vezes e, se não forem concluídas, serão continuamente colocadas em loop até que o gesto seja concluído. As mãos devem ser executadas duas vezes para garantir que o usuário tenha tempo para se registrar e ver o gesto. As mãos devem esmaecer entre loops.

  • Se as mãos do usuário estiverem visíveis por câmeras HL2, mas os usuários não estiverem fazendo a interação necessária, as mãos aparecerão após 10 segundos.

  • Se as mãos do usuário NÃO estiverem visíveis pelas câmeras HL2, as mãos aparecerão após 5 segundos.

  • Se as mãos do usuário forem visivelmente rastreadas por câmeras HL2 no meio da animação, a animação será concluída e desaparecerá.

  • Se você estiver incluindo a narração, sugerimos que ela corresponda ao gesto da mão.

  • Se você tiver ensinado as mãos pelo menos uma vez, repita o gesto somente se for detectado que o usuário está preso.

  • Se posições específicas do dedo/mão forem críticas, verifique se os usuários podem ver claramente essas nuances na animação. Tente colocar as mãos para que as partes mais importantes fiquem claramente visíveis.

  • Se você observar distorção nas mãos, precisará ir para As configurações de Qualidade do Unity aumentam o número de ossos. Acesse Editar > Configurações > do Projeto do Unity Qualidade > Outros > Pesos de Combinação. Verifique se "4 ossos" estão selecionados para ver Articulações Suaves.

    Exemplo: Janela Configurações do Projeto

O que evitar

Confira também