Texto no Unity

O texto é um dos componentes mais importantes em aplicativos holográficos. Para exibir texto no Unity, há três tipos de componentes de texto que você pode usar: Texto da interface do usuário, Malha de Texto 3D e Text Mesh Pro. Por padrão, o Texto da Interface do Usuário e a Malha de Texto 3D aparecem desfocados e são muito grandes. Alterar algumas variáveis resulta em um texto mais nítido e de maior qualidade com um tamanho gerenciável no HoloLens. Você pode obter melhor qualidade de renderização aplicando um fator de dimensionamento para obter dimensões adequadas ao usar os componentes Texto da Interface do Usuário e Malha de Texto 3D.

Como obter um texto afiado e bonito
Texto padrão desfocado no Unity

Trabalhando com texto 3D do Unity (malha de texto) e texto da interface do usuário

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

Trabalhando com fontes no Unity
O texto 3D padrão do Unity (Malha de Texto) ocupa uma unidade do Unity, que é de 1 metro


A maioria dos designers visuais usa pontos para definir tamanhos de fonte no mundo real. Há cerca de 2835 pontos (2.834,645666399962) em 1 metro. Com base na conversão do sistema de pontos em 1 metro e no tamanho padrão da fonte da Malha de Texto do Unity de 13, a matemática simples de 13 dividida por 2835 é igual a 0,0046 (0,004586111116 para ser exata), o que fornece uma boa escala padrão para começar (alguns podem desejar arredondar para 0,005). Dimensionar o objeto de texto ou contêiner para esses valores não permitirá apenas a conversão 1:1 de tamanhos de fonte em um programa de design, mas também fornecerá um padrão para que você possa manter a consistência durante toda a sua experiência.

Dimensionamento de valores para texto 3D do Unity e texto da interface do usuário
Dimensionamento de valores para texto 3D do Unity e texto da interface do usuário


Malha de Texto 3D do Unity com valores otimizados
Malha de Texto 3D do Unity com valores otimizados


Ao adicionar uma interface do usuário ou um elemento de texto 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 em interface do usuário para 0,00046 (0,000458611116 para ser exato) ou 0,0005 para o valor arredondado.

Texto da interface do usuário do Unity com valores otimizados
Texto da interface do usuário do Unity com valores otimizados


Observação

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.

Trabalhando com o Text Mesh Pro

Com o Text Mesh Pro do Unity, você pode proteger a qualidade de renderização de texto. Ele dá suporte a estruturas de texto nítidas, independentemente da distância que usa a técnica SDF (Campo de Distância Assinada ). Usando o mesmo método de cálculo usado acima para a Malha de Texto 3D e o Texto da Interface do Usuário, podemos encontrar os valores de dimensionamento adequados a serem usados com pontos tipográficos convencionais. Como a fonte padrão 3D Text Mesh Pro com o tamanho de 36 tem um tamanho delimitador de 2,5 unidades do Unity (2,5 m), podemos usar um valor de dimensionamento de 0,005 para obter o tamanho do ponto. O Text Mesh Pro no menu da interface do usuário tem um tamanho delimitação padrão de 25 unidades do Unity (25 m). Isso nos dá 0,0005 para o valor de dimensionamento.

Dimensionamento de valores para o texto e a interface do usuário do Unity 3D
Dimensionamento de valores para o texto e a interface do usuário do Unity 3D

Como você pode esperar, os tamanhos de tipo que usamos em um computador ou um dispositivo tablet (normalmente entre 12 a 32pt) parecem pequenos a uma distância de 2 metros. Depende das características de cada fonte, mas, em geral, o ângulo de exibição mínimo recomendado e a altura da fonte para legibilidade são em torno de 0,35°-0,4°/12,21-13,97 mm com base em nossos estudos de pesquisa de usuários. É cerca de 35-40 pt com o fator de dimensionamento introduzido acima.

Para a interação próxima a 0,45 m (45 cm), o ângulo de exibição da fonte legível mínima e a altura são 0,4°-0,5° / 3,14–3,9mm. Trata-se de 9-12 pt com o fator de dimensionamento introduzido acima.

Intervalo de interação próximo e distanteConteúdo em intervalo de interação próximo e distante

O tamanho mínimo da fonte legível

Distância Ângulo de exibição Altura do texto Tamanho da fonte
45 cm (distância de manipulação direta) 0.4°-0.5° 3.14–3.9mm 8.9–11.13pt
2 m 0.35°-0.4° 12.21–13.97mm 34.63-39.58 pt

O tamanho da fonte confortavelmente legível

Distância Ângulo de exibição Altura do texto Tamanho da fonte
45 cm (distância de manipulação direta) 0.65°-0.8° 5.1-6.3 mm 14.47-17.8 pt
2 m 0.6°-0.75° 20,9-26,2 mm 59.4-74.2 pt

A interface do usuário do Segoe (a fonte padrão para Windows) funciona bem na maioria dos casos. No entanto, evite usar famílias de fontes leves ou semi-leves em tamanho pequeno, pois traços verticais finos vibrarão e isso prejudicará a legibilidade. Fontes modernas com espessura de traço suficiente funcionam bem. Por exemplo, Helvetica e Arial parecem lindas e são legíveis no HoloLens com pesos regulares ou ousados.

Exibindoa distância, o ângulo e a altura do texto da Exibição de Ângulo

Texto com Realidade Misturada Toolkit v2

Qualidade de renderização de texto afiado com dimensão adequada

Com base nesses fatores de escala, criamos pré-fabricados de texto com Texto da Interface do Usuário e Malha de Texto 3D. Os desenvolvedores podem usar esses pré-fabricados para obter texto afiado e tamanho de fonte consistente.

Qualidade de renderização de texto afiado com dimensão adequada
Qualidade de renderização de texto afiado com dimensão adequada

Sombreador com suporte de oclusão

O material de fonte padrão do Unity não dá suporte à oclusão. Por isso, você verá o texto por trás dos objetos por padrão. Incluímos um sombreador simples que dá suporte à oclusão. A imagem abaixo mostra o texto com material de fonte padrão (à esquerda) e o texto com oclusão adequada (à direita).

Sombreador com suporte de oclusão
Sombreador com suporte de oclusão

Próximo ponto de verificação de desenvolvimento

Se você estiver acompanhando a jornada de desenvolvimento do Unity que estabelecemos, está no meio da exploração dos principais blocos de construção do MRTK. Deste ponto, você pode prosseguir para o próximo bloco de construção:

Ou vá diretamente para as funcionalidades e APIs da plataforma de Realidade Misturada:

Você sempre pode voltar para os pontos de verificação de desenvolvimento do Unity a qualquer momento.

Confira também