 (defn ortho-matrix-buffer
   ([viewport-width viewport-height]
     (ortho-matrix-buffer viewport-width viewport-height (BufferUtils/createFloatBuffer 16)))
-  ([viewport-width viewport-height matrix-buffer]
+  ([viewport-width viewport-height ^FloatBuffer matrix-buffer]
     (let [ortho-matrix (doto (Matrix4f.)
                          (.setIdentity))
           matrix-buffer matrix-buffer

               (Display/destroy))
             (log/info "Exiting"))
           (do
             (Thread/sleep 1)
             (recur)))))
     ;; Wait for Display to be created
     (.await latch)))

(defn position-matrix-buffer
  ([v s]
   (position-matrix-buffer v s (BufferUtils/createFloatBuffer 16)))
  ([v s ^FloatBuffer matrix-buffer]
    (let [matrix (doto (Matrix4f.)
                         (.setIdentity))]
      (.translate matrix (Vector3f. (get v 0) (get v 1) (get v 2)))
