Add reverse-alpha blending

This allows us to place the blended objects /under/ the objects already in the
buffer in terms of alpha-transparency.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Replace luft_uniform_value_t with variable argument

We still have an internal uniform_value_t, but externally, you just pass the
type that makes sense and the library does the conversion.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Use a shader to copy out the gather texmap

It's a little gross; we instantiate a dummy light object to get the screen
quad. Nonetheless it works.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Properly set clear color for output

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>
Add primitive depth peeling to demo

This is reeeely primitive. It also hard codes resolution in to the shaders,
which breaks resizing even worse than it already is. Nonetheless it is here.

Signed-off-by: Casey Dahlin <cdahlin@redhat.com>