Additive Rendering

Introduction

Additive Rendering is a special rendering approach where the color of all particles is accumulated in the pixels of the final rendered image without performing volumetric shading / shadow casting.

How Does It Work

  • Additive Rendering is achieved by setting the Emission channel to the Color channel’s value, while setting the Color and Absorption channels to black (0,0,0).
  • The result is fully emissive rendering without any light scattering or attenuation.

Mixing Volumetric And Additive Shading

  • The above definition implies that by varying the content of the Color, Emission and Absorption channels per particle, it is possible to blend volumetricly shaded and additive particles in the same image - as the Color and Absorption approach black, Emissive particles will become more and more “additive”.
  • The following image was produced by setting the Color channel of a PRT Volume using a Volume Noise Texture, while assigning a constant Emission color to blue:
../../../_images/kmy_additive_prtv_volumenoise_solidEmission_rgb.png

Here is the Alpha channel of the same rendering:

../../../_images/kmy_additive_prtv_volumenoise_solidEmission_alpha.png

The particles with white Color produce Alpha because they are scattering color into the eye and attenuating light. The particles with black Color do not scatter and do no absorb light, but have Emission, so they are fully additive with no Alpha.

Forcing Additive Rendering

To simplify the rendering of additive particles for the cases where no volumetric shading is required at all, Krakatoa provides a quick shortcut called Force Additive Mode. It copies the Color into Emission and resets Emission and Absorption to black automatically under the hood without the need to tweak any channels or overrides. In addition, this mode automatically ignores the scene lights and completely skips both the Lighting pass and the Sorting processing in the Final Pass because the order of drawing additive particles does not matter to the end result - A+B = B+A after all! As result, rendering with Force Additive Mode on can be significantly faster than manually setting the Color, Emission and Absorption settings to produce Additive results! In the following rendering of the same setup as above, the Force Additive Mode caused the Color channel (set by the Apply Texture modifier’s Volume Noise texture) to be copied into the Emission channel, thus overwriting the blue Emission value set by the user:

../../../_images/kmy_additive_prtv_volumenoise_ForceAdditiveMode_rgb.png

Remember that Additive Rendering does not produce an Alpha channel because Alpha makes no sense in compositing when the RGB data is additve - the image should be composited additively over the other image sources.

Here is the Alpha display of the resulting image - there is no Alpha in fully Additive mode:

../../../_images/kmy_additive_prtv_volumenoise_ForceAdditiveMode_alpha.png