Skip to content

Set Schema

The full set.json structure and the bundled apartment_complex set's anchors. See Core Concepts → Sets & Locations for the conceptual overview.

set.json

{
  "actor_scale": 1.5,            // multiplies blocking offsets, camera R, light distances
  "actor_motion_scale": 2.0,     // locomotion distance scaling
  "locations": {
    "<location_key>": {
      "name": "Display Name",
      "description": "...",
      "sublocations": {
        "<sub_key>": {
          "name": "Tree1",              // → python attribute (sanitized)
          "description": "...",
          "shots": {
            "A1": {
              "description": "Looking at the tree",
              "position": { "x": -97, "y": -107, "z": 0.2 },
              "theta": -40,             // facing yaw, degrees
              "radius": { "s1": 4, "s2": 4 }
            }
          }
        }
      },
      "Camera_Points": {
        "CP1": { "name": "Camera_Point_1", "position": { "x": 0, "y": 0, "z": 0 } }
      }
    }
  }
}

Note

Attribute access uses the name (sanitized: -, , ._), not the key. So sublocation D named Canal_Bridge1-North_Endcanal_bridge.Canal_Bridge1_North_End.

apartment_complex (the bundled set)

actor_scale = 1.5, actor_motion_scale = 2.0.

Locations: canal_bridge · kids_playground_area · flower_garden · basketball_court_area · rooftop_area · waterside_garden.

canal_bridge anchors:

Sublocation attribute Shots
Tree1 A1 A2 A3
Apartment_Stairs1 B1
Tree2 C1 C2 C3
Canal_Bridge1_North_End D1
Canal_Bridge2_Middle E1 E2
Canal_Bridge3_South_End F1 F2 F3
Camera points Camera_Point_1/2/3
from sets.apartment_complex import canal_bridge
with canal_bridge.Tree1.A1 as shot:
    ...