← ClaudeAtlas

assemble-scenelisted

Use when composing PlayCanvas Engine, React, or Web Components gameplay entities, model hierarchies, colliders, or physics objects to create one semantic root per object with calibrated visuals and predictable lifecycle ownership.
playcanvas/skills · ★ 15 · AI & Automation · score 80
Install: claude install-skill playcanvas/skills
# Scene assembly Represent one gameplay object with one named semantic root. Put gameplay position, heading, rigid-body, collision, and behavior on that root. Put calibrated render transforms below it. Consume the existing tuning record from `calibrate-model` exactly once. If it is missing, stop and calibrate the model; do not calculate or adjust asset tuning during assembly. ## Assembly rules - Name roots by gameplay role and use predictable names for repeated instances. - Apply model calibration once inside the visual child; never reapply scale, grounding, or authored yaw during placement. - Space neighbouring roots by their scaled footprints and pivot offsets from `calibrate-model`, not by pivot position. A non-90° authored yaw rotates a footprint, so reserve its larger horizontal extent as a conservative radius. - Put rigid-body and collision components on the same root. Size colliders from measured bounds. - Use local transforms below a parent and world transforms only for semantic roots. - Keep UI, effects, cameras, and lights outside gameplay model hierarchies. - Remove the root through its authoring surface's lifecycle. Unregister external events it owns. - Do not scale rigid-body roots or skinned bones. ## Prove placement Declare intentional support, attachment, or containment relationships between roots. After a rendered frame, measure each relationship at the supported object's actual position. Use a mount point, collision ray, or geometry sample; use a