Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time
November 18, 2021 16:49
December 17, 2019 14:43
December 17, 2019 14:43
December 17, 2019 14:43
December 17, 2019 14:43
November 18, 2021 16:49
March 11, 2020 16:20
April 24, 2016 16:18


We present a new storage scheme for computer graphic images based on OpenEXR 2.

Using such EXR/Id files, the compositing artist can isolate an object selection (by picking them or using a regular expression to match their names) and color correct them with no edge artefact, which was not possible to achieve without rendering the object selection on its own layer.

The technique is demonstrated in an open source software suite, including a library to read and write the EXR/Id files, Nuke deep plug-ins and an OpenFX plug-in which generate the images in any compositing software.


During animation and VFX productions, the compositing department needs the rendering team to render some id masks images or to separate the rendering in layers to perform compositing operations on parts of the images. The needed mask or layer may change from a shot to another one. A lot of images may be sometimes requiered. Sometime masks are missing, the shot goes back to the rendering departement.

We think having a file format able to isolate any object may smooth this workflow.


Download the latest binary plug-ins from the Release section

If you use one of the supported Nuke versions, simply extract that version's "DeepOpenEXRId.dll" or "" and the "" files to your [home_dir]/.nuke folder.

If you use another software, or an unsupported version of Nuke, you can use the OpenFx plugin. Extract the "openexrid.ofx.bundle" folder to a directory of your choice and add an "OFX_PLUGIN_PATH" environment variable pointing to that directory.

Video tutorials

Open in Youtube

Open in Youtube


The dynamic image is a standard Deep OpenEXR image containing the coverage information of every object in every pixel.

The renderer writes such openexrid image during the rendering.

The Nuke plug-ins can isolate any object from the deep image flow.

The OpenFX plug-in isolates any object in your prefered compositing tool from an openexrid image.


See the BUILDING file


Compile and run the /test application.


An OpenEXRId frame of the Poilus movie. Thanks to Guillaume AUBERVAL, Léa DOZOUL, Simon GOMEZ, Timothé HEK, Hugo LAGRANGE, Antoine LAROYE and David LASHCARI.

This test file contains motion blur and transparency. This file is in the repository/data folder.


Mercenaries Engineering, the guys behind Guerilla Render.

Thanks for feedback, ideas and help

Chase Basich
Alexis Casas
Rachid Chick
Stefan Habel
Philippe Leprince
Philippe Llerena