Building Levels
How to assemble a level once both addons are configured.
Set the Game Configuration First
Whenever you start in a fresh .blend file, set the Game Configuration before doing anything else. Liminal Editor needs to know where your Godot project lives so it can synchronise entities and materials.
Open the Liminal sidebar (N, LM Toolkit), find the LM Config panel, and pick a configuration from the dropdown.
Note
The selected configuration is saved per .blend file. Configurations themselves are defined globally in Edit›Preferences›Add-ons›Liminal Editor.
Reloading Entities
Click Reload Manifest in the LM Config panel when:
- Entity definitions have been added, removed, or modified in your Godot project.
- Materials have been added or removed.
After changing materials, you may need to restart Blender for Asset Browser categories to refresh.
Use Blender as You Already Know It
Liminal Editor does not impose a workflow inside Blender. Use whichever modelling tools, modifiers, and addons you prefer. As long as you produce mesh objects in the scene, Liminal exports them as GEO.
Setting Collision on GEO
Select one or more GEO objects, open the LM Geometry Properties panel (sidebar or D-key context panel), and pick a collision type.
| Type | Godot Shape | Notes |
|---|---|---|
CONCAVE |
ConcavePolygonShape3D (trimesh) | Exact shape. Static-only |
CONVEX |
ConvexPolygonShape3D | Convex hull approximation |
BOX |
BoxShape3D | Axis-aligned bounding box |
SPHERE |
SphereShape3D | Bounding sphere |
CYLINDER |
CylinderShape3D | Bounding cylinder |
CAPSULE |
CapsuleShape3D | Bounding capsule |
NONE |
(none) | No collision generated |
The collision type travels in the .lm file. Godot's importer turns it into a CollisionShape3D parented under a shared StaticBody3D per level.
Tagging GEO
Below the collision dropdown, the LM Geometry Properties panel shows Tags — toggle buttons for the geometry tags defined in your Godot project. Tags are markers (e.g. nav, boundary) that Godot reacts to on import: assigning a navmesh group, making invisible boundaries, swapping physics materials, and so on.
See Configuring Imported Geometry for defining the tag set, the per-level LMMap defaults, and scripting hooks that act on tags.
Placing Entities
Use Blender's regular Add menu: Add›Entity›<Category>, or press Shift⇧+A → Entity. The entity appears at the 3D cursor with its default properties.
Each entity carries a classname and a uid that Godot uses to find the matching scene file. Entity appearance in the viewport depends on its kind:
| Entity kind | Viewport representation |
|---|---|
| Volume (trigger zones, etc.) | Wire cube (add a volume gizmo for a translucent colored fill) |
| Model (has a preview mesh) | Collection instance |
| Plain (invisible logical node) | Cube empty |
Select an entity and open the LM Property Editor panel to edit its properties.
Wiring Entity Connections
When an entity has a destination property pointing to another entity's source name, Liminal draws a 3D arrow in the viewport between them. This gives an at-a-glance picture of the level's logic graph. Arrows update in real time as properties change.
See Creating Entities for how to expose a property as a source or destination.
Materials
Materials are managed through the Blender Asset Browser. Drag a material from the Asset Browser onto a GEO object, or assign one from the Object Properties›Material tab. See Working with Materials for the full workflow.
Adjusting UVs
The LM Textures panel offers quick UV adjustments suitable for walls, floors, and other simple GEO. See Texture Tools.
GEO Instancing
Liminal supports geometry instancing natively. When duplicating geometry, press Alt⌥+D instead of Shift⇧+D to create a linked duplicate. The Godot importer detects shared mesh data and reuses it instead of duplicating, which keeps the imported scene lean.
Instanced Collections (Prefabs)
Collection instances let you reuse a block of GEO and entities within one level file:
In Blender
- Group objects into a Collection.
- Right-click the collection and choose Mark as Asset.
- In the Asset Browser, pick the Current File library. The collection appears there.
- Drag it into the viewport to place an instance.
To keep the level tidy, build these collections in a separate Scene of the same .blend. Use the scene dropdown at the top of the Blender window to switch.
Warning
This works only inside one .blend. To share prefabs between several level files, build them in a separate file as an Asset Pack and link that file into each level. An asset appended from another file becomes a local copy: it stops following the pack, and the Entity Palette doesn't list it.
Excluding Objects from Export
To exclude part of the level from the export, select the objects and toggle their Disable in Renders button in the Outliner (the camera icon). Disabled objects stay editable in Blender but are skipped during export.
Exporting
Open the LM Exporter panel. The panel shows the destination path and the current entity count.
Click Export Level to write a .lm file to <project>/_blender/levels/<blend_filename>.lm. Switch to Godot and either click Import on the LMMap node, or rely on Auto Reload for live updates.