   (let [a (calc-accel p all)
         v (map + v a)
         magv (magnitude v)
-        v (if (> magv velocity-limit)
-            (map #(* (/ % magv) vel-limit) v)
+        v (if (> magv speed-limit)
+            (map #(* (/ % magv) speed-limit) v)
             v)
         p (map + p v)]
     [p v a]))

(defn render
  []
  (motion-tick!)
  ;(handle-collisions!)

  (doseq [i (range (count @particles))]
    (let [p (nth @particles i)
          m (nth @particle-meshes i)]
      (set-position! m (:pos p))))

  (render-scene))

(defn make-renderer!
  [meshes]
  (let [camera (THREE.PerspectiveCamera.
                50 (/ scene-width
                      scene-height) 1 10000)
        scene (THREE.Scene.)
        renderer (THREE.CanvasRenderer.)]
    (set! (.-z (.-position camera)) 1000)
    (doseq [m meshes]
      (.add scene m))
    (.setSize renderer scene-width scene-height)
    (.appendChild (.-body js/document) (.-domElement renderer))

    (fn []
