diff options
author | Brecht Van Lommel <brecht@blender.org> | 2022-05-23 21:54:09 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2022-05-23 23:09:44 +0300 |
commit | bdab538b3019406cfbd53d99bc40c4dbae27393c (patch) | |
tree | b99f06195bdbd647c275e15f72095c8c4af28eae /source/blender/imbuf/IMB_colormanagement.h | |
parent | a22ad7fbd391acc65b99336eae0df5c2a49553d9 (diff) |
Fix Eevee blackbody wrong with non-default scene linear color space
* Port over new code tables from Cycles
* Convert Rec.709 to scene linear for lookup table.
* Move code for wavelength and blackbody to IMB so they can access the
required transforms, which are not in blenlib.
* Remove clamping from blackbody shader to bypass the texture read.
Since it's variable now easiest to just always read from the texture
than pass additional parameters.
* Fold XYZ to RGB conversion into the wavelength table.
Ref T68926
Diffstat (limited to 'source/blender/imbuf/IMB_colormanagement.h')
-rw-r--r-- | source/blender/imbuf/IMB_colormanagement.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/imbuf/IMB_colormanagement.h b/source/blender/imbuf/IMB_colormanagement.h index 50af946cd95..512dc674fc7 100644 --- a/source/blender/imbuf/IMB_colormanagement.h +++ b/source/blender/imbuf/IMB_colormanagement.h @@ -514,6 +514,18 @@ enum { /** \} */ +/* -------------------------------------------------------------------- */ +/** \name Rendering Tables + * \{ */ + +void IMB_colormanagement_blackbody_temperature_to_rgb_table(float *r_table, + const int width, + const float min, + const float max); +void IMB_colormanagement_wavelength_to_rgb_table(float *r_table, const int width); + +/** \} */ + #ifdef __cplusplus } #endif |