diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2013-10-09 01:17:24 +0400 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2013-10-09 01:17:24 +0400 |
commit | 4abb8fde95260e692b3cd5b5b2f8bcd1d1f3be3b (patch) | |
tree | 9c3d68aa7abd18ddfef5b3af643b8a7556903e18 /source/blender/imbuf/IMB_imbuf_types.h | |
parent | 590f58d45583f36522ffbcebd68b4a6c921bebeb (diff) |
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.
Diffstat (limited to 'source/blender/imbuf/IMB_imbuf_types.h')
-rw-r--r-- | source/blender/imbuf/IMB_imbuf_types.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/imbuf/IMB_imbuf_types.h b/source/blender/imbuf/IMB_imbuf_types.h index 1734073dd6c..df9101247d5 100644 --- a/source/blender/imbuf/IMB_imbuf_types.h +++ b/source/blender/imbuf/IMB_imbuf_types.h @@ -180,6 +180,10 @@ typedef struct ImBuf { */ #define IB_CUSTOM_FLAGS_MASK 0x7ff +#ifdef WITH_PSD +#define PSD (1 << 31) +#endif + #define PNG (1 << 30) #define TGA (1 << 28) #define JPG (1 << 27) @@ -273,6 +277,9 @@ extern const char *imb_ext_image_qt[]; extern const char *imb_ext_movie[]; extern const char *imb_ext_audio[]; +/* image formats that can only be loaded via filepath */ +extern const char *imb_ext_image_filepath_only[]; + enum { IMB_COLORMANAGE_IS_DATA = (1 << 0) }; |