Blender To Godot 4 Pipeline Addon

by Michael Jared in Addons


Join the Discord for support and collaboration!


Configure colliders, multimesh, scripts and materials directly in Blender using this add-on.


Recent quote from a Godot developer:

Great Plugin! I was close to going crazy with the default gltf-importer... I especially love the nested collider support and automatic primitive collider generation!


Current Version: 2.4.1

Release Date: Oct. 22, 2024

This pipeline works in two parts:

  1. The actual Blender addon (this purchase)
  2. A Godot addon available from the Godot Asset Library called "Blender-Godot Pipeline". This contains SceneInit.gd and GLTFImporter.gd, for convenience

Godot Version Status: 4.2.1-stable, 4.2.2-stable, 4.3.1-stable
Godot Asset Library "Blender-Godot Pipeline" is in sync with this version


Blender has an incredible number of tools for creating models and textures. Leverage the power of Blender to do almost everything you need to for your 3D scenes in the Godot game engine.


Installing in Blender 4.2

Install the godot_pipeline.py file (not the .zip file) directly as an addon. It's included in the blender market files when you purchase the addon.


3D Workflow: The Blender Side

  • Model your 3D scene in Blender
  • Using the Blender to Godot 4 Pipeline Addon, set up collisions, multimesh, custom shaders, materials, NavMeshes and more inside Blender
  • Get PBR materials, animations and more into Godot by leveraging the GLTF standard

3D Workflow: The Godot Side

  • Install the Godot AssetLib addon, so the path to the importer is static and getting updates is easy
  • Set up the default Scene Import path in your project (Project Settings -> Import Defaults -> Scene -> Import Script) to be the GLTFImporter.gd file
  • Export the GLTF from blender or save the .blend file
  • Drag the GLTF file into your Scene to finish the import process

Check out this sample Godot project on GitHub, including a .blend file.


Version Updates

  • v2.4 Now includes a "Individual Origins" option, which allows you to reset the translation of all objects in the scene to the origin. Additional, a "Individual Packed Resources" option, which allows you to export all objects in the scene as packed resources which get saved as individual scenes in Godot.
  • v2.3 Added "Property String" feature, now you can set Godot code directly as a string in Blender (example: collision_layer=2). Added "Packed Scene" feature, so now an object or empty in Blender can act as a "representative" packed scene that gets auto-instantiated upon importing. The packed scene will have the same position, rotation, and scale as the Blender Object. "Auto Bump" feature, so that every time the "Export" button is pressed in the addon, Godot is guaranteed to re-import the file.
  • v2.2 .blend file support, Blender material slot-to-Godot-path, "skip object" toggle, improvements to trimesh and simple collision structure, "disable texture exporting" option.
  • v2.1 Quality of life update. Provided a "quick access" dropdown for setting paths. It remembers recent paths you've inputted for each path type. Bug fix for script parameter files not working with nav mesh.
  • v2.0 Hot reload implemented. One click export from Blender auto-updates scene in Godot. Various bug fixes. Added support for multimesh, physics materials.
  • v1.6 Support for navigation meshes.
  • v1.5 Major refactor, see video below! Now supports Area3D, discarding mesh, and override the Godot object name.
  • v1.4 Add object name suffixes to your exports to simplify exporting multiple objects, other bug fixes.
  • v1.3 Multimesh setup, with occlusion culling and dynamic instancing optimizations.
  • v1.2 Use a script parameter file to pre-load a node with script parameters.
  • v1.0-1.1 Set efficient box, cylinder, trimesh or simple collisions (more collision shapes to come in future updates).


Known Limitations

  • You should not use this pipeline for animated skeleton meshes. Godot does not support reparenting animated skeleton meshes (it breaks all the animation links). I have spent a lot of time tinkering with this, and see no good solution at this time.
  • Certain parent/child relationships are not always preserved. For instance, if you have a several meshes with collision shapes, but need to be parented to one "body" object in Blender, then the meshes will not be preserved. The workaround is to Shift+D to duplicate all objects, convert them to raw collision shapes, then parent them to the body you want.
  • Working with animations and physics bodies is a bit tricky - see this video for more details.


Video Tutorials

$5

Have questions before purchasing?
Login to message

Details
Sales 200+
Rating
1 ratings
Published 12 months ago
Software Version 4.2, 4.1, 4.0, 3.6
License Mit
Discover more products like this

2024-add-ons-for-blender spring24 godot pipeline