Pré-fabricado de texto — MRTK2

Esses pré-fabricados são otimizados para a qualidade de renderização em Windows Mixed Reality. Para obter mais informações, leia a diretriz Texto no Unity no Centro de Desenvolvimento do Microsoft Windows.

Pré-fabricados

3DTextPrefab

Pré-fabricado da Malha de Texto 3D (Ativos/MRTK/SDK/StandardAssets/Prefabs/Text) com fator de dimensionamento otimizado a uma distância de 2 metros. (Leia as instruções abaixo)

UITextPrefab

Pré-fabricado da Malha de Texto da Interface do Usuário (Ativos/MRTK/SDK/StandardAssets/Prefabs/Text) com fator de dimensionamento otimizado a uma distância de 2 metros. (Leia as instruções abaixo)

Fontes

Fontes de software livre (Assets/MRTK/Core/StandardAssets/Fonts) incluídas no Realidade Misturada Toolkit.

Importante

O pré-fabricado de texto usa a fonte código aberto 'Selawik'. Para usar o Pré-fabricado de Texto com uma fonte diferente, importe o arquivo de fonte e siga as instruções abaixo. O exemplo abaixo mostra como usar a fonte 'Segoe UI' com o Prefab de Texto.

Importando o arquivo de fonte da interface do usuário do Segoe

  1. Atribua textura de fonte ao material 3DTextSegoeUI.mat.

    Atribuindo textura de fonte

  2. No material 3DTextSegoeUI.mat, selecione o sombreador Custom/3DTextShader.shader.

    Atribuindo sombreador

  3. Atribua a fonte da interface do usuário do Segoe e o material 3DTextSegoeUI aos componentes de texto nos pré-fabricados.

    Atribuindo arquivo e material de fonte

Trabalhando com fontes no Unity

Ao adicionar um novo TextMesh 3D a uma cena no Unity, há dois problemas visualmente aparentes. Uma, a fonte aparece muito grande e duas, a fonte aparece muito desfocada. Também é interessante observar que o valor de Tamanho da Fonte padrão é definido como zero no Inspetor. Substituir esse valor zero por 13 não mostrará nenhuma diferença de tamanho, pois 13 é, na verdade, o valor padrão.

O Unity pressupõe que todos os novos elementos adicionados a uma cena sejam 1 Unidade do Unity em tamanho ou escala de transformação de 100%, que se traduz em cerca de 1 metro no HoloLens. No caso de fontes, a caixa delimitadora de um TextMesh 3D entra, por padrão, com cerca de 1 metro de altura.

Escala de fonte e tamanhos de fonte

A maioria dos designers visuais usa Pontos para definir tamanhos de fonte no mundo real, bem como seus programas de design. Há cerca de 2835 pontos (2.834,645666399962) em 1 metro. Com base na conversão do sistema de ponto em 1 metro e no Tamanho da Fonte TextMesh padrão do Unity de 13, a matemática simples de 13 dividida por 2835 é igual a 0,0046 (0,00458611116 para ser exata) fornece uma boa escala padrão para começar, embora alguns possam desejar arredondar para 0,005.

De qualquer forma, dimensionar o objeto text ou o contêiner para esses valores não só permitirá a conversão 1:1 de tamanhos de fonte de um programa de design, mas também fornecerá um padrão para manter a consistência em todo o aplicativo ou jogo.

Texto da interface do usuário

Ao adicionar uma interface do usuário ou um elemento Text baseado em tela a uma cena, a disparidade de tamanho ainda é maior. As diferenças nos dois tamanhos são de cerca de 1000%, o que levaria o fator de escala para componentes de Texto baseados na interface do usuário para 0,00046 (0,000458611116 para ser exato) ou 0,0005 para o valor arredondado.

Aviso de isenção de responsabilidade: o valor padrão de qualquer fonte pode ser afetado pelo tamanho da textura dessa fonte ou como a fonte foi importada para o Unity. Esses testes foram executados com base na fonte Arial padrão no Unity, bem como em uma outra fonte importada.

Tamanho da fonte com fatores de dimensionamento

Text3DSelawik.mat

Material para 3DTextPrefab com suporte para oclusão. Requer 3DTextShader.shader

Material de fonte padrão versus material 3DTextSegoeUI

Text3DShader.shader

Sombreador para 3DTextPrefab com suporte para oclusão.