Install Asset
Install via Godot
To maintain one source of truth, Godot Asset Library is just a mirror of the old asset library so you can download directly on Godot via the integrated asset library browser
Quick Information
A collection of several helper nodes to extrude 2D profiles, 3D meshes, 3D Scenes and 3D MultiMesh instances along paths in real time. Implemented as a C++ GDExtension with built-in documentation.
PathMesh3D
A set of simple Godot 3D nodes for extruding and instancing 3D meshes along a Path3D. Implemented as a GDExtension in C++ for speed.
Installation
From Godot Asset Library in the Editor
Click the AssetLib button at the top of the Godot editor and search for PathMesh3D. When prompted where to install it, you can select only the folder named "addons". If you wish to modify or recompile the addon, then you'll need to include the "godot-cpp" and "src" folders along with the "SConstruct" file from this repository.
From Godot Asset Library Web
Head over to the PathMesh3D page on the asset library website and click the download button. Unzip the download into a location of your choosing. To put the addon in your project, just copy the "addons" folder into the project directory.
From GitHub.com
You can download the full repository for PathMesh3D here. You can clone this repository by doing git clone https://github.com/iiMidknightii/PathMesh3D.git in the directory of your choosing. If you want to compile your own binaries this is the best option. To put the addon in your project, just copy the "addons" folder into the project directory.
Tutorial
[!NOTE]
PathMesh3DandPathExtrude3Dboth have a plugin button to generate baked meshes and collision shapes. In the editor, you can enable this button by enabling thePathMesh3Dplugin.
PathMesh3D
PathMesh3D is a great node if you want to take a 3D model and "tile" or "repeat" it along a Path3D node within your scene. The Mesh model provided will be duplicated along its Z axis according to the settings chosen for each surface. Since each surface has its own independent settings, there is a high degree of customization available.
Simply add the PathMesh3D node to the scene, set its path_3d property to a Path3D node, and set its mesh property to any Mesh derived resource. From there, you can tweak the settings for each surface to get your desired effect. If you want to create a permanent, separate node as a "snapshot" of the extruded mesh, hit the PathMesh3D button on the editor toolbar and select "Bake Mesh". You can also create collision shapes and static bodies similarly to MeshInstance3D with that same button.
PathExtrude3D
PathExtrude3D works similarly to the CSGPolygon node when in path mode. First, you define the cross section using the profile property. This property uses any one of the PathExtrudeProfileBase classes, including rectangular, circular, etc. You can also create your own profile by creating a custom script inheriting from PathExtrudeProfileBase and overriding the virtual _generate_cross_section method. This resource stores the points as a PackedVector2Array that will be used by the PathExtrude3D. Next, set the path_3d property to any Path3D node in the scene. From there, the cross section will be extruded according to the settings you have chosen.
PathMultiMesh3D
PathMultiMesh3D works similarly to PathMesh3D, but instead of creating one combined mesh, it generates the instances of a MultiMesh resource along the path. Just set the mesh property to a MultiMesh (and select a base mesh for it). Then, set the path_3d property to a Path3D node in the scene. The node will automatically set the MultiMesh instance_count property and distribute their transforms along the path according to the selected settings.
Latest Release
- 1.2 - Updated
PathExtrude3Dnormals generation and fleshed out the profile vertex data generation. In addition, also added base mesh rotation toPathMesh3Dso the input mesh can be tiled along a specified local rotation.
Contributing
Feel free to leave any feedback, suggestions, bug reports, and contributions to the repository at https://github.com/iiMidknightii/PathMesh3D.
A collection of several helper nodes to extrude 2D profiles, 3D meshes, 3D Scenes and 3D MultiMesh instances along paths in real time. Implemented as a C++ GDExtension with built-in documentation.
Reviews
Quick Information
A collection of several helper nodes to extrude 2D profiles, 3D meshes, 3D Scenes and 3D MultiMesh instances along paths in real time. Implemented as a C++ GDExtension with built-in documentation.