Ambient Occlusion (SSAO)

From RealMotion Wiki

Image Processing/Filters/Ambient Occlusion (SSAO)

Generates a Screen Space Ambient Occlusion ​

Description

The Ambient Occlusion (SSAO) box generates Ambient Occlusion using a Screen Space approach.

This post-process is generally applied after the Scene Renderer box because the ambient occlusion is specific to a 3D scene. The parameters need to be adjusted on a case-by-case basis.

Ambient Occlusion adds additional and smooth shadowing details to a 3D scene regardless of current lighting.

The Ambient Occlusion is an optimized way to create shadows in real time. For more information, see the Ambient Occlusion Wikipedia page and the Screen space ambient occlusion Wikipedia page

For advanced documentation about ambient occlusion, see the NVIDIA documentation about High-Quality Ambient Occlusion.

Inputs

Camera Camera Receives the Camera to calculate the ambient occlusion. The Ambient Occlusion (SSAO) and the Scene Renderer generating the depth buffer must use the same Camera.
Depth 2D Texture Receives the depth buffer texture.
Normals 2D Texture Receives the texture that stores the normals to calculate the ambient occlusion.

Outputs

Texture 2D Render Target Outputs the process result.

Parameters

General

Reject Radius Float Sets the maximal distance between a pixel and the geometry calculated in the ambient occlusion.
Accept Radius Float Sets the minimal distance between a pixel and the geometry calculated in the ambient occlusion.
Intensity Float Sets the intensity of the ambient occlusion.
Normal Scale Float Sets the scale for the inputted normals.
Accept Angle Float Sets the accepted angle between a pixel and a geometry to be calculated in the ambient occlusion.

External

Use Input Size Toggle Uses the resolution of the inputted depth.
Enable Input Pin: Normals Toggle Enables the Input Pin Normals and uses normals in the render of the ambient occlusion. Using normals gives better performances.

Format

|}

Channel Settings

Format String Changes the format of the outputted texture. RGBA 8 bits is the common format. RGBA 16 bits allows negative vector calculation and is mostly used for simulation. RGBA 32 bits allows high precision but may negatively affect the FPS and the Grayscale has only the Red component.
Format Components String Sets the Components used for the outputted texture.
Format Component Bit Depth String Sets the Bit Depth of the outputted texture. 8 bits is the common format, 16 bits allow negative vector calculation and is mostly used for simulation, 32 bits allow high precision but may negatively affect the FPS.
Format Component Type String Sets the pixels value type depending on the Bit Depth.

Canvas Settings

Resolution Mode String Allows the box to change the resolution of the outputted texture. Canvas uses the project configuration settings, Custom uses local setting resolution not shared with other box and Project Aspect Ratio uses the project aspect ratio and proportionally scales the height and width. The parameter chooses the reference Canvas setting the resolution of the outputted texture.
Canvas 2D ResolutionRef Chooses the reference Canvas and sets the resolution of the outputted texture.
Maximum Resolution Int Sets the maximal resolution of the X-axis and calculates the resolution of the Y-axis based on the aspect ratio of the Content Canvas.
Lock Aspect Ratio Toggle Locks the Aspect Ratio for Custom resolution.
Aspect Ratio 2D ResolutionRef Chooses the reference Canvas for the aspect ratio.
Size XY Int2 Sets the size in pixels of the outputted texture.

See Also

Boxes related

Camera, Model Shader, Depth Buffer, Scene Renderer, Ambient Occlusion (HBAO), Antialiasing (SSAA), Multiply, ​​

Version Information

Current documentation version: 2.1.1. ​ ​