anchor.diff:                        (setf value (coerce (nth 2 object) 'float))))
   
   (defmethod translate-from-foreign (pointer (type material-map-type))
  - (with-foreign-slots ((texture color value) pointer (:struct %material-map))
  - (list texture color value)))
  +  (with-foreign-slots ((texture color value) pointer (:struct %material-map))
  +    (list texture color value)))
   ;;
   ;;// Material, includes shader and maps
   ;;typedef struct Material {
  
positive.code:                       (setf locs (nth 1 object))))
  
  (defmethod translate-from-foreign (pointer (type shader-type))
   (with-foreign-slots ((id locs) pointer (:struct %shader))
   (list id locs)))
  
  ;;// MaterialMap
  ;;typedef struct MaterialMap {
  
negative.code: 
  (defmethod translate-from-foreign (pointer (type camera3d-type))
    (with-foreign-slots ((position target up fovy projection) pointer (:struct %camera3d))
      (make-camera3d :position position
                     :target target
                     :up up
                     :fovy fovy
                     :projection projection)))
  
  (defmacro update-camera3d-from-foreign (lisp-var ptr)
    `(cffi:with-foreign-slots ((position target up fovy projection) ,ptr (:struct %camera3d))
  