Blender Git Loki
Git Commits -> Revision 4abb8fd
Revision 4abb8fd by Dalai Felinto (master) October 8, 2013, 21:17 (GMT) |
Photoshop PSD support We now support the combined layer of Photoshop files (stored as layer 0 in the file). This way users can keep their files as multilayer PSD and Blender always handle them as flat images. For perfect alpha this requires an OpenImageIO update: https://github.com/OpenImageIO/oiio/commit/342cc2633ff590a3bb278481c61ae798c7148361 Photoshop sample files: https://github.com/OpenImageIO/oiio-images Brecht has some pending fixes to push for OIIO as well, so we may as well wait to update our libraries. What works: =========== * 8bit images (with or without alpha) * 16bits images (alpha discarded) * Photoshop files saved with 'Maximum Compatibility' * Cycles, Blender internal, BGE (and player) Known limitations (due to OIIO dependency): ========================= * Images with less than 4 channels show a wrong thumbnail (bug may be in OIIO) * Packed images are not supported * We do not write PSD files. Note: old Blenders have support for PSD via Quicktime library. But due to license issues this was discontinued. Many thanks for Brecht van Lommel for reviewing the patch, suggesting multiple improvements and to help solving the alpha issue. |
Commit Details:
Full Hash: 4abb8fde95260e692b3cd5b5b2f8bcd1d1f3be3b
SVN Revision: 60621
Parent Commit: 590f58d
Lines Changed: +645, -72
5 Added Paths:
/source/blender/imbuf/intern/oiio/CMakeLists.txt (+54, -0) (View)
/source/blender/imbuf/intern/oiio/openimageio_api.cpp (+257, -0) (View)
/source/blender/imbuf/intern/oiio/openimageio_api.h (+53, -0) (View)
/source/blender/imbuf/intern/oiio/openimageio_stub.cpp (+35, -0) (View)
/source/blender/imbuf/intern/oiio/SConscript (+47, -0) (View)
/source/blender/imbuf/intern/oiio/openimageio_api.cpp (+257, -0) (View)
/source/blender/imbuf/intern/oiio/openimageio_api.h (+53, -0) (View)
/source/blender/imbuf/intern/oiio/openimageio_stub.cpp (+35, -0) (View)
/source/blender/imbuf/intern/oiio/SConscript (+47, -0) (View)
21 Modified Paths:
/CMakeLists.txt (+7, -0) (Diff)
/SConstruct (+1, -0) (Diff)
/source/blender/blenkernel/intern/image.c (+6, -0) (Diff)
/source/blender/CMakeLists.txt (+4, -0) (Diff)
/source/blender/editors/space_file/CMakeLists.txt (+4, -0) (Diff)
/source/blender/editors/space_image/CMakeLists.txt (+3, -0) (Diff)
/source/blender/imbuf/CMakeLists.txt (+9, -0) (Diff)
/source/blender/imbuf/IMB_imbuf.h (+1, -1) (Diff)
/source/blender/imbuf/IMB_imbuf_types.h (+7, -0) (Diff)
/source/blender/imbuf/intern/colormanagement.c (+2, -2) (Diff)
/source/blender/imbuf/intern/filetype.c (+26, -17) (Diff)
/source/blender/imbuf/intern/IMB_filetype.h (+3, -0) (Diff)
/source/blender/imbuf/intern/readimage.c (+86, -48) (Diff)
/source/blender/imbuf/intern/util.c (+20, -3) (Diff)
/source/blender/imbuf/intern/writeimage.c (+1, -1) (Diff)
/source/blender/makesdna/DNA_scene_types.h (+1, -0) (Diff)
/source/blender/makesrna/intern/CMakeLists.txt (+4, -0) (Diff)
/source/blender/makesrna/intern/rna_scene.c (+8, -0) (Diff)
/source/blender/python/intern/CMakeLists.txt (+4, -0) (Diff)
/source/blenderplayer/CMakeLists.txt (+1, -0) (Diff)
/source/creator/CMakeLists.txt (+1, -0) (Diff)
/SConstruct (+1, -0) (Diff)
/source/blender/blenkernel/intern/image.c (+6, -0) (Diff)
/source/blender/CMakeLists.txt (+4, -0) (Diff)
/source/blender/editors/space_file/CMakeLists.txt (+4, -0) (Diff)
/source/blender/editors/space_image/CMakeLists.txt (+3, -0) (Diff)
/source/blender/imbuf/CMakeLists.txt (+9, -0) (Diff)
/source/blender/imbuf/IMB_imbuf.h (+1, -1) (Diff)
/source/blender/imbuf/IMB_imbuf_types.h (+7, -0) (Diff)
/source/blender/imbuf/intern/colormanagement.c (+2, -2) (Diff)
/source/blender/imbuf/intern/filetype.c (+26, -17) (Diff)
/source/blender/imbuf/intern/IMB_filetype.h (+3, -0) (Diff)
/source/blender/imbuf/intern/readimage.c (+86, -48) (Diff)
/source/blender/imbuf/intern/util.c (+20, -3) (Diff)
/source/blender/imbuf/intern/writeimage.c (+1, -1) (Diff)
/source/blender/makesdna/DNA_scene_types.h (+1, -0) (Diff)
/source/blender/makesrna/intern/CMakeLists.txt (+4, -0) (Diff)
/source/blender/makesrna/intern/rna_scene.c (+8, -0) (Diff)
/source/blender/python/intern/CMakeLists.txt (+4, -0) (Diff)
/source/blenderplayer/CMakeLists.txt (+1, -0) (Diff)
/source/creator/CMakeLists.txt (+1, -0) (Diff)