Jump to content

Hi There

Welcome to Klub Exile. If you happened to make your way to the site either from Lovers Lab or a Search on Google, we are glad you found us.  To unlock the entire site you will need to have a account registered.  Don't worry it is free but in the mean time you can read up on why we made the site and other little tidbits.  Feel free to join or Discord Server also if you have any more questions.  Thanks for stopping by and See You on the other side.

admin admin

LDR vs HDR


pervokpetr

Recommended Posts

LDR vs HDR

Lighting in Low Dynamic Range (LDR). Monitors can show colors in range 0...1, where 0 is a max black that monitor can produce and 1 max white that monitor can produce. This range are called LDR. All old games renders perform rendering in LDR space. If you will keep in mind that lighting from different sources across surface are accumulated, then you will understand that developers should control that lighting do not become more than 1, because all values above 1 will be clamped and monitor will show only white color. The villa without hook is a old classic LDR graphic example - boring colors, boring lighting and so on. But in real life we have a huge dynamic range of lighting and game developers decided (after it become possible) perform shading in High Dynamic Range, and this is lead to main question or problem - how to present HDR result in LDR monitor. For example, if I disable HDR technique in hook5, then in SpaceshipRoom I will see only white color, because every pixel will have lighting value more then 1. Answer very simple - need scale HDR image to LDR and then present it on monitor surface, this technique was called - HDR Tone Mapping. And here all simple things are ended.

HDR in photography vs HDR in games
In photography best practice is a keep whole HDR, so tone mapping very simple, find maximum luminance of image and then devide color of every pixel on this maximum luminance and with this you will get picture with good contrast and colors (+/-) in range 0....1.
In games we have dynamic picture where balance of bright and dark regions changed significally. If I will try use maximim luminance to scale HDR to LDR, then I will get dark picture, due to highlights with huge lighting value, moreover overall brighness of picture will jumping. At this point different techniques of tone mapping become occure with outstanding frequncy, and for now this question not closed.

HDR problem
In last post I told that I found six different equations for tonemapping, I tested all of them and I want say that current in hook produce better result, but it still has some problem that bother me a lot. This thehnique use logariphmic average luminance(more stable) and Uncharted2 tonemapping function(more saturated/vibrance color in dark areas). So what the problem - not correct scaling HDR to LDR, if you will look at picture below, you will see that increasing intensity of sunlight, produce more and more overbrighted picture and tonemapping do not scale it properly. In last frame I showed how it should looks, where I changed exposure manually, but this should be done by tone mapping function and the exposure value should be used only for correction (more brighter scene or more darker).
image.png.fb0bd500a118bb847cc1c767c668375e.png
Actually, for this game it has no significant matter - we did not have dynamic changes in brightness levels, so we can adjust exposure on level creation stage. But if this was a game with open world, where open spaces arranged with closed spaces, with day time changes - such tonemapping could became a real problem. This is why I can't relax and again and again back to HDR question.
On second picture I showed that HDRFunc 0, perform scaling more correct, and such result much closer to my expectations, but this func has another flaws - significant unstability in overall brightness of final image.
image.png.8b60d46b5cbcf8fcf7b09ea544c7263a.png
So I want result more like HDRFuncType-0, but with stability of HDRFuncType-1 - and this is a problem, because I have no clue how to do it..... http://modsgarden.cc/Smileys/clabicons/lipsrsealed.gif

Further
With this I decided to leave this question (again) as it is for now. Maybe I will spend one more day for experimenting with tonemapping, but then I will start work with NVidia Hairworks and other tasks that I'm still need resolve.

  • Thumbs Up 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

WARNING! Adult Only Content You must be 18 years of age or older to enter. By accepting you agree to Klub Exile's Terms of Use and Guidelines upon creating an account.