Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

ImmediateMesh

Hereda: Mesh < Resource < RefCounted < Object

Malla optimizada para crear geometría manualmente.

Descripción

Un tipo de malla optimizado para crear geometría manualmente, similar al modo inmediato de OpenGL 1.x.

Aquí tienes un ejemplo de cómo generar una cara triangular:

var mesh = ImmediateMesh.new()
mesh.surface_begin(Mesh.PRIMITIVE_TRIANGLES)
mesh.surface_add_vertex(Vector3.LEFT)
mesh.surface_add_vertex(Vector3.FORWARD)
mesh.surface_add_vertex(Vector3.ZERO)
mesh.surface_end()

Nota: Generar geometrías complejas con ImmediateMesh es muy ineficiente. En su lugar, está diseñado para generar geometría simple que cambia a menudo.

Tutoriales

Métodos

void

clear_surfaces()

void

surface_add_vertex(vertex: Vector3)

void

surface_add_vertex_2d(vertex: Vector2)

void

surface_begin(primitive: PrimitiveType, material: Material = null)

void

surface_end()

void

surface_set_color(color: Color)

void

surface_set_normal(normal: Vector3)

void

surface_set_tangent(tangent: Plane)

void

surface_set_uv(uv: Vector2)

void

surface_set_uv2(uv2: Vector2)


Descripciones de Métodos

void clear_surfaces() 🔗

Despeja todas las superficies.


void surface_add_vertex(vertex: Vector3) 🔗

Añade un vértice 3D usando los atributos actuales previamente establecidos.


void surface_add_vertex_2d(vertex: Vector2) 🔗

Añade un vértice 2D usando los atributos actuales previamente establecidos.


void surface_begin(primitive: PrimitiveType, material: Material = null) 🔗

Inicia una nueva superficie.


void surface_end() 🔗

Finaliza y confirma la superficie actual. Ten en cuenta que la superficie que se está creando no será visible hasta que se llame a esta función.


void surface_set_color(color: Color) 🔗

Establece el atributo de color que se enviará con el siguiente vértice.


void surface_set_normal(normal: Vector3) 🔗

Establece el atributo normal que se enviará con el siguiente vértice.


void surface_set_tangent(tangent: Plane) 🔗

Establece el atributo de tangente que se enviará con el siguiente vértice.

Nota: Aunque tangent es un Plane, no representa directamente el plano tangente. Sus Plane.x, Plane.y, y Plane.z representan el vector tangente y Plane.d debe ser -1 o 1. Véase también Mesh.ARRAY_TANGENT.


void surface_set_uv(uv: Vector2) 🔗

Establece el atributo UV que se enviará con el siguiente vértice.


void surface_set_uv2(uv2: Vector2) 🔗

Establece el atributo UV2 que se enviará con el siguiente vértice.