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 unnexpected 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())