---
# This currently isn't functional, it's an experiment in how this
# might be defined in a user-friendly(ish) way.

prefabs:
  wallX:
    transform:
    staticMesh:
      pipeline: phong
      shape: # TODO
    rigidBody:
      type: static
      shape:
        type: box
        extents: [0.5, 2.5, 20.5]
  wallZ:
    transform:
    staticMesh:
      pipeline: phong
    rigidBody:
      type: static
      shape:
        type: box
        extents: [39.0, 2.5, 0.5]
    floor:
      transform:
      staticMesh:
        pipeline: phong
        shape: # TODO
      rigidBody:
        type: static
        shape: box
        extents: [20, 0.5, 20.0]
    player:
      transform:
      rigidBody:
        mass: 1
        shape:
          type: sphere
          extents: [0.5, 0.5, 0.5]
      dynamics:
      staticMesh:
        pipeline: phong
        shape: # TODO
    collectable:
      transform:
      staticMesh:
        shader: phong
        shape: # TODO
      callbacks:
scene:
  entities:
    - prefab: wallX
      transform:
        origin: [20, 0, 0]
    - prefab: wallX
      transform:
        origin: [-20, 0, 0]
    - prefab: wallZ
      transform: [0, 0, -20]
    - prefab: wallZ
      transform: [0, 0, 20]
    - prefab: floor
      transform: [0, -2.5, 0]
    - prefab: player