Image: Add OIIO support APIs #105519

Merged
Jesse Yurkovich merged 7 commits from deadpin/blender:oiio-support into main 2023-03-14 04:42:29 +01:00

7 Commits

Author SHA1 Message Date
Jesse Yurkovich 420aedbb84 Address linux build warnings about -Wmissing-include-dirs
buildbot/vexp-code-patch-coordinator Build done. Details
2023-03-13 15:57:12 -07:00
Jesse Yurkovich 913c365d7d Merge remote-tracking branch 'origin/main' into oiio-support
buildbot/vexp-code-patch-coordinator Build done. Details
2023-03-12 17:22:12 -07:00
Jesse Yurkovich 7373d9bf86 Feedback: pwrite changes 2023-03-12 16:35:12 -07:00
Jesse Yurkovich 6ddfd08b13 Feedback: Use a namespace and include BLI_sys_types.h 2023-03-12 00:24:27 -08:00
Jesse Yurkovich 4845d18e4a Feedback: Remove imb_ext_image_filepath_only and related APIs 2023-03-11 23:02:10 -08:00
Jesse Yurkovich c1fa094a7a Merge branch 'main' of projects.blender.org:blender/blender into oiio-support 2023-03-10 16:45:56 -08:00
Jesse Yurkovich ab7c93e629 Image: Add OIIO support APIs
This adds a new set of APIs supporting the loading and saving of image
formats through OIIO. It makes use of the recent IOProxy work in OIIO
to align with the existing Blender image loading/saving machinery.

The support code here has been prototyped to work with ~7 of our image
formats so far[1]. It includes centralized handling of `IB_test`,
`IB_mem`, and `IB_metadata` flags, which the existing code did not
handle consistently or at all depending on the format.

The PSD format (`format_psd.cc`) is included here since the prior
location of the code has been restructured away. It serves as an example
of how the loading code typically flows for all the other formats.[2]

----
This continues the work for #101413

[1] The BMP,DDS,HDR,PNG,TIFF,and TARGA formats will be sent for review after this
[2] Incidentally this will address #70495 for "free"
2023-03-06 19:09:12 -08:00