anchor.diff:             :size size
              :pos pos
              :viewport-size vp-size
  -           :uv-flip (if flip-uvs-vertically 1 0))))
  +           :uv-flip (if flip-uvs-vertically 1 0)
  +           :color-scale color-scale)))
  
positive.code:     (map-g #'draw-texture-pipeline (get-gpu-quad)
             :tex sampler
             :transform transform
             :uv-y-mult (if flip-uvs-vertically -1s0 1s0)))) ;; this is a bug as it samples outside of texture
  
  (defun rotated-rect-size (size-v2 φ)
    ;; returns width & height
  
negative.code:                    (y (tex vert)))))
      (values final (v! (x (tex vert)) uv-y))))
  
  (defun-g draw-texture-at-frag ((tc :vec2) &uniform (tex :sampler-2d)
                                 (color-scale :vec4))
    (* (texture tex tc) color-scale))
  
  (def-g-> draw-texture-at-pipeline ()
    #'(draw-texture-at-vert g-pt)
  