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.

MeshInstance3D

Inherits: GeometryInstance3D < VisualInstance3D < Node3D < Node < Object

Inherited By: SoftBody3D

Node that instances meshes into a scenario.

Description

MeshInstance3D 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 render 3D geometry and can be used to instance a single Mesh in many places. This allows reusing geometry, which can save on resources. When a Mesh has to be instantiated more than thousands of times at close proximity, consider using a MultiMesh in a MultiMeshInstance3D instead.

Tutorials

Properties

Mesh

mesh

NodePath

skeleton

NodePath("..")

Skin

skin

Methods

void

create_convex_collision ( bool clean=true, bool simplify=false )

void

create_debug_tangents ( )

void

create_multiple_convex_collisions ( MeshConvexDecompositionSettings settings=null )

void

create_trimesh_collision ( )

int

find_blend_shape_by_name ( StringName name )

Material

get_active_material ( int surface ) const

int

get_blend_shape_count ( ) const

float

get_blend_shape_value ( int blend_shape_idx ) const

Material

get_surface_override_material ( int surface ) const

int

get_surface_override_material_count ( ) const

void

set_blend_shape_value ( int blend_shape_idx, float value )

void

set_surface_override_material ( int surface, Material material )


Property Descriptions

Mesh mesh

  • void set_mesh ( Mesh value )

  • Mesh get_mesh ( )

The Mesh resource for the instance.


NodePath skeleton = NodePath("..")

NodePath to the Skeleton3D associated with the instance.


Skin skin

  • void set_skin ( Skin value )

  • Skin get_skin ( )

The Skin to be used by this instance.


Method Descriptions

void create_convex_collision ( bool clean=true, bool simplify=false )

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

If clean is true (default), duplicate and interior vertices are removed automatically. You can set it to false to make the process faster if not needed.

If simplify is true, the geometry can be further simplified to reduce the number of vertices. Disabled by default.


void create_debug_tangents ( )

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


void create_multiple_convex_collisions ( MeshConvexDecompositionSettings settings=null )

This helper creates a StaticBody3D child node with multiple ConvexPolygonShape3D collision shapes calculated from the mesh geometry via convex decomposition. The convex decomposition operation can be controlled with parameters from the optional settings.


void create_trimesh_collision ( )

This helper creates a StaticB