ATI SDK

ATI Product Information

Support for Alternate OS's

Hardware partners

Software partners

RenderMonkey

Drivers


 
 

Highlights


GPU MeshMapper (V1.0)

GPU PerfStudio (V1.2)

Samples: CrossFire Detect (update)

Samples: PostTonemapResolve

The Compressonator (version 1.41)

GPU Shader Analyzer (V1.42)

RenderMonkey™
(version 1.81) (New)


ATI Compress (version 1.6)

AMD Tootle 2.0 (New)

AMD OpenGL ES 2.0 Emulator (V1.1) (New)

HLSL2GLSL (V0.9)

AMD at GDC 2007

ATI SDK


 
 
ATI Developer - Source Code
 
Multitexture Soft Reflections on Radeon®

Figure 1 - Gloss mapped multitextured soft reflections
 
The sample RadeonSoftReflect implements an accumulation buffer technique for simulating soft reflections by using multitexturing, render target textures, and vertex fog. This is based on a Multi-pass Pipeline Rendering (MPR) technique proposed by Paul J. Diefenbach and Norman I. Badler in "Multi-Pass Pipeline Rendering: Realism For Dynamic Environments". To download this paper, and for more on his work on MPR, visit Paul Diefenbach's home page.

The soft reflection effect is simulated by stochasitcally shearing X, Y about the normal axis to the reflecting surface for multiple samples of the reflected geomtery. The samples are accumulated to generate the final reflection scatter effect. The shearing is performed by transforming world coordinates into the plane normal view at the reflection surface, shearing linearly with respect to the perpendicular distance from the surface, and transforming back into world space. Reflections are faded by applying a dark shade of vertex fog that varies linearly with the perpendicular distance from the reflection surface.

Each stochastic sample is rendered into an independent render target texture. The samples are accumulated by adding them in weighted proportions through a combination of multitexturing and alpha blending. The Radeon® can combine four samples in a single pass using its three texture stage units and the alpha blending unit. This process can be used recursively to accumulate more samples. The final scattered image is projected onto the reflecting surface using a texture transformation matrix. Figure 1 shows this effect.
 
RadeonSoftReflect Controls
  • S - Toggle between regular and larger shear displacement
  • M - Toggle between default (6) and more (12) samples
  • J - Enable/Disable random jitter added to the shear displacement
  • G - Toggle gloss mapping on/off
  • [SPACE] - Advance Frame-by-frame
  • [ENTER] - stop advancing Frame-by-frame
  • [LEFT] - Rotate camera left
  • [RIGHT] - Rotate camera right
  • [ESC] - Quit
 
Downloads
 
Note: The source code and media should be unzipped into the following recommended directory structure to ensure you can easily compile and run the executable.

Radeonxxxxxx.zip -> x:\atiddk\Direct3D\Radeonxxxxxx
media.zip -> x:\atiddk\media

RadeonSoftReflect.zip

media.zip


Back to Samples Page
 
 
 


 



©2008 Advanced Micro Devices, Inc.    |    Contact AMD    |    Terms and Conditions    |    Privacy    |    Trademark information    |    Site Map