anchor.diff: +;; Idea: one array of static rectangles (background)
  +;;       and one array of constantly changing rectangles
  +;;      => write all into one vbo (gl:buffe-data ...)
  +;;      - draws all with one call
  +;;      - much better performance, less overhead with individual
  +;;      - gl:buffer-sub-data 
  +;;
  +;;      => change rectangle data (position,color) on cpu/cl side
  +;;         using simple arrays
  +
  +;; TODO: texatl to get sprites and spritesheet integretation, maybe even text!!
  +
  +;; one big texture to read all the data from, again using texatl?
  +
  +
   
   (defpackage :game-objects
     (:use :cl
   	;; oooooh, only the EXTERNAL symbols get inherited!!
  -;	:game
  -	:kit.gl.shader))
  +	:kit.gl.shader
  +	:kit.math))
   
   (in-package :game-objects)
   
  
positive.code:    (pixels :initarg :pixels)
     (ffi-array)))
  
  ;; try to collect everything needed to draw arbitrary rectangles
  (defclass rectangle-object ()
    ((positions :initarg :positions)
     (texture-coordinates :initform
  			#(1.0 0.0   1.0 1.0   0.0 1.0   0.0 1.0   0.0 0.0   1.0 0.0))
     (image-data :initarg :image-data :type 'image-object)
     ;; vao
     (vao :initarg :vao)
     (vbo)
     (shader-dictionary) ;;defdict
     (shader-program) ;; :basic-projection
     ))
  
  
  (defvar *default-ffi-positions*
  
negative.code: ;;     (gl:bind-vertex-array 0)
  ;;     (values vao vbo)))
  
  