MeshLibrary
继承: Resource < RefCounted < Object
网格库。
描述
网格库包含一个 Mesh 资源列表,每个资源都有一个名称和 ID。每个项目还可以包括碰撞和导航形状。这个资源在 GridMap 中使用。
教程
方法
void | clear() |
void | create_item(id: int) |
find_item_by_name(name: String) const | |
get_item_list() const | |
get_item_mesh(id: int) const | |
get_item_mesh_transform(id: int) const | |
get_item_name(id: int) const | |
get_item_navigation_layers(id: int) const | |
get_item_navigation_mesh(id: int) const | |
get_item_navigation_mesh_transform(id: int) const | |
get_item_preview(id: int) const | |
get_item_shapes(id: int) const | |
get_last_unused_item_id() const | |
void | remove_item(id: int) |
void | set_item_mesh(id: int, mesh: Mesh) |
void | set_item_mesh_transform(id: int, mesh_transform: Transform3D) |
void | set_item_name(id: int, name: String) |
void | set_item_navigation_layers(id: int, navigation_layers: int) |
void | set_item_navigation_mesh(id: int, navigation_mesh: NavigationMesh) |
void | set_item_navigation_mesh_transform(id: int, navigation_mesh: Transform3D) |
void | set_item_preview(id: int, texture: Texture2D) |
void | set_item_shapes(id: int, shapes: Array) |
方法说明
void clear() 🔗
清除库。
使用给定的 ID 在库中创建一个新项。
你可以从 get_last_unused_item_id 获取一个未使用的 ID。
int find_item_by_name(name: String) const 🔗
返回具有给定名称的第一个项目,如果未找到任何项目,则返回 -1
。
PackedInt32Array get_item_list() const 🔗
返回正在使用的项目 ID 列表。
Mesh get_item_mesh(id: int) const 🔗
返回该项目的网格。
Transform3D get_item_mesh_transform(id: int) const 🔗
返回应用到项目网格的变换。
String get_item_name(id: int) const 🔗
返回该项的名称。
int get_item_navigation_layers(id: int) const 🔗
返回该项的导航层位掩码。
NavigationMesh get_item_navigation_mesh(id: int) const 🔗
返回该项的导航网格。
Transform3D get_item_navigation_mesh_transform(id: int) const 🔗
返回应用于该项导航网格的变换。
Texture2D get_item_preview(id: int) const 🔗
在编辑器中运行时,返回生成的项目预览(等轴透视中的 3D 渲染)。在一个运行的项目中使用时,返回手动定义的项目预览,该项目预览可以使用 set_item_preview 设置。如果在一个运行的项目中,没有手动设置预览,则返回一个空的 Texture2D。
Array get_item_shapes(id: int) const 🔗
返回某个项目的碰撞形状。
该数组由每个 Shape3D 后跟其 Transform3D 组成。
int get_last_unused_item_id() const 🔗
获取新项未使用的 ID。
删除项目。
void set_item_mesh(id: int, mesh: Mesh) 🔗
设置该项的网格。
void set_item_mesh_transform(id: int, mesh_transform: Transform3D) 🔗
设置要应用到项目网格的变换。
void set_item_name(id: int, name: String) 🔗
设置该项的名称。
这个名称会显示在编辑器中。稍后还可以使用 find_item_by_name 来查找该项。
void set_item_navigation_layers(id: int, navigation_layers: int) 🔗
设置该项的导航层位掩码。
void set_item_navigation_mesh(id: int, navigation_mesh: NavigationMesh) 🔗
设置该项的导航网格。
void set_item_navigation_mesh_transform(id: int, navigation_mesh: Transform3D) 🔗
设置应用于该项的导航网格的变换。
void set_item_preview(id: int, texture: Texture2D) 🔗
在编辑器中设置要用作该项预览图标的纹理。
void set_item_shapes(id: int, shapes: Array) 🔗
设置某个项目的碰撞形状。
该数组应由 Shape3D 对象组成,每个对象后跟一个将应用于它的 Transform3D。对于不应具有变换的形状,请使用 Transform3D.IDENTITY。