Autodesk / sitoa

Arnold plugin for Softimage
Apache License 2.0
33 stars 16 forks source link

Color Managers #41

Closed JenusL closed 5 years ago

JenusL commented 5 years ago

Okay, so this is a pretty big one and it's really an important feature for our studio that has been rendering in ACEScg for several years. Now we can integrate Softimage seamlessly in the color pipeline.

To dynamically fill the drop downs with the available color spaces, SItoA creates a new Arnold universe in order to get all OCIO color spaces through the Arnold API. It recognizes the OCIO environment variable, but that can be overridden if you manually pick a config. Error message is shown if there are no color spaces found in the path.

ocio_color_manager_env

If you want to specify your own chromaticities, it needs to be a string of 8 floats separated by spaces.

Testsuite passed. This closes #31

JenusL commented 5 years ago

I renamed the PR while I tried out some things but everything checks out so I didn't change anything. Any feedback on this? If not, it can be merged.

sjannuz commented 5 years ago

I had finally the time to try building the branch myself, because I wanted to have a closer look at this (great job, @JenusL ). We have a few build errors, some AI_ERROR defines that were removed in Arnold 5.1, and AiRender now expecting an AtRenderMode. Do you see them ?

JenusL commented 5 years ago

@sjannuz No I don't see them. Do you mind sharing the last three lines of your custom.py so that we can have the same build settings?

JenusL commented 5 years ago

@sjannuz You must have checked out some very old branch or something. I fixed that a long time ago here: https://github.com/Autodesk/sitoa/pull/29/commits/9c73fa96a938c43754ff79c55931516fc8106859

sjannuz commented 5 years ago

DOH, I was on your master branch @JenusL . Sorry for the noise.

JenusL commented 5 years ago

Since the default color manager is referred to as the "Built-in" one in the Arnold documentation, I renamed it to Built-in instead of None. Also, one thing to note, is that sib_image_clip set in sRGB mode is not automatically grabbing the color space specified in the OCIO sRGB Color Space render options. It's actually looking for a color space named sRGB in the OCIO config. I don't think I will look into making sib_image_clip set the correct value from options. Instead you just have to set a role or alias or something in your OCIO config that is named "sRGB"

JenusL commented 5 years ago

@sjannuz A wish to the core team would be that if the OCIO color manager doesn't find a color space named sRGB or Rec709 (the two supported by the built-in manager), it would fall back to the color space specified as color_space_narrow in the color_manager_ocio node.