*spin-off* Screen-space/AO/Path tracing techniques & future... stuff

I just got to ask the stupid question:

Why did we ever ditch baked shadow maps in favor of screen space ambient occlusion effects?

I get that screen space effects are mostly unavoidable when we want to get the specular components right (are they really?).

For the diffuse component however, I feel we still haven't reached the same level of realism we originally had with plain prebaked shadowmaps. Especially not in games where these were actually computed with a global lightning model, or which correctly computed multiple refractions.

So why did we stop using a shadow map? Just because it was static?
Wouldn't have the logic consequence then been to make the materials dynamic instead, updating the shadow textures at runtime?

We DO have the virtual texturing techniques needed for that nowadays. There is no need to keep the shadow maps for the whole scene, respectively at full resolution. Only for the objects actually seen in screen space, as well in lower resolution for the nearby (or otherwise in terms of lightning significant) level geometry.
Evicted textures can be easily recreated by stochastic path tracers rendering to and sampling from the textures.
 
I just got to ask the stupid question:

Why did we ever ditch baked shadow maps in favor of screen space ambient occlusion effects?

I get that screen space effects are mostly unavoidable when we want to get the specular components right (are they really?).

For the diffuse component however, I feel we still haven't reached the same level of realism we originally had with plain prebaked shadowmaps. Especially not in games where these were actually computed with a global lightning model, or which correctly computed multiple refractions.

So why did we stop using a shadow map? Just because it was static?
Wouldn't have the logic consequence then been to make the materials dynamic instead, updating the shadow textures at runtime?

We DO have the virtual texturing techniques needed for that nowadays. There is no need to keep the shadow maps for the whole scene, respectively at full resolution. Only for the objects actually seen in screen space, as well in lower resolution for the nearby (or otherwise in terms of lightning significant) level geometry.
Evicted textures can be easily recreated by stochastic path tracers rendering to and sampling from the textures.
Elite Dangerous Horizons is doing something along these lines of baking shadows to virtual textures for its planetary surfaces. Its specific to distant shadows though. Geometry is also generated and baked. If you are viewing the whole planet, it's just a single big texture. It's pretty clever.

Spaceships and stations are rendered more conventionally.
 
I just got to ask the stupid question:

Why did we ever ditch baked shadow maps in favor of screen space ambient occlusion effects?

I get that screen space effects are mostly unavoidable when we want to get the specular components right (are they really?).

For the diffuse component however, I feel we still haven't reached the same level of realism we originally had with plain prebaked shadowmaps. Especially not in games where these were actually computed with a global lightning model, or which correctly computed multiple refractions.

So why did we stop using a shadow map? Just because it was static?
Wouldn't have the logic consequence then been to make the materials dynamic instead, updating the shadow textures at runtime?

We DO have the virtual texturing techniques needed for that nowadays. There is no need to keep the shadow maps for the whole scene, respectively at full resolution. Only for the objects actually seen in screen space, as well in lower resolution for the nearby (or otherwise in terms of lightning significant) level geometry.
Evicted textures can be easily recreated by stochastic path tracers rendering to and sampling from the textures.
I guess you mean lightmaps, right? because ShadowMaps are very much alive...
 
I just got to ask the stupid question:

Why did we ever ditch baked shadow maps in favor of screen space ambient occlusion effects?

So why did we stop using a shadow map? Just because it was static?
Wouldn't have the logic consequence then been to make the materials dynamic instead, updating the shadow textures at runtime?

http://advances.realtimerendering.c...4_Schulz_Mader_Ryse_Rendering_Techniques.pptx
Large scale AO based on shadow-map heightfield tracing

Page 31: large scale shadow map
Page 44: large scale AO
 
I just got to ask the stupid question:

Why did we ever ditch baked shadow maps in favor of screen space ambient occlusion effects?

Shadowing is dependent on lighting direction. It is basically all the surfaces that are occluded from the point of view of one single directional light source.

Ambient occlusion basically defines the visibility of a surface point from the entire environment. 'Proper' AO is only used to modulate indirect lighting coming from the entire environment, and it is completely ignored for directional light sources.

So the two are actually completely different things.
 
Shadowing is dependent on lighting direction. It is basically all the surfaces that are occluded from the point of view of one single directional light source.

Ambient occlusion basically defines the visibility of a surface point from the entire environment. 'Proper' AO is only used to modulate indirect lighting coming from the entire environment, and it is completely ignored for directional light sources.

So the two are actually completely different things.
But, if by "baked shadow map" we mean a baked lightmap that includes direct lighting (which might have been what Ext3h meant), the two are intertwined, and in some cases it can be problematic to have both the lightmap and AO since there's redundancy.

Sometimes devs don't worry about it because the SSAO tends to behave as a high-frequency-only component that's not dealt with by the lightmap, but there's also a lot of SSAO implementations that have quirks like not scaling the width of the black smudge based on depth, so the AO darkness is large around distant objects ("What a great reason to not bother casting shadow maps for distant dynamic objects!").
 
The tech showcased by Dice in SIGGRAPH, Stochastic Screen Space Reflections, still has a long way to go imo. Gifs from that video(errors = red):

This approach is especially problematic when you have characters or movable assets interacting in screen space. And that's why i asked about SSR usage in Uncharted 4 in this post, but maybe i'm missing something.

Just look at 2:20-2:23
I followed the link you post. On the first QB sequence I think you got the images backward. On the first image he is further away in the tunnel, thus receiving the green light, in the second one he's closer to the pillar so the light would indeed not illuminate completely his jacket.
 
I followed the link you post. On the first QB sequence I think you got the images backward. On the first image he is further away in the tunnel, thus receiving the green light, in the second one he's closer to the pillar so the light would indeed not illuminate completely his jacket.

I was talking about this:
qb1ycssc8dutk.jpg

qb20es1wg1u0j.jpg


And it is SSR, I've played QB quite a few times so I'd know :p

I uploaded a video about it too:
 
Back
Top