Skip to main content

Mesh Builder

MeshBuilder lets you create meshes directly in script.


API Surface

  • MeshBuilder.Create() -> MeshBuilder
  • AddVertex(position as Vector3, uv as Vector2, normal as Vector3) -> int
  • AddTriangle(i0 as int, i1 as int, i2 as int) -> void
  • BuildMesh() -> Mesh
  • Free() -> void

Build a Triangle

BuildTriangle method() as Mesh {
builder is MeshBuilder.Create();

v0 is builder.AddVertex(Vector3(0.0, 0.5, 0.0), Vector2(0.5, 0.0), Vector3(0.0, 0.0, 1.0));
v1 is builder.AddVertex(Vector3(-0.5, -0.5, 0.0), Vector2(0.0, 1.0), Vector3(0.0, 0.0, 1.0));
v2 is builder.AddVertex(Vector3(0.5, -0.5, 0.0), Vector2(1.0, 1.0), Vector3(0.0, 0.0, 1.0));

builder.AddTriangle(v0, v1, v2);

mesh is builder.BuildMesh();
builder.Free();
return mesh;
}

UV in Script

UVs are fully authored in script via the second AddVertex argument (Vector2).

This enables:

  • Procedural meshes
  • Runtime UV edits
  • Atlas-based mapping

Next Steps