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:

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

  1. Group objects into a Collection.
  2. Right-click the collection and choose Mark as Asset.
  3. In the Asset Browser, pick the Current File library. The collection appears there.
  4. 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.