racer home

HDR - High Dynamic Range

 

Home Up the bits.


Dolphinity Organiser - free planning, project management and organizing software for all your action lists

Introduction

HDR stands for high-dynamic-range. Most current hardware & software deals only with LDR rendering; using 8 bits to represent 256 levels of brightness (in Red, Green and Blue). With HDR, you go beyond these 256 levels to have more contrast. With LDR the best ratio is 256:1 (if you use a linear brightness system); with HDR 16-bits half float you can go much higher. You have to move away from thinking in 0..1 levels and starting thinking in luminance levels.

For background material, try these:

Background information on tonemapping

This gets technical. To get from HDR (16 or more bits) to 8-bits (LDR, what most monitors handle), you need tonemapping. Tonemapping is selecting which HDR lighting values you map to the limited range of monitors. A digital camera can capture around 4 stops of dynamic range; an eye can distinguish around 12 stops.

The original tonemapping in Racer was based on the exp() function. This squeezes the top part (whites) so detail is maintained. This is sometimes called the 'shoulder' of the tonemap curve. It seems you als want to have a 'toe' in the curve, to get better blacks. This is what Uncharted 2 used for example. Also, God of War III used a Reinhard method, which normally only does shoulder, but they added some stuff to add a toe (most probably, from what I gathered on the net).

Very interesting reads, if you can follow it, is here:

In Racer v0.8.22, I got Uncharted2 tone mapping to work finally. Gives a nice touch, a sort of look to things.

 


Dolphinity Organiser - free planning, project management and organizing software for all your action lists

(last updated November 13, 2012 )