Draw buffers indexed upstream

Closed Erik Faye-Lund requested to merge kusma/virglrenderer:draw_buffers_indexed-upstream into master

The first patch is a bit large and unfortunate; emulating alpha-textures as red-textures isn't something we can do unless we can also swizzle the blend-color per color-target. So instead, I've changed to emulate it with RGBA-textures. This doesn't require any swizzling, so it's a bit simpler, but uses 4x as much memory.

I'm thinking that the increase in memory-usage here isn't as bad as it sounds; this is only really needed for legacy programs, and it's reasonable-ish to assume that old programs need less memory than new programs.

This fixes airlied/virglrenderer#8 (closed).

Merge request reports