Notas sobre a versão do Kit de Ferramentas de Realidade Misturada 2.7 da Microsoft

Novidades na 2.7.3

Um agradecimento especial de Redmond

A equipe do MRTK gostaria de expressar os mais sinceros agradecimentos a você, da comunidade do MRTK. Suas contribuições, seus comentários e seus votos ajudaram o MRTK a ganhar o Prêmio Auggie de 2021 na categoria de Melhor Ferramenta para Desenvolvedores. Sem o seu apoio, não estaríamos onde estamos hoje. Agradecemos a você por ter adicionado novo suporte à plataforma, novos recursos, correções de bugs, sugestões, perguntas ou por ter contribuído de qualquer outra maneira.

Também gostaríamos de agradecer ao nosso prezado amigo Lachlan Ford pela aceitação do prêmio Auggie em nosso nome e pela garantia do recebimento do prêmio em boas condições. Prêmio Auggie de 2021 na categoria de Melhor Ferramenta para Desenvolvedores

Suporte ao Unity 2021

Tornamos mais fácil o build no Unity 2021 com o lançamento da 2.7.3. Se você encontrar problemas ao usar o MRTK com o Unity 2021, registre um problema em nosso repositório GitHub.

Reconhecimento de cena por meio do suporte à comunicação remota (somente OpenXR)

O reconhecimento de cena agora está disponível durante a comunicação remota no HoloLens 2 com a plataforma OpenXR.

Alterações e correções de bugs do MRTK 2.7.3

  • Interrupção da criação de uma pasta CustomProfiles, a menos que um perfil tenha sido clonado para essa pasta CustomProfiles
  • Remoção de chamadas para .gameObject em GameObjects .gameObject
  • Correção de um bug em que os objetos com componentes desabilitados podem fazer com que os ponteiros tenham o foco bloqueado #9945
  • Atualização de métodos preteridos e correção de erros de compilador no Unity 2021 #9938
  • Correção de link.xml no Unity 2021 link.xml
  • Atualização do inspetor de configuração de botão para mostrar nomes de ícones #9972
  • Atualização do cabeçalho e alinhamento da lista de mapeamentos do controlador #9976
  • Classificação de melhorias do Unity para o MRTK #9940
  • Correção de problemas e inconsistências do colisor de BoundsControl#9973
  • Correção dos inspetores do conjunto de ícones do botão #9999
  • Correção de alinhamento do colisor de identificador de escala de BoundsControl#10007
  • Correção de categorização de textura de fonte SDF fixa #10006
  • Correção de orientação do identificador de escala e de nivelamento automático de BoundsControl#10013
  • Foram adicionados comentários para a correção de nivelamento de BoundsControl#10016
  • Correção de deformações estranhas com malha manual durante a reprodução de animação #10024
  • Correção de log e SpatialAwarenessSurfaceTypes para reconhecimento de cena SpatialAwarenessSurfaceTypes
  • Adicionada uma diretiva de definição autônoma ao script de cena de exemplo de Leap #10036
  • Correção do problema de BoundsControl quando o tipo de ativação não padrão é especificado no editor #10039
  • Correção de erros de código de bytes de sombreador inválido para OpenGL ES e metal #10041
  • Adicionada a chamada ClearProgressBar para corrigir o congelamento da janela de build no Unity 2020 ClearProgressBar
  • Atualização de serialização para ativos de fonte #10047
  • Correção da cena de interação de mão para ter os colisores de controle deslizante de pinçagem adequados #10060
  • Correção de matemática de quatérnion de magnetismo de superfície #10074
  • Melhoria de mensagens de versão de câmera de PV #10077
  • Correção de nível de proteção de BoundingBoxHelper.GetRawBoundsCornersBoundingBoxHelper.GetRawBoundsCorners
  • Atualização de logs de importação gLTF para serem um log em vez de vários #10090
  • Remoção do script MRSceneContent de cenas que não contêm o MRTK MRSceneContent
  • Remoção de sistemas de eventos baseados em pacote das cenas de exemplo para compatibilidade com o Unity 2018 #10092
  • Remoção do suporte para visualizar pacotes do Microsoft OpenXR #10119
  • Correção de congelamento de aplicativos ao receber dados #10033
  • Correção do EyeTrackingTarget que não dispara OnLookAway ao passar do colisor com EyeTrackingTarget para o colisor sem EyeTrackingTarget
  • Alteração da extensão de ponteiro padrão para tornar o comportamento do ponteiro do mouse mais intuitivo #10075
  • Atualização do resumo para esclarecer quando a inicialização é executada #10177
  • Correção de um problema de NullReferenceException em LinePointerNullReferenceException
  • Correção de BoundsControl com problemas de escala não uniforme #10133
  • Correção de manuseio de IOSMinOSVersion em diferentes culturas IOSMinOSVersion
  • Remoção de lançamentos de raio extras dos objetos habilitados para rastreamento ocular #10162
  • Adicionadas dicas de ferramentas ao focalizar os vários perfis no Inspetor do editor para o MixedRealityToolkit pré-fabricado #10180
  • Correção do menu suspenso de comando de fala e dos comandos de atualização no EyeTrackingExample #10197
  • Correção de objetos 'gLTF' que aparecem em preto quando carregados com o sombreador padrão do Unity #10209
  • Correção de UnityTouchDeviceManager que atualiza a si mesmo quando a propriedade IsEnabled é falsa UnityTouchDeviceManager
  • Atualizado um nome de propriedade no auxiliar de configuração de botão #10221
  • Correção do espaço de coordenadas, ordem de enrolamento e formatação de cultura no exportador de objetos #10208
  • Opção adicionada para mover o ponto de agarramento para ponta do dedo #10206
  • Adicionado suporte para Leap UnityModules 4.9.1 #10282
  • Backport de algumas pequenas alterações em ReserializeAssetsUtility.csReserializeAssetsUtility.cs
  • Conversão de usos incorretos de enumValueIndex para intValueenumValueIndex
  • Correção de descompasso de objetos durante a manipulação próxima #10294
  • Correção de casos em que o controle de limites removeria agressivamente outros componentes #10296
  • Correção de cintilação da iluminação de proximidade #10325
  • Adição de verificação para ver se algo está conectado a eventos antes de determinar o disparo deles #10330
  • Alteração de uma classificação de coisas secundárias #10316
  • Introduzida uma alternativa ao .HasFlag #10319
  • Redução de spam do log de depuração do solucionador de HandConstraintHandConstraint
  • Correção de spam do log que é proveniente de HandConstraintPalmUp.csHandConstraintPalmUp.cs
  • Habilitação de um reconhecimento de cena para a comunicação remota holográfica via OpenXR #10338
  • Adicionado um construtor sem parâmetros ao InteractableOnClickReceiver #10353
  • O FingerChaser pré-fabricado foi movido para a pasta Common no pacote de exemplos #10358
  • Adicionado um caso de fallback para seleção de mão articulada no OpenXR #10359
  • Correção de um problema de importação de UPM da demonstração do Windows Mic Stream #10362
  • Renomeação de perfis OpenXR #10363
  • Melhoria da saída de log de ocorrências de lançamento de raio com o Unity 2021 e correção de uma pane ao usar o AssetBundles #10370
  • Atualização de cadeias de caracteres para constantes e tipo de cache para reduzir as alocações #10369
  • Correção dos observadores de malha baseados em XRSDK ao usar a comunicação remota holográfica baseada em aplicativo #10366
  • Integração da visualização do Oculus #10067
  • Adicionada a documentação para propriedades de BoundsControl#10361
  • Correção do perseguidor de articulação de mão pré-fabricado #10377
  • Correção de erros de implantação para o Oculus Quest 10374
  • Correção de problema com o perfil de cena de exemplo Reconhecimento de Cena #10368
  • Correção de erros do console do MRTK quando importados nas últimas versões do Unity 2021.2 #10182
  • Adicionada uma documentação ausente sobre como alterar os cursores #4934
  • Melhoria de instruções na página de lançamento do pacote do MRTK Unity para torná-las mais claras #9575
  • Correção do problema em que a cena de demonstração de seleção de MicStream não processou a voz (pacote UPM) #9908
  • Correção do problema em que os exemplos não puderam ser importados individualmente no pacote de Exemplos do MRTK #10216
  • Adicionada uma documentação ausente de BoundsControl para algumas propriedades #10346
  • Correção de um bug em que InteractableOnClickReceiver não pôde ser adicionado a um objeto de jogo com um componente com capacidade de interação #10341

Novidades na versão 2.7.2

Corrigido um problema de dependência de pacote UPM

Havia um problema com os pacotes UPM do MRTK 2.7.1 em que as dependências não eram configuradas corretamente. O problema fazia com que a Ferramenta de Recursos de Realidade Misturada não importasse adequadamente os pacotes do MRTK 2.7.1. Agora o problema está resolvido na versão 2.7.2. Não houve alteração de código nesta versão em comparação com a 2.7.1.

Novidades na versão 2.7.1

Mostrar versão

O menu Mixed Reality Toolkit (Realidade Misturada > Kit de ferramentas) agora contém uma entrada Show version... (Mostrar versão...) que examina o pacote do Kit de Ferramentas de Realidade Misturada Foundation para determinar a versão do MRTK que está sendo usada pelo projeto.

Mostrar menu de versão

Caixa de diálogo de versão do MRTK

Observação

Se o MRTK for clonado do repositório GitHub, as informações de versão não serão definidas.

Impossível determinar a versão

Lista de autores

A partir do MRTK 2.7.1, o arquivo com a lista de autores é incluído no pacote do Kit de Ferramentas de Realidade Misturada Foundation.

Configuração integrada do projeto OpenXR no fluxo de configuração do Configurador

Do MRTK 2.7.1 em diante, os usuários do plug-in OpenXR de Realidade Misturada receberão instruções sobre como configurar esse plug-in com o MRTK. Há uma opção para que os usuários que visam ao HoloLens 2 apliquem automaticamente as configurações recomendadas.

Janela do Configurador com instruções de configuração do OpenXR

Alterações e correções de bugs importantes

  • Unity Joystick Manager marcado como compatível no pipeline do SDK de XR #9954, #9994
  • Adicionadas verificações ao código inspetor interativo para evitar erros nulos #9943
  • Adicionar provedor de malha OpenXR à cena de exemplo do sombreador de pulso #9902
  • Restaurar o perfil de física manual para a cena de exemplo #9915
  • Algumas limpezas nos scripts HandConstraintHandConstraint
  • Correção de alguns bugs que afetavam a criação e a clonagem de perfis #9982

Novidades na versão 2.7.0

Agora o OpenXR é oficialmente compatível com o MRTK

À medida que os novos plug-ins do OpenXR estão se tornando cada vez mais maduros, o MRTK agora é oficialmente compatível com o OpenXR. Em comparação com as versões anteriores, adicionamos os seguintes recursos aos projetos que usam o OpenXR:

Se o seu alvo for o HoloLens 2 ou os headsets do Windows Mixed Reality via OpenXR, instale/atualize para o plug-in OpenXR de Realidade Misturada versão 0.9.5 ou mais recente por meio da Ferramenta de Recursos de Realidade Misturada; caso contrário, você poderá perder algumas das melhorias acima.

Provedores de Dados de XR Herdados e do SDK de XR agora podem ser usados dentro do mesmo perfil

Os provedores de dados agora também só serão carregados quando o pipeline apropriado estiver selecionado, permitindo que os provedores de dados de XR Herdados e do SDK de XR coexistam dentro do mesmo perfil. Para acomodar isso, os Provedores de Dados de XR Herdados e do SDK de XR agora são organizados em guias diferentes dentro da exibição de perfil, ajudando os usuários a determinar se estão com o perfil correto para o pipeline de XR visado por eles.

Os provedores de dados de XR Herdados e do SDK de XR agora podem ser unificados em um único perfil

Para acomodar isso, os provedores de dados nulos agora não serão mais carregados e exibidos no inspetor de perfil. Os usuários podem alternar Show null data providers in the profile inspector em Show null data providers in the profile inspector para depurar comportamentos inesperados com provedores de dados ausentes.

Os provedores de dados nulos agora ficam ocultos por padrãoAlternar para mostrar provedores de dados nulos no inspetor de perfil

Adicionadas Configurações de Experiência e um comportamento associado ao Conteúdo da Cena de Realidade Misturada

Agora, os usuários podem definir Configurações de Experiência, o que permitirá ao MRTK exibir o Conteúdo da Cena de Realidade Misturada adequadamente com base na experiência visada.

Se as configurações anteriores de Escala de Experiência do usuário não corresponderem ao novo Perfil de Configurações de Experiência, ele será solicitado a corrigi-lo no inspetor.

Migração de escala da experiência

O Configurador Reprojetado agora orienta o usuário ao longo do processo de configuração

O novo configurador do MRTK fornece aos usuários orientações passo a passo para configurar corretamente o projeto para desenvolvimento e uso de XR com o MRTK. Ele aborda a seleção do pipeline de XR, a obtenção dos plug-ins específicos da plataforma, a importação do TextMeshPro, a exibição dos exemplos (ao usar o UPM) e outras configurações recomendadas incluídas anteriormente no projeto.

Configurador mostrando a lista de pipelines

Hotspot de teletransporte graduado

Um novo componente de hotspot de teletransporte foi graduado. Você poderá adicionar um hotspot de teletransporte ao seu GameObject para garantir que o usuário esteja em uma determinada posição e orientação quando se teletransportar para aquele local.

Exemplo de Hotspot de Teletransporte

Mudança de nível do recurso de espera

O recurso de espera e o exemplo saíram do nível experimental. Novos exemplos de botões volumétricos no estilo do HoloLens 2 foram incluídos na cena de exemplo.

Destaque do recurso de espera

Adicionado suporte para Módulos do Leap Motion no Unity versão 4.6.0, 4.7.0, 4.7.1 e 4.8.0

O suporte para as últimas versões dos Módulos do Leap Motion no Unity agora são compatíveis com o MRTK 2.7.0. Confira Como configurar o MRTK para o Leap Motion a fim de obter mais informações.

Agradecemos a @jackyangzzh por contribuir com a nova cena LeapMotionOrientationExample!

Os eventos de fala direcionados gerados não são mais restritos aos ponteiros de foco

Anteriormente, os eventos de fala direcionados só podiam ser gerados em objetos focados com o ponteiro de foco. Agora, os objetos poderão receber eventos de fala se forem focados com qualquer ponteiro.

Eventos de Fala com Ponteiros Distantes

Efetuada a portabilidade de TextToSpeech do HTK para o MRTK

Agora, o apreciado script TextToSpeech está finalmente disponível no MRTK para ajudar você a gerar fala de texto na plataforma UWP usando SpeechSynthesizer. Também foi adicionada uma cena de exemplo para demonstrar o recurso.

Suporte para o modelo de controlador de movimentos fornecido pelo sistema no OpenXR

Adicionado suporte, tanto no editor quanto no runtime, para o modelo de controlador de movimentos fornecido pelo sistema no OpenXR.

Janela do editor mostrando dois modelos de controlador de movimentos

Suporte para malha manual articulada do HoloLens 2 no OpenXR

A malha manual em execução no dispositivo em uma cena de exemplo do MRTK

Suporte para controladores táteis no WMR herdado, no Plug-in de XR do Windows e no OpenXR

Adicionado suporte para controladores táteis no WMR herdado, no Plug-in de XR do Windows e no OpenXR. #9735

Suporte para acompanhamento ocular no Plug-in de XR do Windows

Adicionado suporte para o foco ocular ao usar as versões mínimas do Plug-in de XR do Windows de 2.7.0 (Unity 2019), 4.4.2 (Unity 2020) e 5.2.2 (Unity 2021). #9609

Alterações e correções de bugs importantes

  • A detecção do gesto de pinçagem tornou-se mais suave. Agora está mais difícil soltar acidentalmente o gesto de pinçagem. #9576
  • Os objetos com o componente Manipulador de Objetos agora mantêm consistentemente a velocidade na versão quando o sinalizador está definido. #9733
  • Agora, o deslocamento para trás verifica se há um piso, ajudando a evitar situações em que a câmera era deslocada para dentro do ambiente ou do local em que o usuário ficava flutuando no espaço vazio. #9697
  • IsNearObject agora é uma propriedade virtual, que permite mais flexibilidade ao estender o ponteiro de esfera ou de cutucada. #9803
  • Agora os botões exibem a palavra-chave apropriada ao mostrar o comando de fala disponível. #9824
  • Os Controladores Oculus agora usam seu próprio visualizador autônomo, impedindo que a visualização do MRTK entre em conflito com a visualização do Pacote de Integração do Oculus. #9589
  • Os scripts relacionados ao teclado foram alterados para se alinharem ao comportamento nas últimas versões do Unity (2019.4.25 e posterior e 2020.3.2 e posterior). Desde o lançamento, ainda há um bug no preenchimento automático e um bug no campo de entrada TMP (ambos são externos ao MRTK) que impactam o HoloLens. Para obter mais informações, confira #9056 e #9724.
  • Melhorado o desempenho da coleção de objetos de rolagem. Também foi corrigido um problema que fazia com que o GameObject na coleção perdesse material ao ser duplicado. #9813, #9718
  • No script de demonstração para Compreensão da Cena, adicionada a função GetSceneObjectsOfType para recuperar todos os objetos de um determinado tipo na cena em observação. #9524, #9744
  • Na ferramenta de build da linha de comando, somente as cenas especificadas pelos sinalizadores sceneList ou sceneListFile (quando qualquer sinalizador estiver presente) serão incluídas no build. #9695
  • Na ferramenta de build, há uma nova opção para especificar um caminho para nuget.exe e usá-lo para executar a restauração do pacote em vez de usar msbuild (a opção padrão). #9556
  • Correção do problema em que usar o Plug-in de XR do Windows podia resultar em junções manuais obsoletas e malhas manuais duplas. #9890
  • Corrigido o problema em que o uso do recurso de controle remoto automático do Plug-in de XR do Windows levava à perda de entradas e interações. #9868
  • Correção de problema em que o BuildDeployWindow tentava consultar uma chave de registro inválida para o caminho do SDK do Windows. #9664
  • Os importadores de glTF do MRTK agora são opcionais. Se houver vários importadores de glTF presentes, os do MRTK poderão ser desabilitados adicionando MRTK_GLTF_IMPORTER_OFF aos símbolos de definição de script personalizado. #9658
  • Corrigido o problema em que os controladores Knuckles do OpenVR não estavam sendo detectados corretamente. #9881
  • Reduza o número de alocações por quadro ao visualizar a malha manual #9756
  • Adicionado um item de menu para iniciar o pacote de exemplos do MRTK (no Gerenciador de Pacotes do Unity) para facilitar a importação de exemplos #9798
  • Reduzido o número de avisos sobre o tempo de carga ao usar o Unity 2020.3.
  • Adicionada a documentação de recurso da Janela de Build: visite a página

Problemas conhecidos

Falta um arquivo asmdef nas demonstrações de áudio (pacote UPM)

Ao importar o MRTK por meio da Ferramenta de Recursos de Realidade Misturada, os exemplos e as demonstrações são adicionados ao projeto usando a interface do usuário do Gerenciador de Pacotes do Unity. Após importar as demonstrações de áudio, a cena WindowsMicrophoneStreamDemo.unity não se comportará corretamente. Isso é resultado da falta de um arquivo. asmdef no exemplo.

Para contornar esse problema, execute as seguintes etapas:

  • Copie Library/PackageCache/com.microsoft.mixedreality.toolkit.examples@[...]/MRTK.Examples.asmdef para a pasta "Assets/Samples/Mixed Reality Toolkit Examples"
  • Renomeie o arquivo copiado para Exemplos
  • Abra o arquivo Exemplos
  • Na caixa Nome, substitua o conteúdo por Exemplos
  • Clique em Aplicar
  • Criar e implantar

Esse problema será corrigido em uma versão futura do MRTK.

A janela de build do MRTK aciona a caixa de diálogo indefinida "Importando ativos" no Unity 2020.3

Há um problema conhecido com a janela de build do MRTK no Unity 2020.3 que faz com que a caixa de diálogo "Importando ativos" não seja concluída após executar com sucesso um build da UWP. Esse problema está sendo investigado em parceria com o Unity.

Avisos do Renderizador de Telas do Text Mesh Pro no Unity 2020

O seguinte aviso é registrado na maioria das cenas de exemplo do MRTK ao usar o Unity 2020:

Please remove the `CanvasRenderer` component from the [TextMeshPro] GameObject as this component is no longer necessary.

Avisos do Renderizador de Telas foram adicionados ao TextMeshPro versão 3.0.3. Esses avisos não têm impacto sobre as cenas de exemplo do MRTK e podem ser apagados do console. Confira o problema 9811 para obter mais detalhes.