Antony Riakiotakis <kal...@...>


I'm trying to hook up OCIO properly to blender's color picker system and allow choosing an arbitrary color tranform before uploading the color picker colors to our display device.
In blender, by default, we have a standard linear reference color space with srgb primaries, and our display transform is non-linear srgb.

The issue I am having is that I suspect that defining a color picker color space and then defining a processor from that space to display space will not help at all since it will void the transform to the color picker color space. I could probably write additional color spaces that "act" on display color space but I imagine that if I did that then OCIO would first convert my colors to the display space and then perform the transforms (I may misunderstand something here, please correct me if I'm wrong).
Is there a way to keep the color picker space transform and upload properly to the device by applying the device dependent transform without transforming to the device color space?

I have digged a few emails and found that OCIO::ROLE_COLOR_PICKER may do what I want, but found no comprehensive examples. Can someone point me to an example and/or explain how to use something like this?