Skip to content

Commit ca738a5

Browse files
authored
Merge pull request #10414 from tetrapod00/meshlibrary-clarify
Clarify MeshLibrary format and constraints
2 parents 47d39d9 + a79a41c commit ca738a5

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

tutorials/3d/using_gridmaps.rst

+23
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,29 @@ additional nodes can be added as source geometry just for baking the navmesh.
8888
The baked cell size of the NavigationMesh must match the NavigationServer map cell
8989
size to properly merge the navigation meshes of different grid cells.
9090

91+
MeshLibrary format
92+
------------------
93+
94+
To summarize the specific constraints of the MeshLibrary format, a MeshLibrary
95+
scene has a Node3D as the root node, and several child nodes which will become
96+
MeshLibrary items. Each child of the root node should:
97+
98+
- Be a :ref:`class_MeshInstance3D`, which will become the MeshLibrary item. Only
99+
this visual mesh will be exported.
100+
- Have a material, in the mesh's material slot, *not* the MeshInstance3D's
101+
material slots.
102+
- Have up to one :ref:`class_StaticBody3D` child, for collision. The
103+
StaticBody3D should have one or more :ref:`class_CollisionShape3D` children.
104+
- Have up to one :ref:`class_NavigationRegion3D` child, for navigation. The
105+
NavigationRegion3D can have one or more additional :ref:`class_MeshInstance3D`
106+
children, which can be baked for navigation, but won't be exported as a visual
107+
mesh.
108+
109+
Only this specific format is recognized. Other node types placed as children
110+
will not be recognized and exported. GridMap is not a general-purpose system for
111+
placing *nodes* on a grid, but rather a specific, optimized system, designed to
112+
place *meshes* with collisions and navigation.
113+
91114
Exporting the MeshLibrary
92115
-------------------------
93116

0 commit comments

Comments
 (0)