As Seen On...
Forbes Best of the Web Summer 2005
View Press Release

Site search Web



Archives

Previous Posts

Links






Wednesday, December 14, 2005

Is displacement mapping the last secret?

Free Image Hosting at www.ImageShack.us

Is displacement mapping the last secret?

"Browsing for more clues concerning the Revolution´s last secret, I came across the issue of displacement mapping, an improved version of bump mapping, if you will. This cropped up briefly in relation to the Nintendo Revolution some months ago, but I believe it has not been given enough attention. But before we go into that, let´s understand what this technique is about.

1. What is displacement mapping?

Wikipedia has this to say about displacement mapping:

Hardware displacement mapping can be interpreted as a kind of vertex-texture mapping, where the values of the texture map do not alter the pixel color, but change the position of the vertex instead. Unlike bump mapping and normal mapping, displacement mapping can in this way produce a genuine rough surface.


Let´s look at the diagram accompanying that article and allow me to repeat the above in my own words.

Free Image Hosting at www.ImageShack.us

Rather than altering the colour of the pixels, the displacement map alters their height, actually raising or lowering the mesh. The obvious advantage over bumb mapping is that it actually creates a rough surface. Bump mapping only creates the illusion of one. Whereas the effect of bump mapping depends on how you look at the rendered object (the effect will be lost in a profile view, i.e. from the side), this technique works irrespective of viewing angles.

The following image is an example of what this technique can do, courtesy of ZBrush.

Free Image Hosting at www.ImageShack.us

Displacement mapping allows you to can create elaborately detailed objects with a low polygon count. Here´s a comparison between the various mapping techniques, taken from Johannes Hirche´s 2004 Ph.D. thesis Adaptive sampling and tessellation for displacement mapping hardware, which focusses on ´efficient rendering of such displacement maps, mainly targeted at graphics hardware architectures´.I am sure you can tell that it is a significant step up from the previous techniques. However, it comes at a price. While the poly count is significantly lower, there is some strain on the CPU. Johannes Hirche writes:

Rendering displacement mapped surfaces is a process that involves a significant number of geometric and arithmetic operations. When applied to a triangle mesh, it involves prior retessellation of the base domain surface and transformation of the vertices and normals. Even on fast CPUs, it is a time consuming operation, wasting bandwidth and processing power.


This is why displacement mapping has not been widely used in real-time graphics. However, new and refined techniques allow for displacement mapping to be implemented in real-time. Again, Johannes Hirche writes:

The main focus was to explore new techniques suitable for hardware implementation in order to reduce the bandwidth strain on the system bus by moving the tessellation process onto the graphics subsystem. (...) A possibility to overcome these problems is to tessellate the individual triangles sequentially and to adaptively add triangles where necessary, until a desired level of accuracy is reached. (...) With only minor user interaction or conservatively predefined input parameters the sampling schemes produce adaptive tessellations with very low error measures.


The above covered the immediate advantages of displacement mapping and some current problems with it, as well as how they may be overcome. Let´s see why this is relevant to Nintendo and, perhaps, the Revolution." [more]

Related Link: Nintendo Displacement Mapping Patents Found

Post a Comment



Subscribe in NewsGator Online
eXTReMe Tracker