AOVΒΆ

A Layer is splitted into AOVs, which are the actual image rendering units. Each AOV in a RenderPass produces an image at rendering time.

AOVs can render various information, such as the beauty illumination, shading components such as Diffuse, Specular, and also technical images such as the Z depth, normal, ids. Also, AOVs can be filtered by lights, so it is possible to render the Diffuse component with only a set of light illuminated.

Add AOVs
  1. Open the RenderPass of your project.
  2. Open the layer in which you want to add an AOV.
  3. Press the button to add an AOV.
  4. Select an AOV in the dropdown list or type a custom AOV name.
Disable an AOV
  1. Uncheck the first checkbox in the Passes view, on the row corresponding to the AOV.
Render only some AOVs

Alternatively, you can also solo one or several AOVs. If one or more AOVs are in solo, only those AOVs will be rendered.

  1. Check the solo checkbox in the Passes view, on the row corresponding to the AOV.
Duplicate an AOV
  1. Select the AOV you want to duplicate.
  2. Press the button to duplicate it.
Edit the RenderPass shading network

Some technical AOVs (like Occlusion or Z) use shading nodes in the RenderPass shader. To inspect this shader :

  1. Drag'n drop the RenderPass in any viewport.
  2. Inspect and edit the shader.

Render separate shading components

Guerilla can separately render the various shader components, such a diffuse, indirect diffuse, specular, reflections and other passes. In the Render Passes view, click the AOV dropdown to show possible outputs.

Beauty: this pass includes every shader components.

Diffuse: this pass is the direct lighting diffuse component.

IndDiffuse: this pass is the indirect lighting diffuse component.

Specular: this pass is the direct lighting specular component.

Reflection: this pass is the indirect lighting specular component.

Refraction: this pass is the indirect lighting refraction component.

SSS: this pass is the direct sub surface scattering component.

Incandescence: this pass is the incandescence component.

Render separate light category

Guerilla can also separate those shader components for every light category. Each light can be assign to a user light category (like Key, Rim, Fill, Env etc..). Each AOV can be restricted to one of those light categories.

Restrict an AOV to a light caterogy
  1. Use the Light -> Light Category attribute to specify the category of your lights.
  2. Specify which lights to filter in or out of the rendering by changing the AOV Light Categories attribute. A '-' character before the category name filters the category out.
Set Light Category to '-RimLight' to render all lights but RimLights.

DiffuseKey: the Diffuse pass for the Key lights.

DiffuseFill: the Diffuse pass for the Fill lights.

DiffuseRim: the Diffuse pass for the Rim lights.

DiffuseEnv: the Diffuse pass for the Environment lights.

SpecularKey: the Specular pass for the Key lights.

SpecularFill: the Specular pass for the Fill lights.

SpecularRim: the Specular pass for the Rim lights.

SpecularEnv: the Specular pass for the Environment lights.

Render technical passes

You can also render extra technical passes, such as occlusion, depth, normal, position in camera or world space. Practically, this connects a shading network to the AOV.

Occlusion: a pass rendering an ambient occlusion.

Id: a pass rendering the Id dynamic attribute of the objects.

Z: a pass rendering the float distance from the screen.

Pcam: a pass rendering the position in camera space.

Pworld: a pass rendering the position in world space.

Ncam: a pass rendering the surface normal in camera space.

Nworld: a pass rendering the surface normal in world space.

st: a pass rendering the texture coordinates.

ShadowMask: a pass rendering the light shadows. Here, the lights ShadowId attributes have been set in Red, Green and Blue.

Disparity: a pass rendering the disparity between the right and the left stereo cameras.

CpuTime: a pass rendering the CPU time used per pixels. For debug purpose.

TriangleId: a pass rendering every triangles with a random color. For debug purpose.