Volume Encoded UV-Maps - project page
This is the project page for Volume Encoded UV-maps (VEUV), a novel way to represent UV-maps for 3D surfaces for real time texture mapping.
What this is about:
UV-maps are required in order to apply a 2D texture over a 3D model. Traditionally, UV-maps are defined by an assignment of uv positions to mesh vertices.
Volume-encoded UV-maps are a new, alternative representation in which each point on the surface is mapped to a uv position which is solely a function of its 3D position.
This function is tailored for a target surface and is efficiently evaluated during fragment processing, with a single indirecton to a small volumetric texture and a couple ALU instructions.
The maps (i.e. the function as restricted to the surface) exhibit a parametrization quality, in terms of angle and area preservation, cuts, customizability, etc, which are similar to standard UV-maps used in the industry. At the same time, they are almost invariant to small orthogonal displacements of the surface.
The solution is not universal, but it is applicable to a wide range of shapes, and unlocks several key advantages: it makes the UV-map representation independent from the meshing of the surface; it removes the need to duplicate vertices in the mesh to encode cuts in the map; the same texture, and even the same UV-map, can be shared by multiple geometrically similar models (e.g. all levels of a LoD pyramid); UV-maps can be applied to representations other than polygonal meshes, like point clouds or set of registered range-maps or even ; UV-map construction is way more robust to mesh inconsistency.
VEUV is cheap on memory resources, usually (but not always) even cheaper than the traditional per vertex UV assignment.
From many aspects, VEUV are equivalent to traditional UV-maps. 2D textures can be authored for a VEUV-mapped model in the same way they can be authored for traditional per-vertex UV-mapped model. They can be accessed with bilinear interpolation, MIP-mapping, etc. Tangent-space normal maps: no problem.
We also provide an example of an automatic algorithm to construct a VEUV, given a target surface (but, from this point of view, VEUV cannot compete with the huge array of sophisticated interactive tools available for traditional per vertex UV-maps construction--not yet, at least).
The scientific articlewhich introduces Volume-Encoded UV-map.
Demo + dataa self-contained example application which displays 3D models + 2D textures mapped with a VEUV.
The zip includes: