facebook rss twitter

Review: NVIDIA's GeForce 6800 Ultra GPU

by Ryszard Sommefeldt on 14 April 2004, 00:00

Tags: NVIDIA (NASDAQ:NVDA)

Quick Link: HEXUS.net/qaxl

Add to My Vault: x

GPU Technologies - HPDR Rendering and UltraShadow II

HPDR Rendering

HPDR (high precision dynamic range) rendering is NVIDIA finally getting HDR capability in their GPU by support for 32-bit floating point rendering (the shading, blending and filtering mentioned previously) throughout, multiple render targets (which are an enabler for HDR rendering) and support for OpenEXR's data format (a format used at Industrial Light and Magic).

OpenEXR

OpenEXR is a file format for storing HDR image data. High dynamic range rendering takes into account the fact that the light range the eye can see is far in excess of the data that can be stored in certain buffer formats, especially if they are integer formats. 16-bit floating point per component goes a long way to achieving decent HDR rendering and while previous NVIDIA GPUs support the half OpenEXR integer format, the GeForce 6 is the first to support the full 16-bit floating point format.

OpenEXR is beyond my remit in explaining why it splits a 16-bit floating point number up to store image data, so hit the OpenEXR website for more information.

The how is easier. The 16-bit FP format is SM10e5, meaning there's 1 sign bit, 10 bits of mantissa and a 5-bit exponent, giving the full 16 bits of data. The sign bit tells you if the number is positive or negative. The mantissa is the fractional part of the number and the exponent is the scaling factor you can apply to the mantissa to derive the final number. The final dynamic range is 12dB, enough for good looking HDR effects like light bloom and source light glow around a dark object.

UltraShadow II

UltraShadow II is a shadow calculation accelerator. Accelerating shadow calculations relies on the fact that they've got no light or texture data.

The scene depth is bounds locked so the UltraShadow 'unit' doesn't process shadows over a depth that will never be seen. Those pixels are just dropped by the hardware, saving quite a bit of potential fillrate in theory, speeding everything up.

It's only available to OpenGL, not DirectX.