Cylindrical and toroidal
without vertex seams -- homepages
This is the project page for the JGT (Journal of Graphic Tools) paper with the above title.
Bibtex here. A preprint is here.
A simple rendering method is presented to avoid vertex seams in cylindrical and toroidal uv-mappings used for texture mapping (a vertex seam is a vertex duplication of a polygonal mesh with different texture coordinates assigned to the two geometrically coinciding copies). As a result, the method leads to simpler, leaner, replication-free data structures. Is also allows for a higher degree of proceduralism in generation of texture coordinates.
The method is general, trivial to implement (exhaustive pseudocode is provided), very cheap on resources (with a virtually null impact on performance) and leverages only basic mechanisms widely available in most GPU implementations. An open-source implementation is made available.
Downloadable DemoThis demo shows seamless texture mapping applied to shapes topologically equivalent to cylinders and toruses. The geometries have no vertex repetitions, and texture coordinates stored as plain per-vertex attributes. The demo lets you see the artifacts that normally arise in this situation, and how they are solved by the new technique. The source code of the shaders which are employed in any given setting are shown on screen, by the press of a button.
Download: Windows exec (unzip and run) or Source code (C++, uses QT and OpenGL)