     #:component {:shape     {:shape/width  width
                              :shape/height height
                              :shape/type   :rectangle
-                             :shape/center {:x x :y y}}
+                             :shape/center {:geometry/x x
+                                            :geometry/y y}}
                  :collision {:collision/type :obstacle}
                  :render    {:render/fill 0x333333}}))
 


(s/def :entity/id int?)

(s/def :geometry/x (s/and number? pos?))
(s/def :geometry/y (s/and number? pos?))
(s/def :geometry/vector2 (s/keys :req [:geometry/x :geometry/y]))
(s/def :geometry/direction (s/nilable number?))


    #:component {:shape     {:shape/width  25
                             :shape/height 25
                             :shape/type   :rectangle
                             :shape/center {:geometry/x x
                                            :geometry/y y}}
                 :motion    {:motion/velocity             {:geometry/x 0
                                                           :geometry/y 0}
                             :motion/affected-by-friction true
                             :motion/direction            nil
                             :motion/max-acceleration     2.0
