Fixes for alpha mode do_versions code
authorSergey Sharybin <sergey.vfx@gmail.com>
Tue, 19 Feb 2013 08:37:08 +0000 (08:37 +0000)
committerSergey Sharybin <sergey.vfx@gmail.com>
Tue, 19 Feb 2013 08:37:08 +0000 (08:37 +0000)
commite5a135e0b26d7a268e7507ffb1be2f2fcc1b0b9c
tree82bd3feee50e121dd1e5dcbd6957b1e0ba3ac742
parentc68d5325d0706305937372e42bd981197440de24
Fixes for alpha mode do_versions code

Before this change only old flag "Premultiply" was used to
detect alpha mode, which is not enough actually.

Now the logic here is:

- If "Premultiply" was enabled it is likely float image with
  straight alpha, which shall be premultiplied before usage.

  In this case image/sequence Alpha Mode is set to Straight.

- Otherwise use default alpha mode for image format based on
  an extension. This could fail in some cases like TIFF, but
  this wasn't handled fully correct in older blender anyway.

Initial discovered issue was that EXR images saved in older
Blender versions were set to Straight alpha mode, which is
obviously a straight way to lots of headache.
source/blender/blenkernel/BKE_image.h
source/blender/blenkernel/BKE_sequencer.h
source/blender/blenkernel/intern/image.c
source/blender/blenkernel/intern/sequencer.c
source/blender/blenloader/intern/readfile.c