   (bit-or (usage :position) (usage :normal)))
 
 (defn create-sphere-body!
-  [screen]
-  (let [shape (sphere-shape 2)
+  [screen radius]
+  (let [shape (sphere-shape radius)
         local-inertia (vector-3 0 0 0)]
     (sphere-shape! shape :calculate-local-inertia mass local-inertia)
     (->> (rigid-body-info mass nil shape local-inertia)

         (add-body! screen))))

(defn create-sphere!
  [screen]
  (-> (model-builder)
      (model-builder! :create-sphere 4 4 4 24 24 (get-material) (get-attrs))
      model
      (assoc :body (create-sphere-body! screen))))

(defn create-box-body!
  [screen]
  (let [shape (box-shape (vector-3 2 2 1))
        local-inertia (vector-3 0 0 0)]
    (box-shape! shape :calculate-local-inertia mass local-inertia)
    (->> (rigid-body-info mass nil shape local-inertia)

            [play-clj.ui :refer :all]))

(def ^:const mass 10)

(defn get-environment
  []
  (let [attr-type (attribute-type :color :ambient-light)
        attr (attribute :color attr-type 0.3 0.3 0.3 1)]
    (environment :set attr)))

(defn get-camera
  []
  (doto (perspective 67 (game :width) (game :height))
    (position! 10 10 10)
    (direction! 0 0 0)))

(defn get-material
  []
