Only update camera once after changing position

This commit is contained in:
oakes
2014-03-24 00:55:57 -04:00
parent 78e724408a
commit 50d9d9e95b

View File

@@ -126,12 +126,14 @@ remains in tact
([screen pos] ([screen pos]
(let [^Camera camera (u/get-obj screen :camera)] (let [^Camera camera (u/get-obj screen :camera)]
(set! (. camera position) pos))) (set! (. camera position) pos)))
([screen x y] ([screen x-val y-val]
(position! screen x y nil)) (position! screen x-val y-val nil))
([screen x y z] ([screen x-val y-val z-val]
(when x (x! screen x)) (let [^Camera camera (u/get-obj screen :camera)]
(when y (y! screen y)) (when x-val (set! (. (. camera position) x) x-val))
(when z (z! screen z)))) (when y-val (set! (. (. camera position) y) y-val))
(when z-val (set! (. (. camera position) z) z-val))
(.update camera))))
(defn position (defn position
"Returns the position of the camera in `screen`" "Returns the position of the camera in `screen`"