Open Color IO Support

OpenColorIO (OCIO) is a complete color management solution geared towards motion picture production with an emphasis on visual effects and computer animation. OCIO provides a straightforward and consistent user experience across all supporting applications while allowing for sophisticated back-end configuration options suitable for high-end production usage. OCIO is compatible with the Academy Color Encoding Specification (ACES) and is LUT-format agnostic, supporting many popular formats.

This documentation won’t describe how OCIO works and what it works with. Please check http://opencolorio.org/ website for this.

The PresenZ merger supports OCIO in order to manage the color spaces. In a standard render, all the PresenZ renders are done in linear space, and are merged as such.

If you want to create a specific grading, one possible pipeline is :

  • Use Nuke (https://www.thefoundry.co.uk/products/nuke/) or another OCIO-compatible compositing software (ie. the openSource software Natron https://natron.fr) to create your grading from a standard, linear, 2D render of your VR scene.

  • Export your grading to a OCIO config file (please check your compositing software documentation for more information).

  • Set your OCIO variable properly. PresenZ will automatically use your config.ocio file if this environment variable is set.

    • Linux
    export OCIO="/myOCIOConfigLocation/config.ocio"
    
    • Windows
    set OCIO="c:\myOCIOConfigLocation\config.ocio"
    

The default OCIO profile location for the PresenZ Merger

Inside the PresenZ PLugin folder there is a default OCIO folder present, which is used by PresenZ to write from Linear to Linear.

../_images/mergerfile.PNG

Within the ocio folder you will find:

../_images/ocioconfig.PNG

You can open the config.ocio in any text editor and have a closer look at one of these color profiles. The luts folder is where these profiles are stored.

..warning :: Do not edit this config.ocio file, we only show it for illustration purposes. We recommend creating your own ocio.config file.

The Mandatory Linear Color Space

The first color space described in the default config.ocio file is the linear one, this is the standard color space applied by PresenZ.

colorspaces:
- !<ColorSpace>
  name: linear
  family: ""
  equalitygroup: ""
  bitdepth: 32f
  description: |
    Scene-linear, high dynamic range. Used for rendering and compositing.
  isdata: false
  allocation: lg2
  allocationvars: [-15, 6]

Warning

This color space is very important as the merger expects a linear color space inside the .przRender files. If you create your own OCIO profile make sure to include the linear color space!

Assigning a custom OCIO profile in the PresenZ Merger

In this section we explain how to apply a different color space. If you have a custom made OCIO config file you can also apply these steps.

  • Open a windows command prompt
  • Specify the path to the merger. example line cd C:\Program Files\PresenZ\PresenZ For ...\, this folder contains the merger.
  • Drag the presenz_merger.exe into the command prompt: you will see all the options that can be declared with the presenz merger. The one’s we are interested in for this particular part are: --OCIOconfig, and --applycolorspace .
  • --OCIOconfig : is the path to the config.ocio file
  • --applycolorspace : is the name of the color space inside the ocio.config file

Note

The precedence in which PresenZ applies an OCIO config file is the following: command line path > environment variable > default PresenZ OCIO config file.

The following line is an example code.

*E:\OCIOLearning*>presenz_merger.exe E:\OCIOLearning\przRenders_Testfiles --OCIOconfig E:\OCIOLearning\ocio\config.ocio --applycolorspace Cineon

  • The merger
  • The file location of the przRender files that need to be merged
  • --OCIOconfig + the location path of the config.ocio file
  • --applycolorspace + the name if the colorspace

As you can see, once you started the command the OCIO is converting from linear to Cineon

../_images/convertinlineartocineon.PNG

From the same render result from before we can do a color correction by simply re-merging the rendered przRender files.

The result side by side:

../_images/sidebyside.png