Skip to content

Grid Placement v6.0

Grid vs Smooth Placement

When to use GRID versus SMOOTH placement, and how occupancy works in each.

Status
Current
Version
v6.0
Source updated
2026-09-04
Generated on
2026-09-06

Grid Placement has two object coordinate modes:

  • GRID — snap to a 2D tile or 3D GridMap lattice and use grid-keyed occupancy and mounts.
  • SMOOTH — place at world-space positions with footprint overlap validation and optional world-space sockets.

GRID is the default. Use SMOOTH when free positioning is part of the desired behavior.

Choose GRID when

  • objects must tile or align predictably;
  • cell or footprint occupancy matters to gameplay;
  • 3D structures use CELL, EDGE, FACE, or CORNER mounts;
  • fences, walls, and corners must share canonical grid locations;
  • deterministic grid coordinates matter for rules or save data.

2D terrain painting is also grid-based, but it is a separate terrain workflow rather than SMOOTH-vs-GRID object placement.

Choose SMOOTH when

  • exact cursor or world position matters more than cell alignment;
  • clutter or organic props should not look grid-locked;
  • 3D GridMap cells are too coarse for the object;
  • object-to-object joins should use optional world-space sockets instead of GRID mount keys.

SMOOTH still validates occupancy. “Free placement” means free coordinates, not “ignore collisions or overlap.”

Switching mode

Coordinate mode belongs to the PlacementSession:

session.placement_coordinate_mode= PlacementEnums.PlacementCoordinateMode.SMOOTH
session.placement_coordinate_mode= PlacementEnums.PlacementCoordinateMode.GRID

This is independent from interaction actions such as place, move, or demolish.

Footprints

SMOOTH entries need an explicit non-zero world footprint so overlap checks have geometry to validate.

entry.footprint_2d= Vector2(32,32)
entry.footprint_3d_world= Vector3(2,2,2)

If footprint data is missing, SMOOTH placement rejects the target instead of silently allowing overlap.

GRID uses the entry's grid footprint or mount occupancy instead.

Occupancy model

Mode Placement occupancy
GRID Canonical cell, footprint, EDGE, FACE, or CORNER keys in the shared placement world.
SMOOTH World-space footprint occupancy in the shared placement world.

Optional physics queries can add environment obstacle or support checks, but physics bodies do not replace plugin placement identity and occupancy.

GRID and SMOOTH objects share the same placement world, so supported cross-mode overlaps can be rejected consistently.

3D mounts vs world sockets

Do not mix the two concepts:

  • GRID CELL/EDGE/FACE/CORNER — lattice-aligned occupancy and mount keys.
  • SMOOTH sockets — provider-owned world-space snap points.

A placeable may support both workflows through configuration, but a GRID mount is not the same occupancy key as a SMOOTH socket.

Grid Placement 6.0 does not define a generic GRID TOP mount. A SMOOTH UP socket is still a world-space socket, not a TOP mount.

Move, remove, save, restore

Both modes participate in the normal lifecycle:

  • move validates the new position before changing committed occupancy;
  • cancel leaves the committed object unchanged;
  • demolition removes placement and occupancy state;
  • save/restore rebuilds GRID, SMOOTH, mounts, sockets, and identity together.

See Save and Load.

Quick decision table

Need Use
Tile/cell aligned building GRID
CELL/EDGE/FACE/CORNER modular structure GRID
2D terrain brush 2D terrain workflow (grid-based)
Free furniture/clutter SMOOTH
Organic 3D prop SMOOTH
World-space magnetic object join SMOOTH + sockets
Building valid on sloped support but still upright GRID + slope/support policy