Neste tutorial veremos o obxecto GUI de TextMesh Pro. TextMesh Pro úsase xunto con GameObjects normais e colócase nunha escena no espazo 3D. É ideal para aplicacións XR onde o texto adoita formar parte da escena existente e non se fai referencia nos menús 2D.
TextMesh Pro é a solución de texto definitiva para Unity. É o substituto perfecto para o texto da interface de usuario de Unity e a antiga malla de texto. É potente e fácil de usar e usa texto avanzadoRenderingtécnicas así como una gama de sombreadores personalizados. Ofrece melloras significativas na calidade visual e ofrece aos usuarios unha incrible flexibilidade no estilo e textura do texto. TextMesh Pro ofrece un control mellorado sobre o formato e o deseño do texto con funcións como o espazo de caracteres, palabras, liñas e parágrafos, kerning, texto xustificado, ligazóns, máis de 30 etiquetas de texto enriquecido dispoñibles, compatibilidade con fontes múltiples e sprites, estilos personalizados e moito máis. Boa actuación. Dado que a xeometría creada por TextMesh Pro usa dous triángulos por carácter, do mesmo xeito que os compoñentes de texto de Unity, non hai un custo de rendemento adicional para esta calidade visual e flexibilidade melloradas. Neste tutorial veremos o obxecto TextMesh Pro GUI. TextMesh Pro úsase xunto con GameObjects habituais e colócase nunha escena no espazo 3D. É ideal para aplicacións XR onde o texto adoita formar parte da escena existente e non se fai referencia nos menús 2D.
Introdución a TextMesh Pro
TextMesh Pro é un sistema sinxelo de usar para texto de alta calidade. Ten moitas opcións para amosar e formatar texto e é un xeito sinxelo de engadir un toque profesional á interface de usuario dun proxecto. O artigo mostra como se poden preparar fontes para o seu uso en TextMesh Pro, crear novos obxectos TextMesh Pro e modificalos.
1. Crea un obxecto de texto TextMesh Pro:
1. Seleccione GameObject na lista despregábel ou co botón dereito do rato na ventá de xerarquía UI> TextMesh Pro - Text.
2. Se está a usar TextMesh Pro (TMP) por primeira vez nun proxecto, Unity ofrece a importación dos paquetes TMP Essentials e Exemplos e Extras (se aínda non importou o paquete TextMesh Pro Asset). Faga clic en Importar TMP Essentials e pecha a xanela.
TMP tamén se pode importar como un paquete de activos incluído cando se crea o proxecto.
3. Se o texto non é visible na pestana "Escena", resáltea na xerarquía e prema a tecla "F" do teclado mentres o punteiro do rato está na vista de escena.
4. Faga clic no bloqueo da esquina superior dereita do Inspector para levar o foco ao obxecto TextMesh Pro Text.
5. Estableza o tamaño da área de texto en 300 x 100 nos axustes para a transformación do rectángulo.
A transformación do rectángulo controla a posición e o tamaño da área de texto.
6. Habilite o axuste de texto e o desbordamento na sección Configuración do tipo de letra do inspector UGUI de Text Mesh Pro.
TextMesh Pro ofrece unha variedade de opcións de deseño e visualización.
7. Proba a cambiar a configuración predeterminada do material e varias opcións de letra. Pode configurar a cor da fonte cambiando a cor do vértice ou na configuración do material. Fai clic no triángulo do Material na parte inferior do Inspector para ver a configuración do tipo de letra, contorno e subxacente (sombra).
Faga clic nas barras grises fóra das dúas caixas de verificación para amosar ou ocultar as propiedades dese axuste de letra en particular.
8. Marque a caixa de verificación da metade dereita da sección "Esquema" e faga clic en calquera outro lugar da sección para abrir a configuración.
9. Axuste a cor e o grosor do texto.
Engadir un esquema ao seu texto pode facelo máis fácil de ver en ambientes ocupados.
10. Proba a cambiar a configuración de subxacente e primeiro plano. Fai clic na engrenaxe na esquina superior dereita e selecciona Restablecer para volver á configuración predeterminada.
Neste menú pode volver á configuración orixinal do material, transferir propiedades do material e crear predefinidos de material.
11. Proba cos axustes predefinidos do material da fonte e axuste a configuración do tipo de letra como queira.
TextMesh Pro inclúe tres preajustes de material que pode usar para examinar rapidamente os efectos de diferentes axustes.
2. Acceso a obxectos TextMeshPro no código:
Aquí usamos o espazo de nomes do sistema no noso script para acceder ás funcións de data e hora. TextMesh Pro só require o espazo de nomes TMPro.
1. Na lista despregable "GameObject", seleccione a opción "Crear baleiro" e nomee "ClockDisplay".
2. Crea un novo script chamado "Reloxo" e úneo a ClockDisplay. Faga dobre clic en Reloxo na xanela do proxecto para abrir Visual Studio ou MonoDevelop. Elimina o método Start () porque non o usaremos para este exercicio.
3. Introduza o seguinte da liña 4:
usando TMPro;
usando Sistema;
4. Introduza o seguinte na liña 8:
público TMP_Text reloxoTexto;
5. Introduza o seguinte en Actualización na liña 12:
clockText.text = DateTime.Now.ToString();
6. O guión do reloxo xa está completo.
Garda os cambios e volve a Unity.

O guión do reloxo rematado:
7. Arrastre o obxecto TextMesh Pro que creou no exercicio 1 á área etiquetada como Texto de reloxo no Inspector de reloxo.
8. Preme Reproducir para comezar a demostración. A data e hora actuais móstranse coa configuración do material especificada no TextMesh Pro Text Inspector.
9. Cando remates, sae do modo de reprodución.
3. Crea unha fonte para usar con TextMesh Pro
1. Se aínda non tes un cartafol de recursos Activos Se tes un, crea un e dentro dese cartafol crea un cartafol chamado "Fonts". Garda o recurso de fonte creado aquí.
2. Arrastre un ficheiro de tipo de letra (OpenType ou TrueType) ao cartafol Recursos.
3. Na lista despregable Window, seleccione TextMesh Pro> Font Asset Creator.
4. Fai clic no círculo situado ao lado do espazo de orixe da fonte e selecciona a túa fonte.
Tamén pode arrastrar un tipo de letra directamente desde a vista do proxecto á rañura. Os recursos de tipos de letra pódense reutilizar en proxectos.
5. Fai clic en Xerar Atlas de fontes.
6. Fai clic en Gardar.
7. Desprácese ata Recursos> Recursos> Tipos de letra, nomee a súa fonte e faga clic en Gardar.
8. Se aínda non aparece no Inspector, faga clic no obxecto TextMesh Pro Text na xanela Xerarquía para resaltalo.
9. Fai clic no círculo ao lado de Recurso de letra e selecciona o recurso de letra que acabas de crear.
10. Active o modo de reprodución para ver o seu novo activo de letra en acción.
11. Saia do modo de reprodución.
TextMesh Pro é moi versátil. Pode usarse para calquera situación que precise texto, incluídos xogos, aplicacións gráficas, vídeos e moito máis.
TextMesh Pro: conceptos básicos
Neste tutorial veremos os obxectos GUI de TextMesh Pro e TextMesh Pro. TextMesh Pro úsase xunto con GameObjects normais e colócase nunha escena no espazo 3D. É ideal para aplicacións XR onde o texto adoita formar parte da escena existente e non se fai referencia nos menús 2D. O compoñente UGUI de TextMesh Pro funciona co sistema de lona e está destinado a substituír e ampliar o compoñente de texto da UI con funcións melloradas.
Os tempos escuros
Todos os compoñentes de texto de Unity usan texturas para almacenar glifos: a representación visual dos personaxes. Os compoñentes de texto máis antigos (TextMesh e UI-Text) usan mapas de bits rasterizados para representar estes glifos. TextMesh Pro utiliza principalmente campos de distancia asinados (SDF) para aproximar a forma dos caracteres antes de convertelos nunha textura. Imaxina que estamos intentando representar unha forma nunha cuadrícula de 10x10 píxeles sen facernos demasiado técnicos. Nunha textura de mapa de bits, cada posición da grade posiblemente conteña un píxel branco, gris ou negro, dependendo da información de cor nesa posición en particular. Nunha textura SDF, cada posición da cuadrícula contería unha distancia á seguinte característica da forma, o que resultaría nunha mellor representación da forma orixinal dentro dunha cuadrícula fixa de píxeles.
Se un sombreador de mapa de bits debuxa esta forma 1: 1, é simplemente unha busca de texturas para a posición de píxel especificada. Se contén un píxel, debuxarase; Se non, non é así. As texturas conteñen un número finito de píxeles. Ao achegar ou reducir o zoom, o sombreador debe axustar o tamaño de cada píxel en relación coa resolución de visualización do dispositivo. A forma resultante vólvese bloque, borrosa ou demasiado nítida. Un sombreador SDF fai a mesma procura de textura, pero esta vez devolve un exemplo de distancia. Dependendo da distancia, o sombreado debuxa un píxel completamente opaco ou un mixto alfa. Ao achegar ou afastar, o sombreador interpola entre exemplos de distancia para que as formas (texto) poidan representarse de forma limpa en Unity independentemente da resolución, zoom e escala da pantalla. Para render o texto do mapa de bits de forma limpa, os glifos deben debuxarse nunha proporción de 1: 1, debendo volver a escanearse cada glifo para cada tamaño de letra. Non obstante, as texturas SDF só precisan conter unha única representación de cada glifo, o que resulta nun uso moito máis eficiente do espazo da textura. As seguintes imaxes mostran as maiores diferenzas visuais entre o sistema antigo e o novo. 
O bo destes exemplos é que, a pesar da calidade de renderización superior de SDF, tanto o SDF como o texto rasterizado usan o mesmo número de polígonos (quads) para renderizar o texto. Isto significa que o rendemento de TextMesh Pro non se verá afectado. Engadiremos un obxecto GUI de TextMesh Pro e un de GUI de TextMesh Pro á nosa escena e veremos cada obxecto no inspector.
Engadindo TextMesh Pro aos teus GameObjects


Ambos métodos crean un novo GameObject con catro novos compoñentes:
Transformación recta: Un contedor para o seu obxecto de texto similar aos usados en Microsoft Office ou Photoshop. Podes cambiar o tamaño, a posición e a rotación do teu recipiente.
Representador de malla: Representa e coloca o teu texto nun espazo 3D.
TextMeshPro - Texto: O Compoñente principal no que podes escribir texto, cambiar o elemento de letra, o material predefinido, o tamaño da letra, cambiar os estilos de parágrafo, activar cores / degradados e seleccionar outros elementos.
Opcións de formato e estilo: Intenta xogar con el.
Presintonización de material: O material utilizado polo recurso de fonte referenciado no compoñente TextMeshPro. Os materiais definen o aspecto dos teus GameObjects. Aquí tamén podes definir o aspecto do teu texto e atopar opcións que van dende contornos a brillantes, cartabóns, texturas e moito máis.
Configuración adicional: Esta configuración permítelle, entre outras opcións, axustar as marxes do seu texto, asignar recursos sprite e personalizar en que capa aparece o texto.
Antes de introducir texto, asegúrese de que o axuste e o desbordamento están habilitados no compoñente TextMesh Pro. Estas opcións restrinxen o texto ao obxecto de transformación recta.
O tamaño automático adapta dinámicamente o tamaño da mostra da súa fonte á transformación do rectángulo. Teña coidado ao usar o tamaño automático. Se o activas, obterás un tamaño de mostra óptimo (por exemplo, para aplicacións móbiles onde pode ser difícil predicir a resolución de destino de cada dispositivo). Non obstante, debería desactivarse unha vez que decidiu un bo tamaño para evitar un rendemento innecesario.
Engadindo TextMesh Pro á súa interface de usuario

Engadir TextMeshPro a unha interface de usuario é un proceso moi similar: navega na xerarquía ata UI> Texto - TextMeshPro. Coa excepción do renderizado de lona, é idéntico á versión anterior. Isto creará un novo Canvas GameObject cun TextMesh Pro GameObject. A crianza significa que o texto móvese ao longo do lenzo. Os compoñentes da interface de usuario TextMesh Pro represéntanse empregando este obxecto de lona no canto dun renderizado de Unity Mesh.
Publicado orixinalmente o 2020/03/30 ás 12:45:25.
