   [state]
   (app/title! "brevis")
   (app/vsync! true)
-  (app/key-repeat! false)
+  ;(app/key-repeat! true)
   (enable :blend)
   (enable :depth-test)
   (init-box-graphic)
   (enable :lighting)
   (enable :light0)
   (blend-func :src-alpha :one-minus-src-alpha))
+
+
+(def shift-key-down (atom false))
+(defn sin [n] (float (Math/sin n)))
+(defn cos [n] (float (Math/cos n)))
 
 (defn reshape
   "Reshape after the window is resized."

  "Display the world."
  [[dt time] state]
  (text/write-to-screen (str (int (/ 1 dt)) " fps") 0 0)
  (text/write-to-screen (str (:simulation-time state) " time") 0 30)
  (text/write-to-screen (str "Rotation [active " (:rotate-mode state) "]: (" 
                             (:rot-x state) "," (:rot-y state) "," (:rot-z state) ")") 0 60)
  (text/write-to-screen (str "Translation [active " (:translate-mode state) "]: (" 
                             (:shift-x state) "," (:shift-y state) "," (:shift-z state) ")") 0 90)
  (rotate (:rot-x state) 1 0 0)
  (rotate (:rot-y state) 0 1 0)
  (rotate (:rot-z state) 0 0 1)

	file (File. filename)]
    (ImageIO/write capture img-type file)))


#_(defn mouse-drag
  "Perform the respective action given a mouse click and displacement."
  [[dx dy] _ button state]
  (let [displacement dx];(math/sqrt (+ (* dx dx) (* dy dy)))]
