PrimitiveMesh

Inherits: Mesh < Resource < Reference < Object

Inherited By: CapsuleMesh, CubeMesh, CylinderMesh, PlaneMesh, PointMesh, PrismMesh, QuadMesh, SphereMesh

Base class for all primitive meshes. Handles applying a Material to a primitive mesh.

Description

Base class for all primitive meshes. Handles applying a Material to a primitive mesh. Examples include CapsuleMesh, CubeMesh, CylinderMesh, PlaneMesh, PrismMesh, QuadMesh, and SphereMesh.

Properties

AABB

custom_aabb

AABB( 0, 0, 0, 0, 0, 0 )

bool

flip_faces

false

Material

material

Methods

Array

get_mesh_arrays ( ) const

Property Descriptions

Default

AABB( 0, 0, 0, 0, 0, 0 )

Setter

set_custom_aabb(value)

Getter

get_custom_aabb()

Overrides the AABB with one defined by user for use with frustum culling. Especially useful to avoid unexpected culling when using a shader to offset vertices.


Default

false

Setter

set_flip_faces(value)

Getter

get_flip_faces()

If set, the order of the vertices in each triangle are reversed resulting in the backside of the mesh being drawn.

This gives the same result as using SpatialMaterial.CULL_BACK in SpatialMaterial.params_cull_mode.


Setter

set_material(value)

Getter

get_material()

The current Material of the primitive mesh.

Method Descriptions

  • Array get_mesh_arrays ( ) const

Returns mesh arrays used to constitute surface of Mesh. The result can be passed to ArrayMesh.add_surface_from_arrays to create a new surface. For example:

var c := CylinderMesh.new()
var arr_mesh := ArrayMesh.new()
arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, c.get_mesh_arrays())