Skip to content

Objects (Furniture)

Interactive and placeable objects that occupy one or more cells and that may expose anchors for decorations and attachments.

Interactive and placeable objects that occupy one or more cells and that may expose anchors for decorations and attachments.

  • Footprint and grid
    • Placement uses 1×1×1 m grid cells in IJ with K as height.
    • Each object defines a rotation-aware volume in 3D.
    • Object clashing checks the cell mask at the current rotation.
  • Rotation
    • 90° increments initially. 45° may be considered later if an object supports it.
  • Bounds and collisions
    • Must fit entirely within current deck bounds.
    • Odd-shaped boundary cells are non-placeable for objects.
    • No crossing walls, doors, floors, etc. — the whole volume must fit.
    • Doors: objects must not block door swing volumes.
  • Anchors
    • Anchors do not affect placement validation or footprint. They only dictate how decorations attach.
  • Stacking (out of scope for now; future updates might include this)
    • Disabled unless the object explicitly declares stackable behaviour and defines compatible top/bottom interfaces.
Use case World-space bevel width Segments Notes
Default edges 0.02–0.03 m 1–2 Primary highlight width for a clean, toy-scale read
Small props / crowded edges 0.01–0.02 m 1–2 When the default bevel eats too much form
Hero touch edges 0.03–0.04 m 2 Doors, railings, elevator frames
Micro bevel (specular catch) 0.005–0.01 m 1 Use sparingly; must read at gameplay distance
  • Keep bevels in consistent world units. Prefer low segment counts and let trims or smooth shading carry the highlight.
  • Named attachment point on an object with position, normal, and allowed types.
  • Types: Horizontal, Vertical, Surface, Hanging.
  • Anchors are game objects that need to exist within the object’s hierarchy; the position and rotation define the anchoring position and normal.
  • The anchor’s local up vector defines the attachment normal. Use the anchor transform to orient attached items.
  • Objects reserve cells as their original footprint.
  • Anchors do not change the object footprint.
  • Doors are objects and should have anchors defined for decorations.
  • Playtest whether to do any collision checks, but clipping through the wall might be part of the “fun” for some players.
  • Examples
    • door_center: Vertical type; allowed for Wall-only and Vertical-only décor.
    • nameplate_frame: Vertical type; allowed for Wall-only and Surface décor.
    • handle_charm: Vertical type; allowed for Hanging décor.