   ])
 
 
-  estore.createEntity mkCubeComps(canVec3(-1,0,-1),0x993333)
+  for comps in generateSlabComps()
+    estore.createEntity comps
+
   estore.createEntity mkCubeComps(canVec3(-1,1,-1),0x993333)
   estore.createEntity mkCubeComps(canVec3(-1.1,2,-1),0x993333)
   estore.createEntity mkCubeComps(canVec3(20,0,-1),0x993333)
   estore.createEntity mkCubeComps(canVec3(20,0,10),0x993333)
   estore.createEntity mkCubeComps(canVec3(-1,0,10),0x993333)
   
-  groundQuat = canQuat()
-  groundQuat.setFromAxisAngle(canVec3(1, 0, 0), -Math.PI / 2)
-  estore.createEntity([
-    C.buildCompForType(T.Name, name: 'Ground')
-    C.buildCompForType(T.Location, position: canVec3(0,-10,0), quaternion: groundQuat)
-    C.buildCompForType(T.Physical,
-      kind: 'plane'
-      data: new C.Physical.Plane(0x9999cc, 100, 100)
-    )
-  ])
-  estore.createEntity([
-    C.buildCompForType(T.Name, name: 'Ground')
-    C.buildCompForType(T.Location, position: canVec3(0,-1.5,0))
-    C.buildCompForType(T.Physical,
-      kind: 'block'
-      bodyType: Cannon.Body.STATIC
-      data: new C.Physical.Block(0x9999cc, canVec3(5,1,10))
-    )
-  ])
+  # groundQuat = canQuat()
+  # groundQuat.setFromAxisAngle(canVec3(1, 0, 0), -Math.PI / 2)
+  # estore.createEntity([
+  #   C.buildCompForType(T.Name, name: 'Ground')
+  #   C.buildCompForType(T.Location, position: canVec3(0,-10,0), quaternion: groundQuat)
+  #   C.buildCompForType(T.Physical,
+  #     kind: 'plane'
+  #     data: new C.Physical.Plane(0x9999cc, 100, 100)
+  #   )
+  # ])
+
 
   estore.createEntity([
     C.buildCompForType(T.Name, name: 'Follow Camera')
-    # C.buildCompForType(T.Tag, name: 'follow_cam')
     C.buildCompForType(T.FollowCamera, followTag: 'player_piece')
     C.buildCompForType(T.Location, position: canVec3(0,3,5))
   ])

  Systems.camera_follow_system()
])

mkCubeComps = (pos,color=0xffffff,name='Cube') ->
  [
    C.buildCompForType(T.Name, name: name)

    C.buildCompForType(T.Physical,
      kind: 'cube'
      data: new C.Physical.Cube(color)
    )
  ]

mkSlabComps = (pos,dim,color=0xffffff,name='Slab') ->
  [
    C.buildCompForType(T.Name, name: 'Slab')
    C.buildCompForType(T.Location, position: pos)
    C.buildCompForType(T.Physical,
      kind: 'block'
      bodyType: Cannon.Body.STATIC
      data: new C.Physical.Block(color, dim)
    )
  ]

