Up to date

This page is up to date for Godot 4.0. If you still find outdated information, please open an issue.

MeshLibrary

Inherits: Resource < RefCounted < Object

Library of meshes.

Description

A library of meshes. Contains a list of Mesh resources, each with a name and ID. Each item can also include collision and navigation shapes. This resource is used in GridMap.

Tutorials

Methods

void

clear ( )

void

create_item ( int id )

int

find_item_by_name ( String name ) const

PackedInt32Array

get_item_list ( ) const

Mesh

get_item_mesh ( int id ) const

Transform3D

get_item_mesh_transform ( int id ) const

String

get_item_name ( int id ) const

int

get_item_navigation_layers ( int id ) const

NavigationMesh

get_item_navigation_mesh ( int id ) const

Transform3D

get_item_navigation_mesh_transform ( int id ) const

Texture2D

get_item_preview ( int id ) const

Array

get_item_shapes ( int id ) const

int

get_last_unused_item_id ( ) const

void

remove_item ( int id )

void

set_item_mesh ( int id, Mesh mesh )

void

set_item_mesh_transform ( int id, Transform3D mesh_transform )

void

set_item_name ( int id, String name )

void

set_item_navigation_layers ( int id, int navigation_layers )

void

set_item_navigation_mesh ( int id, NavigationMesh navigation_mesh )

void

set_item_navigation_mesh_transform ( int id, Transform3D navigation_mesh )

void

set_item_preview ( int id, Texture2D texture )

void

set_item_shapes ( int id, Array shapes )


Method Descriptions

void clear ( )

Clears the library.


void create_item ( int id )

Creates a new item in the library with the given ID.

You can get an unused ID from get_last_unused_item_id.


int find_item_by_name ( String name ) const

Returns the first item with the given name.


PackedInt32Array get_item_list ( ) const

Returns the list of item IDs in use.


Mesh get_item_mesh ( int id ) const

Returns the item’s mesh.


Transform3D get_item_mesh_transform ( int id ) const

Returns the transform applied to the item’s mesh.


String get_item_name ( int id ) const

Returns the item’s name.


int get_item_navigation_layers ( int id ) const

Returns the item’s navigation layers bitmask.


NavigationMesh get_item_navigation_mesh ( int id ) const

Returns the item’s navigation mesh.


Transform3D get_item_navigation_mesh_transform ( int id ) const

Returns the transform applied to the item’s navigation mesh.


Texture2D get_item_preview ( int id ) const

When running in the editor, returns a generated item preview (a 3D rendering in isometric perspective). When used in a running project, returns the manually-defined item preview which can be set using set_item_preview. Returns an empty Texture2D if no preview was manually set in a running project.


Array get_item_shapes ( int id ) const

Returns an item’s collision shapes.

The array consists of each Shape3D followed by its Transform3D.


int get_last_unused_item_id ( ) const

Gets an unused ID for a new item.


void remove_item ( int id )

Removes the item.


void set_item_mesh ( int id, Mesh mesh )

Sets the item’s mesh.


void set_item_mesh_transform ( int id, Transform3D mesh_transform )

Sets the transform to apply to the item’s mesh.


void set_item_name ( int id, String name )

Sets the item’s name.

This name is shown in the editor. It can also be used to look up the item later using find_item_by_name.


void set_item_navigation_layers ( int id, int navigation_layers )

Sets the item’s navigation layers bitmask.


void set_item_navigation_mesh ( int id, NavigationMesh navigation_mesh )

Sets the item’s navigation mesh.


void set_item_navigation_mesh_transform ( int id, Transform3D navigation_mesh )

Sets the transform to apply to the item’s navigation mesh.


void set_item_preview ( int id, Texture2D texture )

Sets a texture to use as the item’s preview icon in the editor.


void set_item_shapes ( int id, Array shapes )

Sets an item’s collision shapes.

The array should consist of Shape3D objects, each followed by a Transform3D that will be applied to it. For shapes that should not have a transform, use Transform3D.IDENTITY.