anchor.diff:   (z :float))
   
   (defstruct vector3
  - x
  - y
  - z)
  + x y z)
   
   (defmethod translate-into-foreign-memory (object (type vector3-type) pointer)
     (with-foreign-slots ((x y z) pointer (:struct %vector3))
  
positive.code:  (depth-texture :boolean))
  
  (defstruct render-texture
   id
   texture
   depth
   depth-texture)
  
  (defmethod translate-into-foreign-memory (object (type render-texture-type) pointer)
    (with-foreign-slots ((id  depth-texture) pointer (:struct %render-texture))
  
negative.code:   (ft :int))
  
  (defstruct image
   data width height maps ft)
  
  (defmethod translate-into-foreign-memory (object (type image-type) pointer)
    (with-foreign-slots ((data width height maps ft) pointer (:struct %image))
  