This is a tonemapping display driver (imager). It does everything on its own and does not belong to OCIO config files. Notably it implements AGx-Default, AGx-Punchy and the newly released Khronos PBR Neutral tonemapper along with relevant tonemappers from games (like Unreal and Uncharted) and many others coming from imaging/vision research fields (like Drago and Lottes). On the README file you'll find overviews, key characteristics and use cases for each of the tonemapper available.
To setup the correct pipeline all you have to do is to set the ARV display to sRGB (or Raw) from your View Transform rollout after having set the Color Mgmt to Legacy (or at least to have the Arnold color space set to Linear-sRGB, this is for textures).
Eventually from an imagers list add a Rombo Tonemapper.
There're no parameters for the tonemappers themshelves. You can however select 'Is Raw' if your display is setup so and use the 'Exposure' param to align the tonemapper output. Default tonemapper is PBRNeutral. You may want to disable the rombotonemapper either using the 'enable' checkbox from the UI or the 'Disabled' option you find in the tonemappers rollout for easy testing with Kick for example.
Btw, rombo tonemapper works pretty cool with Kick for display while rendering.
If you wanna save the image you better create a new driver and save it without the tonemapper applied.
You can download the plugin from here :
https://www.rombo.tools/downloads/romboTonemapper.zip
Now, let's see some use case :
**Automotive rendering is hard. Because as soon as one tweaks shadows and highlights he has good chances to flat the metallic paint down. Here we're using rombo metallicpaint with BDRF-based flakes.
For example with sRGB we've already flat highlights.
With ACES we recover them a bit (look at the car front between the two headlights).
However here the best performing tonemapper is AGx-Default.
Highlights are fully preserved and look how the glossy highlight is really nice and vibrant giving a sense of depth.
If you click on an image, use then the arrows to go prev and next for better comparisons.
**Now let's see how we deal with colors using ie. a rombo cloth shader.
ACEScg remains a bit dark and gloomy.
PBRNeutral instead simply enhances colors while keeping a vivid contrast.
**We all know that sky rendering is complex because of HDR and those smooth gradients up there.
Here using upcoming rombo clouds and sky.
Effectively sRGB can't cope with that.
Burned out highlights and flat gradient.
ACES is way better but 'closes' the gradient a bit too much and has an hard time dealing with the sun HDR light.
AGx-Punchy instead does a great job keeping the highlight white while still giving the gradient full shades.
We see how each of these tonemappers has its strengths, making them suitable for different types of content whether working on games, films etc. These tonemappers covers a wide spectrum of aesthetic goals and technical reqs, from realistic and neutral to cinematic and punchy looks... experimenting we may found the best one for the task we're doing .. easy stuff btw because once a scene is rendered, appling a different tonemapper happens in real-time with Arnold.
Cheers, 🖖
**Let's see how we deal with blacks. None among ACES, PBRNeutral and AGx-Default are doing that great. Here it is where we may increase a bit the Exposure param to get those darks into life, it will then be on the tonemapper itself to not create too harsh highlights etc (because the exposure factor is introduced before the tonemapping stage while we're already linear). However we have a better approach. Just use AGx-Punchy. Works great out-of-the-box.
ACES.
PBRNeutral.
AGx-Punchy ! Also the blues here are brighter and less saturated than ACES while the yellows remain vibrant.
Here a single shot with the Unreal tonemapper where we get incredible shades on that black metallic paint.
Looks like Houdini >20 is set up to sRGB-Untonemapped by default so it's all cool if you apply a rombo tonemapper. If you wanna be sure you can still check in the Houndini Render View and expand the toolbar if it's hidden by clicking on the little arrow on the lef just above 'active render' then untick 'Enable OpenColorIO' . The weird thing with Houdini and Arnold is that .. cough-cough .. imagers are not real-time in the sense that for any tweak on any imager.. the render will re-start from scratch .. cough-cough.
Here one of the demo scene that comes with rombotools rendered with PBRNeutral.
Here dealing with some cinematic photoreal imaging.
ACES is doing great, AGx mmhh, PBRNeutral is almost always a guarantee.
However Unreal is king here, great saturation and contrast.
ACEScg
PBRNeutral
AGx
Unreal
🖖
Btw, I keep seeing people applying a color transform to ie. driver_png and then wondering why their kick display window ain't affected by that. Well driver_png is for saving your image. If you wanna apply a color space to the kick window (that's the driver_kick) you should do it from the kick command line with for example :
- ocs ACEScg
Leave it as it is (sRGB by default when no option specified) if instead you use romboImagerTonemapper.
For mtoa users.. added aiImagerRomboTonemapperTemplate.py to have the tonemapper parameters within the imager UI block in the ARV. You need to add an mtoa var (MTOA_TEMPLATES_PATH) in your maya.env pointing to a folder that contains that file.
Hey Max,
is the MtoA aiImagerRomboTonemapperTemplate.py in the latest public release of RtoA?
Never mind, found it. thank you 🙂
Thanks rachid_1 but all metadata is already there from the C++ library and yours from the mtd file would just conflict with that. Please remove it.
Can't find what you're looking for? Ask the community or share your knowledge.