appleseedhq / appleseed

A modern open source rendering engine for animation and visual effects
https://appleseedhq.net/
MIT License
2.19k stars 328 forks source link

Consider making linear RGB the default when importing textures? #218

Open dictoon opened 11 years ago

dictoon commented 11 years ago

This was initially suggered by Wally: http://appleseedhq.net/node/643#comment-855

The rationale is that alpha, bump and normal maps must be set to use linear RGB. Maybe the default color space should be a user setting?

What should be the default color space for colors? It would make sense to stick to sRGB.

pberto commented 11 years ago

I think everything should be linear for inputs. sRGB should be set in the viewer no?

On Wednesday, November 21, 2012, François Beaune wrote:

This was initially suggered by Wally: http://appleseedhq.net/node/643#comment-855

The rationale is that alpha, bump and normal maps must be set to use linear RGB. Maybe the default color space should be a user setting?

What should be the default color space for colors? It would make sense to stick to sRGB.

— Reply to this email directly or view it on GitHubhttps://github.com/jupiter-jazz/appleseed/issues/218.

pbd

paolo berto durante space cowboy // jupiter jazz ltd // hong kong https://atomkraft.hk

dictoon commented 11 years ago

That's the point. appleseed does color space conversion (and "linearization") automatically and on-the-fly. Most color textures are sRGB since they "look good" on the screen, i.e. they're not linear. If they are marked as sRGB, appleseed will automatically linearize them (convert them to linear RGB), do the computations, then convert back to the desired output color space (usually sRGB).

The thing is, alpha maps, bump maps and normal maps don't contain colors, but coded values: they shouldn't be altered. The way to do that is to mark them as linear RGB.

So, the only question is what is the default color space value when importing a texture: ideally it would be sRGB for color textures since that's the most common case, and linear RGB for alpha/bump/normal maps. Unfortunately there's no way to distinguish the two cases when importing a texture in appleseed.studio. Maybe that's what needs to be changed.

On Wed, Nov 21, 2012 at 1:12 PM, Paolo Berto notifications@github.comwrote:

I think everything should be linear for inputs. sRGB should be set in the viewer no?

On Wednesday, November 21, 2012, François Beaune wrote:

This was initially suggered by Wally: http://appleseedhq.net/node/643#comment-855

The rationale is that alpha, bump and normal maps must be set to use linear RGB. Maybe the default color space should be a user setting?

What should be the default color space for colors? It would make sense to stick to sRGB.

— Reply to this email directly or view it on GitHub< https://github.com/jupiter-jazz/appleseed/issues/218>.

pbd

paolo berto durante space cowboy // jupiter jazz ltd // hong kong https://atomkraft.hk

— Reply to this email directly or view it on GitHubhttps://github.com/jupiter-jazz/appleseed/issues/218#issuecomment-10594693.

dictoon commented 8 years ago

A sane default should probably be along these lines: sRGB for low dynamic range formats such as PNG, and linear for high dynamic range formats such as OpenEXR.