I’m not entirely sure if this is Unreals actual cone tracing code, it looks like it. So many people use the term Occlusion with varying meanings behind it. I’ve seen it used to describe ambient lighting, or the shading effect from ambient light sources.
But… inside the DirectionalOcclusion.usf file, this particular function below
ComputeAmbientOcclusion( float3 gridPos )
Runs the computation between each directional vector. I’m going to assume that this is in fact a fragment shader, which means it’s fired per pixel. If unreal is a deferred renderer, and a majority of the geometry can be assumed to be opaque, wouldn’t it make sense to test each ray and see if the angle between the Normal and the directional vector is less than or equal to 45 degrees? Theoretically, it’d mean that you’re only doing 8 cone traces per pixel.
If this is not it, then can someone point me to what I’m actually looking for?