anchor.diff:           (sdl-base::pixel-data pixels)))
       (values texture surface)))
   
  -(defmethod texture ((image image))
  +(defun texture (image)
  +  (declare (type image image))
     (if (slot-boundp image 'texture)
         (slot-value image 'texture)
         (with-slots (source) image
  
positive.code:    (source
      :initarg :source)
     texture
     (size
      :reader size))
    (:documentation
     "Wrapper over an Open GL texture."))
  
  
negative.code:           (setf (slot-value image 'texture) texture
                  (slot-value image 'size)
                  (complex (sdl:width surface) (sdl:height surface)))
            (values texture surface)))))
  
  (defmethod size ((image image))
    ;; Automatically load the image texture.
    (texture image)
    (slot-value image 'size))
  
  (defgeneric x (object)
    (:method ((n number)) (realpart n)))
  