Citizendia

Displacement mapping
Displacement mapping

Displacement mapping is an alternative computer graphics technique in contrast to bump mapping, normal mapping, and parallax mapping, using a (procedural-) texture- or height map to cause an effect where the actual geometric position of points over the textured surface are displaced, often along the local surface normal, according to the value the texture function evaluates to at each point on the surface. ' Bump mapping' is a Computer graphics technique where at each Pixel, a perturbation to the Surface normal of the object being rendered is In 3D computer graphics, normal mapping is an application of the technique known as Bump mapping. Parallax mapping (also called offset mapping or virtual displacement mapping) is an enhancement of the Bump mapping or Normal mapping techniques A procedural texture is a Computer generated image created using an Algorithm intended to create a realistic representation of natural elements such as Wood Texture mapping is a method for adding detail surface texture or colour to a computer-generated graphic or 3D model. In Computer graphics, a heightmap or heightfield is a raster image used to store values such as surface Elevation data for display in In Mathematics, a phenomenon is sometimes said to occur locally if roughly speaking it occurs on sufficiently small or arbitrarily small Neighborhoods It gives surfaces a great sense of depth and detail, permitting in particular self-occlusion, self-shadowing and silhouettes; on the other hand, it is the most costly of this class of techniques owing to the large amount of additional geometry.

For years, displacement mapping was a peculiarity of high-end rendering systems like PhotoRealistic RenderMan, while realtime APIs, like OpenGL and DirectX, lacked this possibility. PhotoRealistic RenderMan, or PRMan for short is a proprietary photorealistic RenderMan -compliant renderer OpenGL ( Open G raphics L ibrary is a standard specification defining a cross-language Cross-platform API for writing applications that produce Microsoft DirectX is a collection of Application programming interfaces (APIs for handling tasks related to Multimedia, especially Game programming and One of the reasons for this absence is that the original implementation of displacement mapping required an adaptive tessellation of the surface in order to obtain micropolygons whose size matched the size of a pixel on the screen. Adaptive behavior is a type of Behavior that is used to adapt to another type of behavior or situation A tessellation or tiling of the plane is a collection of Plane figures that fills the plane with no overlaps and no gaps In 3D computer graphics, a micropolygon (or µ-polygon is a Polygon that is very small relative to the image being rendered

Meaning of the term in different contexts

Displacement mapping includes the term mapping which refers to a texture map being used to modulate the displacement strength. Texture mapping is a method for adding detail surface texture or colour to a computer-generated graphic or 3D model. Modulate is Bob Mould 's fifth solo album released in 2002 Although a few tracks on his previous release The Last Dog and Pony Show, had featured The displacement direction is usually the local surface normal. Today, many renderers allow programmable shading which can create high quality (multidimensional) procedural textures and patterns at arbitrary high frequencies. Rendering is the process of generating an image from a model, by means of computer programs A shader in the field of Computer graphics is a set of software instructions which is used by the graphic resources primarily to perform rendering effects A procedural texture is a Computer generated image created using an Algorithm intended to create a realistic representation of natural elements such as Wood Texture synthesis is the process of Algorithmically constructing a large Digital image from a small digital sample image by taking advantage of its structural content The use of the term mapping becomes arguable then, as no texture map is involved anymore. Therefore, the broader term displacement is often used today to refer to a super concept that also includes displacement based on a texture map.

Renderers using the REYES algorithm, or similar approaches based on micropolygons, have allowed displacement mapping at arbitrary high frequencies since they became available almost 20 years ago. Reyes rendering is a computer software architecture used in 3D computer graphics to render photo-realistic images In Mathematics, Computing, Linguistics and related subjects an algorithm is a sequence of finite instructions often used for Calculation In 3D computer graphics, a micropolygon (or µ-polygon is a Polygon that is very small relative to the image being rendered The established meaning of the term over the last 20 years was therefore "displacement of surfaces at arbitrary (high) frequencies in arbitrary directions with arbitrary magnitude".

The first commercially available renderer to implement a micropolygon displacement mapping approach through REYES was Pixar's PhotoRealistic RenderMan. Pixar Animation Studios is a CGI animation production company based in Emeryville California. PhotoRealistic RenderMan, or PRMan for short is a proprietary photorealistic RenderMan -compliant renderer Micropolygon renderers commonly tessellate geometry themselves at a granularity suitable for the image being rendered. That is: the modeling application delivers high-level primitives to the renderer. Examples include true NURBS- or subdivision surfaces. Non-uniform rational B-spline ( NURBS) is a mathematical model commonly used in Computer graphics for generating and representing curves and surfaces A subdivision surface, in the field of 3D computer graphics, is a method of representing a smooth Surface via the specification of a coarser Piecewise linear The renderer (such as the modo renderer) then tessellates this geometry into micropolygons at render time using view-based constraints derived from the image being rendered. modo is an advanced polygon Subdivision surface, modeling sculpting 3D painting animation and rendering package developed by Luxology LLC.

Other renderers that require the modeling application to deliver objects pre-tessellated into arbitrary polygons or even triangles have defined the term displacement mapping as moving the vertices of these polygons. Often the displacement direction is also limited to the surface normal at the vertex. While conceptually similar, those polygons are usually a lot larger than micropolygons. The quality archived from this approach is thus limited by the geometry's tessellation density a long time before the renderer gets access to it.

This difference between displacement mapping in micropolygon renderers vs. displacement mapping in a non-tessellating (macro)polygon renderers can often lead to confusion in conversations between people whose exposure to each technology or implementation is limited. Even more so, as in recent years, many non-micropolygon renderers have added the ability to do displacement mapping of a quality similar to what a micropolygon renderer is able to deliver, naturally. To distinguish between the crude pre-tessellation-based displacement these renderers did before, the term sub-pixel displacement got introduced to describe this feature.

Sub-pixel displacement commonly refers to finer re-tessellation of geometry that was already tessellated into polygons. This re-tessellation results in micropolygons or often microtriangles. The vertices of these then get moved along their normals to archive the displacement mapping.

True micropolygon renderers have always been able to do what sub-pixel-displacement achieved only recently, but at a higher quality and in arbitrary displacement directions.

Recent developments seem to indicate that some of the renderers which use sub-pixel displacement move towards supporting higher level geometry too. As the vendors of these renderers are likely to keep using the term sub-pixel displacement, this will probably lead to more obfuscation of what displacement mapping really stands for, in 3D computer graphics. 3D computer graphics (in contrast to 2D computer graphics) are graphics that use a three-dimensional representation of geometric data that is stored in the computer

In reference to Microsoft's proprietary High Level Shader Language, displacement mapping can be interpreted as a kind of "vertex-texture mapping" where the values of the texture map do not alter pixel colors (as is much more common), but instead change the position of vertices. The High Level Shader Language or High Level Shading Language (HLSL is a proprietary Shading language developed by Microsoft for use with the Microsoft Texture mapping is a method for adding detail surface texture or colour to a computer-generated graphic or 3D model. Unlike bump, normal and parallax mapping, all of which can be said to "fake" the behavior of displacement mapping, in this way a genuinely rough surface can be produced from a texture. It has to be used in conjunction with adaptive tessellation techniques (that increases the number of rendered polygons according to current viewing settings) to produce highly detailed meshes. A tessellation or tiling of the plane is a collection of Plane figures that fills the plane with no overlaps and no gaps

Further reading

See also

Texture mapping is a method for adding detail surface texture or colour to a computer-generated graphic or 3D model. ' Bump mapping' is a Computer graphics technique where at each Pixel, a perturbation to the Surface normal of the object being rendered is In 3D computer graphics, normal mapping is an application of the technique known as Bump mapping. Parallax mapping (also called offset mapping or virtual displacement mapping) is an enhancement of the Bump mapping or Normal mapping techniques In Cartography, relief mapping, or shaded relief, is a technique of displaying 3D terrain shape by simulating shadows formed by a single light source shining obliquely In Computer graphics, a heightmap or heightfield is a raster image used to store values such as surface Elevation data for display in A Sculpted Prim (or Sculptie) is a Second Life 3D primitive object whose shape is determined by a texture
© 2009 citizendia.org; parts available under the terms of GNU Free Documentation License, from http://en.wikipedia.org