Grid Placement has two different content models:
- 2D terrain painting changes cells in a
TileMapLayer. - Scene-object placement creates individual node instances in 2D or 3D.
3D GridMap terrain editing is not part of the 6.0 contract. In 3D, use scene-object placement.
Decision rule
| Need | Use |
|---|---|
Connected 2D ground/road/floor/wall visuals owned by a TileSet |
2D terrain |
| Individual scripts/state/selection/health/inventory | Scene object |
| Move/rotate/flip/demolish one placed instance | Scene object |
| 2D LINE/rectangle/flood region painting | 2D terrain |
| Object LINE of repeated independent props | Scene objects with LINE enabled |
| 3D building/fence/window/prop placement | Scene object |
| GRID CELL/EDGE/FACE/socket structure | 3D scene object |
| Free world-space object position | SMOOTH scene object |
2D terrain
Terrain painting is appropriate when the cell pattern matters more than individual object identity.
Typical examples:
- roads and connected ground;
- floor/wall/hedge patterns drawn through a TileSet;
- large repeated static visual/collision regions.
Supported terrain brushes:
SINGLELINERECTANGLE_FILLRECTANGLE_OUTLINEFLOOD_FILL
Terrain preview does not mutate the real TileMapLayer; commit does.
Game-specific terrain behavior
A terrain cell is not a scene object with a Manipulatable component. If your game needs durability, ownership, resource costs, or interaction state per cell, keep that game-domain state in your own data/overlay and use terrain paint/remove hooks to coordinate it.
Scene objects
Use a ScenePlacementEntry when each placement needs identity.
Typical examples:
- buildings and foundations;
- crates, lamps, furniture;
- interactive doors/gates;
- NPC/spawner/interactable scenes;
- 3D floors, walls, fences, windows, props.
Scene objects can participate in object validation, manipulation, stable placement identity, mounts/sockets, refunds, and persistence.
Fences: choose by behavior and dimension
“Fence” is not automatically terrain or object placement.
2D
Use terrain when the fence is primarily a connected TileSet visual/static collision pattern. Use scene objects when segments need individual scripts/state/manipulation, or when object LINE placement is the better model.
3D
Use scene objects. GRID EDGE placement is the supported 6.0 path for cell-aligned fence/wall segments; SMOOTH world sockets are available for free-positioned joins.
Terrain rules vs object rules
- Object placement uses the object validation/rules pipeline and placeable/profile data.
- Terrain painting uses terrain validation/paint gates/hooks.
Do not duplicate one pipeline inside the other just to share a gameplay rule. Put game-owned facts in a reusable provider/bridge when both workflows need the same restriction.
Save/load
- Scene objects use stable placement identity and the placement-world persistence flow.
- 2D terrain uses terrain/tile persistence appropriate to the
TileMapLayerand your game save format.
Your game remains responsible for the complete save-file/profile/cloud-save schema.