Thanks AcidFaucet, I remember watching this talk before but I forgot what game it was for (whoops).
I think I won't do it for vertex texture fetch but just use the cpu + indices tweak while still retaining the same VBO blocks that the current Horde3D terrain extension does, but the 11,11,10 32-bit format interests me. I'm just trying to work out what texture format would store this, possibly with PNG-like compression (custom format perhaps). 16-bit per vertex direction is a little bit too much, I think 11,11,10 would be enough...
AcidFaucet wrote:
If I'm understanding you correctly, you intend to displace along the direction of the surface normal? If so, couldn't that lead to normals that aren't correct (ie pointing along the surface of a slope rather than out and away from it)?
Yeah displace along the surface normal, but the normal being derived from the pixel with the weight being the 16-bit signed height or "weight" map. The Z direction would be derived from the weight map's + or - and the 8-bit X,Y would be the tangent direction of it based from the flat uniform grid. Maybe I'm not understanding this fully... Perhaps just storing the direction in world space (like vector displacement maps from mudbox/xnormal) would be a lot easier and the actual normals in a separate texture like what Halo Wars did.