I'm working with an in-development system that uses
.hdr environments (equirectangular projection) to provide image-based lighting (IBL) to a 3D rendering. I'm trying to understand what range of values can be stored in an
.hdr image, and how to edit them in Photoshop.
In Photoshop, I can open (or create)
.hdr images with 32-bits per channel. In this mode, 'normal' colors have RGB values in the range
1.0. However, I can pick colors that go as high as
20.0 in each channel. I thus assumed that a value of
20.0 was the maximum that could be stored in a
However, if I fill a region with brightest white (
20.0), and then fill again with (
4.0) on Multiply mode, I end up with colors that have a value of ~80 (as reported by the Info palette in 32-bit mode). Do it again and I get ~320. I can keep repeating the multiplication and the values shown in the Info palette get successively larger, until the Info palette display maxes out at -231 (
Some of the free
.hdr panoramas that I have found online max out with the sun at around
20 brightness. Some of them, however, max out at
16000 or so. The result is that there are massive tone mapping differences needed between different environments that should be equivalent, e.g. both are a sunny day outdoors. I want to normalize the maps we use and generate, but I first need to figure out what "good" values are for the sun, sky, and ground.
- What is the largest channel value represented in a
- What is the significance of Photoshop's
20.0maximum for a color?
Edit: Manually entering RGB channel values of
20 and painting one pixel using them shows the following results. The fifth square was painted with RGB of
Normal mode, and then painted again with RGB of
Multiply mode. The color of this pixel is shown at the top of the Info palette. (The first RGB entry is set to
Actual Color, while the second is set to
RGB; both readouts are set to 32-bit, as shown.)
Note that these colors are obtained by typing values in the RGB channels of the Color Picker (section "D" in the picture below from Adobe's help), NOT by using the "Intensity: [______] stops" entry. Typing in RGB values of
20.0 sets the Intensity to
4.73 stops. Entering larger intensity values—up to a maximum of 20.0—still results in the RGB values showing
20.0 each in the color picker, but the resulting paint showing larger RGB values of up to 786432 in the Info palette.
As described above, however, even this "largest" value can be made even larger by multiplying the color.