anchor.diff:  	  ))
         
         ;(setf speed (* 0.9995 speed))
  -      (gl:uniform dir-loc (vec2 1 0))
  +      (gl:uniform dir-loc (vec 1 0))
         (gl:clear gl:color-buffer-bit)
         (gl:uniform cam-size-loc cam-size)
         (gl:uniform cam-loc cam-pos)
  
positive.code:      (let ((buf (+ leaves it)))
         (setf (member (deref buf) z) 
  	     (min (+ (member (deref buf) z) 0.05) 1.0))))
      (incr time-since-last-leaf 0.1)
      (when (> time-since-last-leaf 10.0)
        (add-to-list+ leaves leaf-cnt (vec (member pos x) (member pos y) 0.0))
        (add-to-list+ leaf-dir leaf-dir-cnt dir)
        (setf time-since-last-leaf 0))))
  
  (defun pt-dist(f64 (a vec2) (b vec2))
  
negative.code: uniform vec2 cam_size;
  uniform vec2 dir;
  void main(){
    vec2 d = dir;
    vec2 v2 = vec2(-d.y, d.x);
    vec2 v = vec2(d.x * vertex_position.x + v2.x * vertex_position.y,
                  d.y * vertex_position.x + v2.y * vertex_position.y);
  
    gl_Position = vec4((v * size + offset - cam) / cam_size * 2.0,0.0,1.0);
  }
  ")
  