Configurar observadores de malha para o dispositivo – MRTK2
Este guia explica como configurar o Observador de Malha Espacial fora de caixa no MRTK que suporta a plataforma Windows Mixed Reality (por exemplo, HoloLens). A implementação predefinida fornecida pelo Mixed Reality Toolkit é a classe WindowsMixedRealitySpatialMeshObserver. Muitas das propriedades neste artigo aplicam-se a outras implementações personalizadas do Observador.
Definições do perfil
Os dois itens seguintes têm de ser definidos primeiro ao configurar um perfil do Spatial Mesh Observer para o sistema de Sensibilização Espacial.
- A implementação do tipo de observador concreto
- lista de plataformas suportadas para executar este observador
Nota
Todos os observadores têm de expandir a interface IMixedRealitySpatialAwarenessObserver .
Definições gerais
Comportamento de Arranque
O comportamento de arranque especifica se o observador começará a ser executado pela primeira vez. As duas opções são:
- Início Automático – o valor predefinido pelo qual o observador iniciará a operação após a inicialização
- Início Manual - O Observador aguardará para ser direcionado para iniciar
Se utilizar o Início Manual, é necessário retomá-los e suspendê-los no runtime através de código.
Intervalo de Atualização
O tempo, em segundos, entre pedidos à plataforma para atualizar dados de malha espacial. Os valores típicos caem no intervalo de 0,1 e 5,0 segundos.
É Observador Estacionário
Indica se o observador deve ou não permanecer estacionário ou mover e atualizar com o utilizador. Se for verdade, a Forma do Observador com volume definido pelas Extensões de Observação permanecerá na origem no arranque. Se for falso, o espaço do Observador seguirá a cabeça do utilizador como a origem da forma.
Não haverá dados de malha calculados para qualquer área física fora do espaço do Observador, conforme definido por estas propriedades: É Observador Estacionário, Forma do Observador*, e Extensões de Observação.
Forma do Observador
A forma de observador define o tipo de volume que o observador de malha utilizará ao observar malhas. As opções suportadas são:
- Cubo Alinhado do Eixo – forma retangular que se mantém alinhada com os eixos do sistema de coordenadas mundial, conforme determinado no arranque da aplicação.
- Cubo Alinhado pelo Utilizador – forma retangular que roda para se alinhar com o sistema de coordenadas local dos utilizadores.
- Sphere – um volume esférico com um centro na origem espacial mundial. O valor X da propriedade Extensões de Observação será utilizado como o raio da esfera.
Extensões de Observação
As extensões de observação definem a distância do ponto de observação que as malhas serão observadas.
Definições de física
Camada física
A camada física em que os objetos de malha espacial serão colocados para interagir com os sistemas Unity Physics e RayCast.
Nota
Mixed Reality Toolkit reserva a camada 31 por predefinição para utilização por observadores de Sensibilização Espacial.
Recalcular Normais
Especifica se o observador de malha irá ou não recalcular os normais da malha após a observação. Esta definição está disponível para garantir que as aplicações recebem malhas que contêm dados normais válidos em plataformas que não as devolvem com malhas.
Nível de definições de detalhes
Nível de Detalhe
Especifica o nível de detalhe (LOD) dos dados de malha espacial. Os valores atualmente definidos são Gross, Fino e Personalizado.
Grossar - Coloca um impacto menor no desempenho da aplicação e é uma excelente opção para a navegação/localização do plano.
Definição média - equilibrada muitas vezes útil para experiências que analisam continuamente o ambiente para obter características grandes, pisos e paredes, bem como detalhes de oclusão.
Fine - Geralmente, exato um impacto mais elevado no desempenho da aplicação e é uma ótima opção para malhas de oclusão.
Personalizado – requer que a aplicação especifique a propriedade Triângulos/Medidor Cúbico e permite que as aplicações ajustem a precisão vs. impacto de desempenho do observador de malha espacial.
Nota
Não é garantido que todos os valores Triângulos/Medidor Cúbico sejam respeitados por todas as plataformas. A experimentação e a criação de perfis são altamente recomendadas ao utilizar um LOD personalizado.
Triângulos por Medidor Cúbico
Válido ao utilizar a definição Personalizada para a propriedade Nível de Detalhe e especifica a densidade do triângulo para a malha espacial.
Definições de visualização
Opção de Apresentação
Especifica como as malhas espaciais devem ser apresentadas pelo observador. Os valores suportados são:
- Nenhum - O Observador não vai compor a malha
- Visível – os dados de malha estarão visíveis com o Material Visível
- Oclusão - Os dados de malha serão itens oclusos no local com o Material de Oclusão
Os Observadores Espaciais podem ser retomados/suspensos no runtime através de código.
Aviso
Definir a Opção de Apresentação como Nenhumanão impede o observador de ser executado. Se quiser parar todos os observadores, as aplicações terão de suspender todos os observadores através de CoreServices.SpatialAwareness.SuspendObservers()
Material Visível
Indica o material a utilizar ao visualizar a malha espacial.
Material de Oclusão
Indica o material a ser utilizado para fazer com que a malha espacial oclua hologramas.