Texto 3D

Introducción

En un proyecto, puede haber momentos en los que se necesite crear texto como parte de una escena 3D y no solo en la HUD. Godot proporciona dos métodos para hacer esto: el nodo Label3D y la malla de texto para un nodo MeshInstance.

Esta página no cubre cómo mostrar una escena de GUI en un entorno 3D. Para obtener información sobre cómo hacerlo, consulta este proyecto de demostración en este enlace.

Etiqueta 3D

../../_images/label_3d.png

Label3D se comporta como un nodo de etiqueta, pero en un espacio 3D. A diferencia del nodo de etiqueta, este no puede heredar las propiedades de un tema de GUI. Sin embargo, su apariencia sigue siendo personalizable y utiliza los mismos nodos de control de sub-recursos DynamicFont y BitmapFont.

Label3D tiene una interacción mínima con un entorno 3D. Puede ser iluminado y sombreado por fuentes de luz si se habilita la bandera de sombreado, pero no proyectará una sombra, incluso si se activa la opción de proyección de sombras en la configuración de GeometryInstance3D de los nodos. Esto se debe a que el nodo es una malla cuadrangular (un glifo por cuadrado) con texturas transparentes y tiene las mismas limitaciones que Sprite3D. Consulta esta página para obtener más información.

Malla de texto

../../_images/text_mesh.png

Las mallas de texto tienen similitudes con Label3D. Muestran texto en una escena 3D y utilizan el mismo sub-recurso DynamicFont. Sin embargo, el texto es en 3D y tiene las propiedades de una malla. Una malla de texto proyecta sombras sobre el entorno y se le puede aplicar un material. Aquí tienes un ejemplo de una textura y cómo se aplica a la malla.

../../_images/text_mesh_texture.png ../../_images/text_mesh_textured.png

Existen dos limitaciones para las mallas de texto. No pueden utilizar fuentes de mapa de bits (bitmap fonts) ni fuentes con auto-intersección.