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.
Checking the stable version of the documentation...
ImmediateMesh
Hérite de : Mesh < Resource < RefCounted < Object
Maillage optimisé pour créer de la géométrie manuellement.
Description
Un type de maillage optimisé pour créer de la géométrie manuellement, semblable au mode immédiat d'OpenGL 1.x.
Voici un échantillon sur comment générer une face triangulaire :
var maillage = ImmediateMesh.new()
maillage.surface_begin(Mesh.PRIMITIVE_TRIANGLES)
maillage.surface_add_vertex(Vector3.LEFT)
maillage.surface_add_vertex(Vector3.FORWARD)
maillage.surface_add_vertex(Vector3.ZERO)
maillage.surface_end()
var mesh = new ImmediateMesh();
maillage.SurfaceBegin(Mesh.PrimitiveType.Triangles);
maillage.SurfaceAddVertex(Vector3.Left);
maillage.SurfaceAddVertex(Vector3.Forward);
maillage.SurfaceAddVertex(Vector3.Zero);
maillage.SurfaceEnd();
Note : Générer des géométries complexes avec ImmediateMesh est très inefficace. Au lieu de cela, il est conçu pour générer de la géométrie simple qui change souvent.
Tutoriels
Méthodes
void |
|
void |
surface_add_vertex(vertex: Vector3) |
void |
surface_add_vertex_2d(vertex: Vector2) |
void |
surface_begin(primitive: PrimitiveType, material: Material = null) |
void |
|
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) |
Descriptions des méthodes
void clear_surfaces() 🔗
Effacer toutes les surfaces.
void surface_add_vertex(vertex: Vector3) 🔗
Ajoute un sommet 3D en utilisant les attributs courants précédemment définis.
void surface_add_vertex_2d(vertex: Vector2) 🔗
Ajoute un sommet 2D en utilisant les attributs courants précédemment définis.
void surface_begin(primitive: PrimitiveType, material: Material = null) 🔗
Commence une nouvelle surface.
void surface_end() 🔗
End and commit current surface. Note that surface being created will not be visible until this function is called.
void surface_set_color(color: Color) 🔗
Définit l'attribut de couleur qui sera poussé avec le prochain sommet.
void surface_set_normal(normal: Vector3) 🔗
Définit l'attribut de normale qui sera poussé avec le prochain sommet.
void surface_set_tangent(tangent: Plane) 🔗
Set the tangent attribute that will be pushed with the next vertex.
Note: Even though tangent is a Plane, it does not directly represent the tangent plane. Its Plane.x, Plane.y, and Plane.z represent the tangent vector and Plane.d should be either -1 or 1. See also Mesh.ARRAY_TANGENT.
void surface_set_uv(uv: Vector2) 🔗
Définit l'attribut d'UV qui sera poussé avec le prochain sommet.
void surface_set_uv2(uv2: Vector2) 🔗
Définit l'attribut d'UV2 qui sera poussé avec le prochain sommet.