Skip to content

gd-3d/bless

Repository files navigation

Blender Level Editor Software Suite

B.l.e.s.s

Bless is a level editor addon for blender, made primarily for Godot, but has hopes in the future to support more engines (please get in touch!)

This is an ambitious project that will eventually allow creating 100% of your levels outside of the game engine and all inside blender, and then contain this data in an exported .gltf file where it could be reused in other games, or engines. All exports are handled with .gltf and some research has done into nested glTF files - so that will likely be supported in the near future for instancing scenes.

This aims to be a level editor primarily, but it could be used as an interface to create small props and add physics, collisions, scripting, custom components or plain old metadata.

Bless is under heavy construction. Check for the 0.2 milestone, that is when Bless will be "production ready". In the meantime we are looking for brave or interested testing and feedback!

Coming soon:

All the features below are under development and will work in Bless, we have done R&D into these subjects and we are confident they will make the 1.0 release:

1.0 Features:

  • Staticbody3D and convex/trimesh Collsionshape3D will be autogenerated based on a per-collection override system.
  • Objects can also use other physics bodes and primitive shapes. For example making a rigid box.
  • Better navigation for level editing.
  • Better modelling for level editing.
  • Basic geonode tools : arches, stairs, columns.
  • Ctrl+G to group objects and parent into an empty.
  • Game definitions, entity definitions, adding .gd scripts and .tscn scene files to the blender scene.
  • Godot addon for more control over the integration. Export your game profile to blender to add scripts and custom classes.
  • Grid settngs with buttons to double or half the snapping amount, and setup level editor friendly snapping.
  • Asset library linking. Using the asset browser in blender, you can drag and drop game objects into your blender scene.
  • Helpers to reset origins, set origins to the floor, lock view to an object (even if moving), etc
  • A helper feature to walk around a scene from a spawn point, pressing the button will teleport you to the spawn point and allow you to walk around the scene.
  • Animation tools.
  • Example project, levels, resources.

In the future:

These are things that are important but will take some time, so we have put them here.

2.0 Features

  • Terrain generation / sculpting system.
  • Vehicle creator tools
  • advanced geonode tools - buildings, rooms, doors, windows..
  • whatever other crazy idea will work and is reasonable to work on

--

for bless developers:

if you want to work on Bless, you will need to:

  • symlink the reponame/bless directory to blenders addon directory.
  • example, Blender 4.2 on Windows: run Command Prompt as admin and then run: mklink /D "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\bless" "C:\repofolder\bless"
  • bless should show up as a Built-In addon after restarting Blender

all exporting logic is done in gltf_export.py. it will export all meshes and attach shapes and bodies in the gltf file.

bless

Thank you

A big thank you to these contributers:

  • Valy Arlhal -- for the blender expertise, autoregistration scripts and the release pipeline and all the extra help with bpy
  • michael jared -- the OG blender-godot-pipeline toolsmith, figured out the extension hooking and just a general chad
  • Aaron Franke, OMI group -- maintainer of godot gltf, as well as writing glTF extensions used in Bless
  • dogman35 -- the 3D bless logo asset and
  • unfa -- for adopting bless into Liblast, the first game to officially do so! the blueprint!