Blender Git Loki
Git Commits -> Revision d7f55cf
Revision d7f55cf by Sergey Sharybin (master) September 14, 2012, 14:36 (GMT) |
Color Management: image buffer loading reworked Before this color space settings in image/movie clip data blocks defined space in which loaded image buffer is, based on whether this buffer contains float or byte buffer. This didn't work well for formats like 16bit PNG, which are in fact non-linear formats but were represented in Blender as float buffers. Now image buffer loader is responsible to set up input default color space for image/movie clip data blocks, which could be based on format itself only or on particular file properties. This means image/movie clip data blocks' input colorspace will be initialized at time first image buffer is loaded. This also resolves old confusing thing with image buffer's profile flag, which in could have been non-linear for image buffer which contained float buffer only -- this happened in mentioned case of 16 bit PNG format, i.e. Now float buffer would always be linear which should make it easier to get rid of image buffer's profile. |
Commit Details:
Full Hash: d7f55cff20ff31e80d95c7837e9b45205dea273f
SVN Revision: 50592
Parent Commit: 58da4a1
Lines Changed: +384, -220
40 Modified Paths:
/source/blender/blenkernel/BKE_image.h (+3, -1) (Diff)
/source/blender/blenkernel/intern/image.c (+7, -16) (Diff)
/source/blender/blenkernel/intern/movieclip.c (+9, -8) (Diff)
/source/blender/blenkernel/intern/ocean.c (+4, -3) (Diff)
/source/blender/blenkernel/intern/sequencer.c (+16, -8) (Diff)
/source/blender/collada/ImageExporter.cpp (+1, -1) (Diff)
/source/blender/editors/interface/interface_icons.c (+3, -3) (Diff)
/source/blender/editors/render/render_preview.c (+6, -3) (Diff)
/source/blender/editors/space_file/filelist.c (+1, -1) (Diff)
/source/blender/editors/space_image/image_ops.c (+6, -6) (Diff)
/source/blender/imbuf/IMB_colormanagement.h (+5, -5) (Diff)
/source/blender/imbuf/IMB_imbuf.h (+7, -6) (Diff)
/source/blender/imbuf/intern/anim_movie.c (+27, -6) (Diff)
/source/blender/imbuf/intern/bmp.c (+6, -1) (Diff)
/source/blender/imbuf/intern/cineon/cineon_dpx.c (+10, -5) (Diff)
/source/blender/imbuf/intern/colormanagement.c (+69, -62) (Diff)
/source/blender/imbuf/intern/dds/dds_api.cpp (+10, -1) (Diff)
/source/blender/imbuf/intern/dds/dds_api.h (+3, -1) (Diff)
/source/blender/imbuf/intern/filetype.c (+16, -14) (Diff)
/source/blender/imbuf/intern/IMB_anim.h (+1, -0) (Diff)
/source/blender/imbuf/intern/IMB_colormanagement_intern.h (+6, -0) (Diff)
/source/blender/imbuf/intern/IMB_filetype.h (+13, -12) (Diff)
/source/blender/imbuf/intern/indexer.c (+2, -1) (Diff)
/source/blender/imbuf/intern/iris.c (+7, -1) (Diff)
/source/blender/imbuf/intern/jp2.c (+7, -1) (Diff)
/source/blender/imbuf/intern/jpeg.c (+7, -2) (Diff)
/source/blender/imbuf/intern/openexr/openexr_api.cpp (+6, -1) (Diff)
/source/blender/imbuf/intern/openexr/openexr_api.h (+1, -1) (Diff)
/source/blender/imbuf/intern/png.c (+19, -18) (Diff)
/source/blender/imbuf/intern/radiance_hdr.c (+6, -1) (Diff)
/source/blender/imbuf/intern/readimage.c (+30, -8) (Diff)
/source/blender/imbuf/intern/targa.c (+6, -2) (Diff)
/source/blender/imbuf/intern/thumbs.c (+6, -5) (Diff)
/source/blender/imbuf/intern/tiff.c (+7, -1) (Diff)
/source/blender/imbuf/intern/writeimage.c (+31, -5) (Diff)
/source/blender/makesrna/intern/rna_image_api.c (+2, -0) (Diff)
/source/blender/makesrna/intern/rna_sequencer_api.c (+2, -1) (Diff)
/source/blender/render/intern/source/pipeline.c (+2, -1) (Diff)
/source/blender/windowmanager/intern/wm_operators.c (+1, -1) (Diff)
/source/blender/windowmanager/intern/wm_playanim.c (+13, -7) (Diff)
/source/blender/blenkernel/intern/image.c (+7, -16) (Diff)
/source/blender/blenkernel/intern/movieclip.c (+9, -8) (Diff)
/source/blender/blenkernel/intern/ocean.c (+4, -3) (Diff)
/source/blender/blenkernel/intern/sequencer.c (+16, -8) (Diff)
/source/blender/collada/ImageExporter.cpp (+1, -1) (Diff)
/source/blender/editors/interface/interface_icons.c (+3, -3) (Diff)
/source/blender/editors/render/render_preview.c (+6, -3) (Diff)
/source/blender/editors/space_file/filelist.c (+1, -1) (Diff)
/source/blender/editors/space_image/image_ops.c (+6, -6) (Diff)
/source/blender/imbuf/IMB_colormanagement.h (+5, -5) (Diff)
/source/blender/imbuf/IMB_imbuf.h (+7, -6) (Diff)
/source/blender/imbuf/intern/anim_movie.c (+27, -6) (Diff)
/source/blender/imbuf/intern/bmp.c (+6, -1) (Diff)
/source/blender/imbuf/intern/cineon/cineon_dpx.c (+10, -5) (Diff)
/source/blender/imbuf/intern/colormanagement.c (+69, -62) (Diff)
/source/blender/imbuf/intern/dds/dds_api.cpp (+10, -1) (Diff)
/source/blender/imbuf/intern/dds/dds_api.h (+3, -1) (Diff)
/source/blender/imbuf/intern/filetype.c (+16, -14) (Diff)
/source/blender/imbuf/intern/IMB_anim.h (+1, -0) (Diff)
/source/blender/imbuf/intern/IMB_colormanagement_intern.h (+6, -0) (Diff)
/source/blender/imbuf/intern/IMB_filetype.h (+13, -12) (Diff)
/source/blender/imbuf/intern/indexer.c (+2, -1) (Diff)
/source/blender/imbuf/intern/iris.c (+7, -1) (Diff)
/source/blender/imbuf/intern/jp2.c (+7, -1) (Diff)
/source/blender/imbuf/intern/jpeg.c (+7, -2) (Diff)
/source/blender/imbuf/intern/openexr/openexr_api.cpp (+6, -1) (Diff)
/source/blender/imbuf/intern/openexr/openexr_api.h (+1, -1) (Diff)
/source/blender/imbuf/intern/png.c (+19, -18) (Diff)
/source/blender/imbuf/intern/radiance_hdr.c (+6, -1) (Diff)
/source/blender/imbuf/intern/readimage.c (+30, -8) (Diff)
/source/blender/imbuf/intern/targa.c (+6, -2) (Diff)
/source/blender/imbuf/intern/thumbs.c (+6, -5) (Diff)
/source/blender/imbuf/intern/tiff.c (+7, -1) (Diff)
/source/blender/imbuf/intern/writeimage.c (+31, -5) (Diff)
/source/blender/makesrna/intern/rna_image_api.c (+2, -0) (Diff)
/source/blender/makesrna/intern/rna_sequencer_api.c (+2, -1) (Diff)
/source/blender/render/intern/source/pipeline.c (+2, -1) (Diff)
/source/blender/windowmanager/intern/wm_operators.c (+1, -1) (Diff)
/source/blender/windowmanager/intern/wm_playanim.c (+13, -7) (Diff)