diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-09-24 15:56:07 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-09-24 15:56:07 +0400 |
commit | 9e3e12fa4e2b9038314e3f2f690a908042b835fa (patch) | |
tree | 4f5178f7e7ff7b8ff6a6ebd74459621f146adaf2 /source/blender/blenkernel/intern | |
parent | 5a5b37a4fadee5ce2c44b097a50986e0b70ca898 (diff) |
Proper fix for #32626: TIFF renders are limited to 8 bit even when we choose 16.
Color management would be applied on both of float and byte buffers on image
save in cases if file format doesn't require linear float buffer and if image
is saving as render result.
This solves both initial report issue and TODO marked in previous fix.
Also de-duplicated image buffer color managing code and gave some more
meaningful names for few functions. Also wrote documentation around this
function, so current assumptions about spaces should be clear enough.
Made regression tests by saving EXR/PNG images to all supported format and
rendering OpenGL/Normal animation, in all cases seems everything is fine,
but more tests for sure would be welcome.
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r-- | source/blender/blenkernel/intern/image.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c index 97278f14d83..e73f4fa79af 100644 --- a/source/blender/blenkernel/intern/image.c +++ b/source/blender/blenkernel/intern/image.c @@ -1031,13 +1031,12 @@ int BKE_imtype_supports_quality(const char imtype) return 0; } -int BKE_imtype_supports_float(const char imtype) +int BKE_imtype_requires_linear_float(const char imtype) { switch (imtype) { case R_IMF_IMTYPE_CINEON: case R_IMF_IMTYPE_DPX: case R_IMF_IMTYPE_RADHDR: - case R_IMF_IMTYPE_TIFF: /* uses the float buffer to write 16bits per channel */ case R_IMF_IMTYPE_OPENEXR: case R_IMF_IMTYPE_MULTILAYER: return TRUE; |