Uncharted 4: A Thief's End [PS4]

Status
Not open for further replies.
Yes, we have a difference in semantics from game to film. In film, there is no such thing as an ambient light and it's not indirect either. We define our terms like this:

Environment light: This is the lighting from the sky. It can be a texture (HDRI) sky with a sun on it or any picture. It is considered a direct light source because all triangles cast rays to this environment sphere directly. There is no secondary bounce. I believe this is what gamers use as an ambient light. Testing for occlusion to the environment light dome will give you "ambient" occlusion.

Indirect Diffuse Illumination: Considered to be Global Illumination. Direct light that bounces off a surface and onto another surface.

Direct Lighting: Any physical light source that has a specific size. Directional, Area, Spot, Points, etc.. These lights cast shadows.


U4 is using the same simplified indirect shadow model from TLoU. The flatness comes from being strongly lit by the hemisphere light (and the low contrast of the video).

I'm talking about the self-shadowing. Example from whip to pants, or gun holster to shirt, not the shadow cast on the ground by the body of the character and the ground *when* in a shadow from the direct light source (i.e. the sun).

Direct lighting is composed by light sources like the sun or lamps.

In film, this also includes the sky dome light -- because it also has shape and can be evaluated directly from surface to light.

Ambient lighting is all the indirect lighting.

We don't consider ambient to be indirect at all. Light must first take a direct bounce and then that surface needs to cast rays to another surface for it to be considered indirect lighting. Here is a rendered image from our physically based ray-tracer. I've got a red plane and 3 objects that are grey in color with 1 direct light source (i.e. a Sun). Notice how in the shadow of the objects, they have received a red hue. That is considered an indirect bounce of light from the red plane to the grey objects.

bQDT6EW.png


Here is it with global indirect lighting turned OFF:

a7PuMmB.png


For example, the skylight is sunlight bouncing off from the atmosphere. Since it comes from every direction from the upper hemisphere it makes the environments look quite flat.

Not if you have ambient occlusion for neighboring objects. I think that's what's missing in the UC4 gameplay demo. While they solve the indirect shadow from character to ground (or neighboring object), they don't use that technique for self-occlusion on the character and what the character is carrying.
 
Yes, I could have found worse screenshots. I picked these to highlight the differences. I picked a U4 screenshot that showcases the clear presence of direct light, instead of picking one of the screenshots where Drake is in the jungle and the direct light occluded.
In the first screenshot, 90% of the scene is in the shadow. In the second one, the camera angle is opposite to the sun so we see the shadowed side, not the lit side. Not to mention they're both super blurry and compressed.

It showcases that ambient light != dull. If ambient light == dull, a game (or render) lit almost entirely of ambient light would look dull, whereas it looks spectacular and beautiful.
The scene in TDD is lit by direct lighting. It's an area light, but a direct light nonetheless. The material setup alone invalidates completely any comparison between the two.

Firstly, there are plenty of moments in direct sunlight, so it's not "mostly lit by the hemisphere light". Secondly, the issue is mostly one of the lighting being wrong. The first minute of climbing in the jungle, the lighting's clearly off, with Nate's trousers being illuminated on the wrong side and/or by occluded light sources. In fact it's when he's only lit by the skylight that it breaks the most. eg.

View attachment 492


Here, Drake's lit only by ambient light, on a wall opposed to the sun direction. He should be very flatly lit (though still with subtle shading which the old-school fixed illumination of 'ambient' couldn't recreate, from the sky above and the reflected light from behind) but instead he's got exaggerated contrast, even around his crotch which is heavily occluded from all sides (not visible in this grab).

1) Most of the demo happens at the shadow of rocky structures. Hence the general lack of sunlight.
2) Since it's an overcast dawn, sunlight is very dim and therefore doesn't create strong lighting contrasts.
3) Drake's shading is probably due to fresnel effects of the fabric shader.

The lighting method is a WIP, seems to me. But importantly, in the trailer it was perfect, whether because it was set up to be perfect for that particular fraction of the level or because it was doing something the gameplay isn't. It's certainly possible that the gameplay was showcased on a level where the lighting had been thrown together without full and correct lightmaps being created.
We should compare cutscenes to cutscenes, don't you think? What's bad about the lighting here?

i8KsxHuyatxwm.png


That's untrue. The basis of Ambient Occlusion is how the hemispherical light source of the sky still shades. Even without secondary lighting, a reasonable hemispherical lighting model can produce fabulously convincing results with depth.
http://drolph.blogspot.co.uk/2012/05/displacement-map-ambient-occlusion.html

The only time ambient light is going to look flat is if you are a effectively sampling it as uniform value (same intensity from all direction) and just applying a constant illumination value to surfaces, which is a technique employed for decades and very archaic and not at all convincing. There's no way the graphics wizards at ND would be doing that!
Ambient lighting =! ambient occlusion.

-------------------------------------------------------------------------------------------------------

Yes, we have a difference in semantics from game to film. In film, there is no such thing as an ambient light and it's not indirect either. We define our terms like this:

Environment light: This is the lighting from the sky. It can be a texture (HDRI) sky with a sun on it or any picture. It is considered a direct light source because all triangles cast rays to this environment sphere directly. There is no secondary bounce. I believe this is what gamers use as an ambient light. Testing for occlusion to the environment light dome will give you "ambient" occlusion.
That's the one I meant when I said "hemisphere light".

Indirect Diffuse Illumination: Considered to be Global Illumination. Direct light that bounces off a surface and onto another surface.
Yep, this is part of ambient lighting.

Direct Lighting: Any physical light source that has a specific size. Directional, Area, Spot, Points, etc.. These lights cast shadows.
Nothing to add here.

I'm talking about the self-shadowing. Example from whip to pants, or gun holster to shirt, not the shadow cast on the ground by the body of the character and the ground *when* in a shadow from the direct light source (i.e. the sun).
I see what you mean now. Yes, there doesn't appear to be any form of dynamic AO going on. Not even SSAO. If there is, it's too subtle to notice.

In film, this also includes the sky dome light -- because it also has shape and can be evaluated directly from surface to light.

We don't consider ambient to be indirect at all. Light must first take a direct bounce and then that surface needs to cast rays to another surface for it to be considered indirect lighting. Here is a rendered image from our physically based ray-tracer. I've got a red plane and 3 objects that are grey in color with 1 direct light source (i.e. a Sun). Notice how in the shadow of the objects, they have received a red hue. That is considered an indirect bounce of light from the red plane to the grey objects.

bQDT6EW.png


Here is it with global indirect lighting turned OFF:

a7PuMmB.png




Not if you have ambient occlusion for neighboring objects. I think that's what's missing in the UC4 gameplay demo. While they solve the indirect shadow from character to ground (or neighboring object), they don't use that technique for self-occlusion on the character and what the character is carrying.

I guess in terms of realtime lighting I'd say ambient lighting is anything other than spot, omni and directional lights. Though that might chance now that games have limited support for realtime area lights.
 
Last edited:
Yep, this is part of ambient lighting.

So ambient lighting is considered GI for games. And hemispherical lighting is environment lighting. Gotcha!


Though that might chance now that games have limited support for realtime area lights.

Do you have an example of a game that uses dynamic area lights? I haven't seen a single game that uses it actually.
 
So ambient lighting is considered GI for games. And hemispherical lighting is environment lighting. Gotcha!
I'm installing Crysis 2 and its editor to create some examples. For direct lighting they will be omni, spot and directional lights. For indirect, I'll use the uniform ambient color (what Shifty referred to above) and Image Based Lighting. The last one can be used to create a hemisphere light quite easily.

Do you have an example of a game that uses dynamic area lights? I haven't seen a single game that uses it actually.
Apparently Killzone Shadow Fall uses area lights:

 
The scene in TDD is lit by direct lighting. It's an area light, but a direct light nonetheless. The material setup alone invalidates completely any comparison between the two.
All the shadowed-side illumination comes from reflected light. If not, the objects would be lit on one side and black on the other with zero light.

We should compare cutscenes to cutscenes, don't you think?
Why? People are comparing the UC4 shown at E3 with one shown at PSX and comparing the engine, notably because ND said it was all in engine. ;)
What's bad about the lighting here?
Very little! The lighting is well refined for that scene, hence my suggestion that in game, some of the lighting isn't set up properly yet.

Ambient lighting =! ambient occlusion.
I never said it was. AO is one approximation for ambient lighting used in CG. Using the term 'ambient lighting' to mean all indirect lighting, so from the sky light and reflected light.

So ambient lighting is considered GI for games.
In computer graphics, ambient light covers any illumination that isn't, as L. Scofield says, from a specific light source. It originated as a way to light the back-side of objects. When lighting with a light source, point light or direction light, the back side of objects remains black, as you know. In real life, these back sides aren't black because light is reflected back from the scene. This was approximated in game by adding a touch of general illumination, light coming from the ambient environment, whether a large sky area light or a brightly lit surface reflecting light. It was, of course, a horribly crude approximation missing things like reflected colours and the subtle shading from area lights.

Do you have an example of a game that uses dynamic area lights? I haven't seen a single game that uses it actually.
Area lights are rare enough, let alone dynamic area lights!
 
Do you have an example of a game that uses dynamic area lights? I haven't seen a single game that uses it actually.
Haven't a number of developers started delving into it?

I know some were having issues, like RAD said that they weren't having luck getting them to play nicely with their forward+ pipeline.

Doesn't KZSF use them?

I'm not quite sure if Destiny uses true area lights, but at the very least they're faking it with their shadowing model; the dithered interior shadows show softening as you distance yourself from "area" sources.

Area lights are rare enough, let alone dynamic area lights!
Are static area lights actually uncommon? I was under the impression that most modern games that light stuff with baked irradiance data would support them.
 
All the shadowed-side illumination comes from reflected light. If not, the objects would be lit on one side and black on the other with zero light.
Yes, light reflected off the atmosphere.

Why? People are comparing the UC4 shown at E3 with one shown at PSX and comparing the engine, notably because ND said it was all in engine. ;)
Yes but during cutscenes the artists have much more control of the lighting. They usually add extra lights to pretty up the characters (like reflectors on live action footage).

Very little! The lighting is well refined for that scene, hence my suggestion that in game, some of the lighting isn't set up properly yet.
Or rather, not the best setting to show complex lighting.

I never said it was. AO is one approximation for ambient lighting used in CG. Using the term 'ambient lighting' to mean all indirect lighting, so from the sky light and reflected light.
Not quite. AO is an approximation of lighting occlusion.

iR9QZtrSRol1a.jpg


The first image shows ambient lighting without any occlusion calculations.
 
They're featured in the Crysis 3 tech trailer but who knows if they're actually used in-game. Crytek always shows off features that end up being missing in the actual games:

 
Not quite. AO is an approximation of lighting occlusion.

iR9QZtrSRol1a.jpg


The first image shows ambient lighting without any occlusion calculations.

Are you guys arguing just for the sake of arguing? ;) You are basically saying the same thing. Firing a light vector out in the atmosphere from a surface and getting blocked by some other piece of geometry before you hit the environment is absolutely ambient occlusion.
 
They're featured in the Crysis 3 tech trailer but who knows if they're actually used in-game. Crytek always shows off features that end up being missing in the actual games:


Nope. Sadly, I looked for that in-game and it was cut (along with the displacement mapped frog).
 
Are static area lights actually uncommon? I was under the impression that most modern games that light stuff with baked irradiance data would support them.

Very uncommon actually. I'm looking for a game that will give me something like this:

mb94AZ8.png


Not only is the shadow softer, but the specular highlight takes on the shape of the area light. Haven't seen this in a game yet except that CryEngine demo.
 
Are you guys arguing just for the sake of arguing? ;) You are basically saying the same thing. Firing a light vector out in the atmosphere from a surface and getting blocked by some other piece of geometry before you hit the environment is absolutely ambient occlusion.
I think that image illustrates well the problem you mentioned about the lack of AO in U4, doesn't it?

Here are the examples.Didn't do the direct light types because they're too common (first three types here: http://www.utdallas.edu/atec/midori/Handouts/light_types.htm):

Flat ambient ONLY:
http://i4.minus.com/ibld5QN25tRdPI.png

Hemisphere light ONLY:
http://i7.minus.com/ihJAXSCrhGbBi.png

Since sunlight in the U4 demo is very dim, it doesn't create dramatic contrast:
http://i4.minus.com/ibngaA8HO7aVra.png

This is more like it (plus you can see the bouncing here):
http://i2.minus.com/i9MgF5vXgt1RW.png
 
Here are the examples.Didn't do the direct light types because they're too common (first three types here: http://www.utdallas.edu/atec/midori/Handouts/light_types.htm):

Flat ambient ONLY:
http://i4.minus.com/ibld5QN25tRdPI.png

Hemisphere light ONLY:
http://i7.minus.com/ihJAXSCrhGbBi.png
Okay, I see what you're saying now. You're talking about a hemisphere light in terms of a particular implementation. Lighting via a hemispherical light source, in real terms which is what I was talking about, doesn't produce flat lighting, but lighting just via an approximation of a hemispherical light that uses surface direction to determine surface lighting produces something unrealistic, and that's what UC4 is doing at the moment.

That's not actually at odds with what I was saying. ;) It's about the indirect lighting and a game's implmentation of that as to whether it really pops or not. UC4's indirect lighting is currently non-ideal.
 
Well as I said, an overcast setting in a place filled with not-very-reflective materials isn't going to be an amazing lighting showcase.
 
With the right rendering technology, it can. Realism in overcast lighting, even neo-realism as per Uncharted's art style, will still look obviously better and 'next-gen' compared to what we're used to. Wetness and neon lighting has a lot more pop, although now that's almost a trivial standard. TTC stands apart in having a sense of beauty without being flashy thanks to it's low-key lighting and fabulous rendering technique, and we have that quality in indirect lighting to look forwards to in realtime, whether this gen or the next.
 
That's not actually at odds with what I was saying. ;) It's about the indirect lighting and a game's implementation of that as to whether it really pops or not. UC4's indirect lighting is currently non-ideal.

I respectfully disagree. ;)

The indirect lighting is something that's been around for awhile by the use of light maps for static scenes. As of last year, we've been seeing the implementation of light probes where the dynamic characters would pick up the light contribution from those to light the shadowed areas.

My personal take is that we are seeing not enough detail in the texture, and the lack of SSAO for self-shadowing of the character. I think the overall presentation could definitely use more contrast (as the above screens show a big difference in image look) as well. Put those things together and we should be more inline with what we are seeing in some of the top tier looking games today. The fact that these things are pretty trivial to implement, gives me a positive outlook on seeing it in game at release.

However, I am doubtful that the game will ship at 1080p/60fps with these visuals. I'm seeing more 1080p/30fps (which is fine by me). I'd love to be proven wrong though. :)

P.S. Shifty, did you get my message to change my username?
 
Very uncommon actually. I'm looking for a game that will give me something like this:

mb94AZ8.png


Not only is the shadow softer, but the specular highlight takes on the shape of the area light. Haven't seen this in a game yet except that CryEngine demo.
I think the issue here is that we're all asking binary questions without clarifying what our expectations are regarding accuracy and precision.

For instance, any game that uses irradiance probes *should* be entirely capable of capturing area lights. Maybe it's not very high-precision, maybe the understanding of the light shape isn't unified with the shadow system... but the lighting can technically include area lights.

I respectfully disagree. ;)

The indirect lighting is something that's been around for awhile by the use of light maps for static scenes. As of last year, we've been seeing the implementation of light probes where the dynamic characters would pick up the light contribution from those to light the shadowed areas.
"As of last year"? Baking irradiance information into a game world that dynamic objects can pick up is ancient history, it's been around for literal decades. Technically speaking even games like Doom and Marathon support it (in the sense that an artist can "paint" a nondirectional light level into the prism volumes ("polygons") that constitute the game world.

I'm not sure when developers first started using probes that offered significant directional information, but they were definitely doing it by the early parts of last gen.
 
Last edited:
Status
Not open for further replies.
Back
Top