MeshInstance

Inherits: GeometryInstance < VisualInstance < Spatial < Node < Object

Inherited By: SoftBody

Node that instances meshes into a scenario.

Description

MeshInstance is a node that takes a Mesh resource and adds it to the current scenario by creating an instance of it. This is the class most often used to get 3D geometry rendered and can be used to instance a single Mesh in many places. This allows to reuse geometry and save on resources. When a Mesh has to be instanced more than thousands of times at close proximity, consider using a MultiMesh in a MultiMeshInstance instead.

Tutorials

Properties

Mesh

mesh

NodePath

skeleton

NodePath("..")

Skin

skin

bool

software_skinning_transform_normals

true

Methods

void

create_convex_collision ( )

void

create_debug_tangents ( )

void

create_trimesh_collision ( )

Material

get_active_material ( int surface ) const

Material

get_surface_material ( int surface ) const

int

get_surface_material_count ( ) const

void

set_surface_material ( int surface, Material material )

Property Descriptions

Mesh mesh

Setter

set_mesh(value)

Getter

get_mesh()

The Mesh resource for the instance.

NodePath skeleton

Default

NodePath("..")

Setter

set_skeleton_path(value)

Getter

get_skeleton_path()

NodePath to the Skeleton associated with the instance.

Skin skin

Setter

set_skin(value)

Getter

get_skin()

Sets the skin to be used by this instance.

bool software_skinning_transform_normals

Default

true

Setter

set_software_skinning_transform_normals(value)

Getter

is_software_skinning_transform_normals_enabled()

If true, normals are transformed when software skinning is used. Set to false when normals are not needed for better performance.

See ProjectSettings.rendering/quality/skinning/software_skinning_fallback for details about how software skinning is enabled.

Method Descriptions

void create_convex_collision ( )

This helper creates a StaticBody child node with a ConvexPolygonShape collision shape calculated from the mesh geometry. It's mainly used for testing.

void create_debug_tangents ( )

This helper creates a MeshInstance child node with gizmos at every vertex calculated from the mesh geometry. It's mainly used for testing.

void create_trimesh_collision ( )

This helper creates a StaticBody child node with a ConcavePolygonShape collision shape calculated from the mesh geometry. It's mainly used for testing.

Material get_active_material ( int surface ) const

Returns the Material that will be used by the Mesh when drawing. This can return the GeometryInstance.material_override, the surface override Material defined in this MeshInstance, or the surface Material defined in the Mesh. For example, if GeometryInstance.material_override is used, all surfaces will return the override material.

Material get_surface_material ( int surface ) const

Returns the Material for a surface of the Mesh resource.

int get_surface_material_count ( ) const

Returns the number of surface materials.

void set_surface_material ( int surface, Material material )

Sets the Material for a surface of the Mesh resource.

© 2014–2021 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.3/classes/class_meshinstance.html