Light groups enabled/disabled via light_mixer


Use the imager_light_mixer to adjust the contribution of certain light groups to one AOV (the output AOV). Light mixing is a process where multiple light AOVS are rendered separately. Each AOV has all of the paths that end at the camera and begin at the given lights. In a post-process, the balance or mix of those lights can be adjusted using a set of sliders, or color sliders.


  • imager_light_mixer needs to be at the top of the imager chain before any denoiser imagers, as light AOVs won't necessarily be denoised by the denoiser.
  • imager_light_mixer does not currently work properly with visible lights. This is a known limitation.
  • imager_light_mixer reconstitutes the beauty with the available AOVs, so it may overwrite the result of other imagers such as imager_white_balance for example. Workarounds would be to place the imager_white_balance after the imager_light_mixer or output the imager_light_mixer result using a prefix (it won't be white balanced).

light_mixer makes it possible to edit the contribution of light group AOVs during and after rendering

Known Limitations

  • When a live render is started without an active ArnoldLightMixer in the Node Graph, creating or enabling ArnoldLightMixers won't work. 
  • When an imager network is attached to a render output of the RGBA AOV, changing the last imager will disable the ArnoldLightMixers
  • Set Light behavior won't affect lights coming from a procedural, even if <residual_lights> is used. 
  • You can set the light group directly on a light when creating a light via GafferThree.
  • You can also set the light group using ArnoldLightSettings.
  • Each ArnoldLightMixer node controls a single light group, but internally these are translated to a single light mixer imager.
  • You will need to write the name of the light group in the ArnoldLightMixer, not the layer's name (so it's sun instead of RGBA_sun).
  • You will need to write <residual_lights> to modify all of the other light groups.
A scene that demonstrates how to use the imager_light_mixer can be found here.

Example scene demonstrating use of imager_light_mixer.

ArnoldLightMixer OP

The ArnoldLightMixer is the OP for using the imager_light_mixer in Katana to Arnold. Each ArnoldLightMixer is able to modify the contribution of a single Light Group, and multiple ArnoldLightMixers can be used at any time.

Light groups displayed in ArnoldLightMixer

Parameters

lightGroup

The name of the Light Group to modify. The value has to match the value of the AOV set on any light, for example, set it to "sun" to affect any light with an AOV of "sun"<residual_lights> is a special value, that represents any lights that belong to a Light Group not affected by an ArnoldLightMixer in the Node Graph. For example, our scene has 3 lights with the following AOV values:

lightAOV
Afront
Bdefault
Cfront


If we create a single ArnoldLightMixer with the lightGroup set to <residual_lights>, it'll affect light AB, and C. If we create two ArnoldLightMixers:

ArnoldLightMixerlightGroup
MixerFrontfront
MixerOther<residual_lights>


MixerFront will affect light and C, and MixerOther will affect light B. If we create three ArnoldLightMixers:

ArnoldLightMixerlightGroup
MixerFrontfront
MixerDefaultdefault
MixerOther<residual_lights>


MixerFront will affect light and CMixerDefault will affect light B and MixerOther won't have any effect, because all lights belong to an ArnoldLightMixer. A common use case for <residual_lights> is to control lights that are coming from a procedural and their AOV parameter is unknown or to control the lights in the scene that are not currently tweaked using other ArnoldLightMixers. For example, during live rendering, two ArnoldLightMixers are used to tweak the two main lights of the scene, and <residual_lights> is used to turn on/off all the other lights.

enable

Enables the imager.

solo

Enables/disables solo mode for the light group. You can solo multiple lights at the same time.

solo enabled for left light group. Roll over image to view solo disabled.

tint

Tint for the light group.


default.tint: red. Light groups have tint: white. Roll over image to view all with default white tint color.



Tint multiplies the color of the light. For example, a yellow light with a cyan tint will render as green.

intensity

Intensity multiplier for the light group. Intensity controls the brightness of light emitted by the light source by multiplying the color.


Intensity: 1 (default). Roll over image to view intensity: 2.


exposure

Exposure multiplier for the light group. Exposure is an f-stop value that multiplies the intensity by 2 to the power of the f-stop. Increasing the exposure by 1 results in double the amount of light.


Exposure: 0 (default). Roll over image to view exposure: 1.

 

Light Mixer Behavior


ArnoldGlobalSettings includes a new parameter, light_mixer_behavior, under Lighting/Light Mixer, which controls how ArnoldLightMixers behave during non-interactive renders (Preview, Batch, Export to ASS, etc.). It has two values, Use Imager and Set Light with the default being Use Imager.

During live renders, Katana to Arnold will always use the imager_light_mixer node, meaning the effect of the ArnoldLightMixers won't be visible in secondary, non-RGBA, AOVs, like diffuse_direct or specular_direct.

During non-interactive light_mixer_behavior behaves the following:

  • Use Imager: Uses the imager_light_mixer node, and secondary AOVs will match Live Renders.
  • Set Light: Instead of using the imager_light_mixer node, Katana to Arnold applies the effect of each ArnoldLightMixer to lights present in the Katana Scene Graph. This way ArnoldLightMixers affect secondary AOVs, like diffuse_direct or specular_direct.

  • No labels