Development docs. This page describes the unreleased 6.3 build.
6.2 setups named the acting player with a dedicated node:
GridPlacementHost
└── PlacementOwner (owner_root = Player)6.3 keeps the concept and drops the ceremony. The session owns the placer, and
the positioner you already have can write it. PlacementOwner is deprecated in
6.3 — it still loads, still binds owner_root, and still works in a 6.2 scene,
so migrating is not urgent. It is what an editor configuration warning asks for,
and the shipped demos no longer use one.
What the node was
| 6.2 | 6.3 equivalent |
|---|---|
PlacementOwner.owner_root = Player |
GridPositioner2D/3D.placer_root = Player, or session.set_placer_root(Player) from code |
| The node itself was the actor identity | the session's placer root is the identity |
The migration
- Bind the placer. Select your
GridPositioner2DorGridPositioner3Dand assignplacer_rootto the same nodeowner_rootpointed at. The positioner writes it to the session when it becomes ready. - Delete the
PlacementOwnernode. Nothing else reads it once the placer is bound. - Check the result.
session.get_placer_root()returns the player, andsession.get_runtime_issues()is empty.
For a scene built in code, skip the Inspector and bind directly:
session.set_placer_root(player)If you keep the node
An explicit session binding wins over the legacy node. When both exist and disagree, the session value is used and a runtime issue names both nodes:
PlacementOwner 'PlacementOwner'.owner_root differs from the session placer
root 'Player'; the session binding wins. Remove the legacy PlacementOwner node
or clear one of the two.That is the only combination worth acting on. A legacy node alone is a valid 6.2 scene; a binding alone is the 6.3 shape.
If you need no actor at all
Skip the placer assignment and delete the node. See Actor-Free Placement for when that is correct and how a rule that does need a player refuses.
Running the Setup Scene action
The 6.3 setup action no longer creates a PlacementOwner. It adds or reuses the
positioner and leaves the placer unassigned, because whether you need an actor
depends on the rules you enable. Running it on a scene that still has the legacy
node preserves that node rather than adding a second placer.
Using this in a game?
Grid Placement v6.3.0 — full source, playable demos, commercial license
The guide above is the same setup the shipped demos use. Try the build in your browser before you buy it.