Known Issues

Errors in the console after installation

Try clearing the console first, if the issue persists, try performing a clean (re)installation of the asset:

  1. Remove any objects containing the HTrace AO script from the scene, or open a scene that doesn't contain such objects.

  2. Remove the HTrace AO Renderer Feature from the Renderer (for URP pipeline).

  3. Delete the asset.

  4. Reload the Unity Editor.

  5. Reinstall the asset.

  6. Right-click the folder containing the asset files and choose "Reimport".

  7. Clear the console log if necessary.

Effect isn't visible / black screen in build (URP)

This is a known URP shader stripping problem. If URP doesn't detect its own native SSAO render feature, it assumes Ambient Occlusion is not needed at all and strips it from all shaders.

Solution:

  • Create a second Universal Renderer Data.

  • Add the native SSAO Renderer Feature to it.

  • Disable the After Opaque checkbox on the native SSAO Renderer Feature.

  • Make sure both Renderer Datas have identical settings (e.g. same rendering path is used).

  • Add the second Renderer Data to the Renderer List in your URP asset.

  • Make your original Renderer Data (the one without the SSAO Render Feature) default.

If you have the Screen Space Shadowsarrow-up-right Renderer Feature, or if you're using any effect or third-party asset related to Screen Space Shadows (e.g., Umbra Soft Shadows), make sure to add the Screen Space Shadows Renderer Feature to the second Universal Renderer Data as well.

Before Opaque injection point + Deferred path produces incorrect results (URP)

When the "Before Opaque (ShaderGraph)" injection point is used with the Deferred rendering path, the occlusion result may appear incorrect because of a Unity bug: during the DepthNormal prepass, URP writes signed normals to a buffer with an unsigned format, which leads to an unrecoverable loss of data in the normal buffer.

Solutions:

A) Disable the Accurate G-buffer Normalsarrow-up-right checkbox in the URP Renderer Data.

B) Or enable the Reconstruct Normals checkbox in the HTrace AO UI.

Occlusion lags when using the Before Opaque injection point with the non-Render Graph (URP)

When the "Before Opaque (ShaderGraph)" injection point is used with the non-Render Graph version of URP (e.g. in Unity 2022), this combination causes the Depth buffer from the previous frame to be used, which results in a 1-frame lag of the whole effect.

Solutions:

A) Enable Render Grapharrow-up-right.

B) Or switch to the Forward / Forward+ rendering path.

Moving objects flicker in the Scene window

In the HDRP and URP pipelines, Unity does not write object motion vectors in the Scene view. As a result, moving objects may fail to accumulate correct ambient occlusion.

Installation into a project with WSGI / SSGI overwrites files (HDRP)

In rare cases, trying to import the asset into a project where the HTrace: WSGI / SSGI asset is already installed (and vice versa) may result in a wrong merge / file replacement due to Unity's asset importer issues.

Solution: first unpack the asset to a separate project and then manually copy the folder with the asset to the project where HTrace WSGI / SSGI is installed.

Last updated