More general-purpose stuff

Lots of interesting techniques have recently surfaced that rely on encoding values into places that were never meant to hold them.

In particular:
Encoding normals into textures (bump-mapping)
Encoding normals into texcoords (dp env-mapping)
Encoding distances into the alpha-buffer (shadow-buffering)

Here’s my wish-list:

  1. Some general-purpose interpolators that can be used as operands for blend-func, texenv and texgen.

  2. An arbitrary-precision general-purpose buffer (like an alpha-buffer but without the implied purpose)

  3. More texenv functionality. Possibly something similar to EXT_texture_env_combine, but with the general-purpose interpolators available as arguments and without the clamping

  4. State-objects for all this to simplify management.

Thoughts? Opinions?

Mike Ferenduros