Tuesday, 11 January 2011

Uncharted 3 Tech Update

We’ve already taken an in-depth technical look at Uncharted 3, analysing both the original teaser trailer and subsequent gameplay demo. However, an extended version of the teaser has surfaced at CES, briefly highlighting some of the heavily edited, chopped up gameplay footage contained within. These segments have now been presented as full-size clips, interwoven with the rest of the trailer and show more clearly some of the stuff we were talking about.

In addition, the extended trailer also contains some short additional footage right at the very end, depicting a desert-based, hand-to-hand fight scene between Drake and an enemy assailant.

The main purpose of this report was to highlight the way certain visual effects have been created in the game. Some of the things talked about before, like water, fire, and particles, can be seen in much more detail for the first time.

With the water in particular, you can see how the main body is constructed from volume rather than individual particles, with particles simply making up the front, sides, and overall extended splashes of the effect. Use of blended normal mapping and multi-layered texturing add detail and extra animation with the inclusion of ripples and surface changes.

In the previous trailer, this could only be seen very briefly. Despite the rather poor quality footage, with lots of artefacting hiding some of the finer details, now it is overly apparent how the flow of water is built and animated.

The second gameplay clip shows Drake waist-deep, and displays a perfect example of how the volume-based effect has been animated to flow naturally, like how it would in a real life approximation of flowing water. If you think about how liquid is largely stuck together, usually only separating when impacted upon, then Naughty Dog’s solution not only caters to the PS3’s limited bandwidth requirements (by reducing the amount of individual particles used) but also in replicating water as organically as possible.

The final part of the new trailer also shows some more interesting technical observations. The footage here, like with the majority of the trailer, is pre-rendered using in-engine assets before being supersampled down to 720p. Character modelling is more detailed than in-game, and like we’ve already touched upon, shadows and lighting are far more precise – with no obvious rendering errors – than what is possible in real-time on the hardware.

Interestingly, we can see that Naughty Dog have implemented some secondary surface lighting reflections, whereby the sunlight bounces off of the ground and onto the characters. Look at the base of the enemy’s arms - or rather under - and you can see it. It’s not the light source from the sun that’s having this effect, as the light is being directed from below at an angle.

Single bounce global illumination? Well, that’s highly unlikely since it isn’t supported in Uncharted 3’s advanced lighting engine, and would be too performance intensive to use in-game as it were, without optimisation. Instead, it looks like it could be some kind of baked GI solution, perhaps some kind of occlusion mapped onto the environment. As Naughty Dog already use plenty of pre-baked techniques in combination with real-time lighting and AO in screen space (SSAO) then this seems like the most obvious conclusion.

The other conceivable way this could also be done, is via the use of some simple shader algorithms, thus saving on even more performance. Without seeing the effect for extend periods of time, it is simply well informed guesswork on how this is being accomplished, and either way needs to be clearly seen in actual gameplay footage to be of any real significance. Though, I suspect that it may well find itself entering the game’s in-engine, but not real-time cut scenes. There are a number of low-tech, performance saving ways this could be implemented; like UE3’s Lightmass GI solution for example, used in Gears 3.

The rest of the trailer is exactly the same as before, so there’s no need to go into further details here. The gameplay footage still looks like its being rendered in 720p compared to the rest of the footage, before also having its image quality decimated by GameTrailers poor video encoding.

Outside of the CES updated version of the original teaser trailer, there have also been two extended gameplay videos of the Chateau stage released a few weeks back. The beginning of the first video shows some crisp, white HDR lighting, intermittently complemented by the implementation of bloom. Bloom appears in some scenes clearly, whilst being completely absent in others. Like in Uncharted 2, its use appears to be more artistically controlled than simply being an early rendering bug.

HDR also looks very similar to both Uncharted 2, and in turn God Of War 3, meaning that it is likely that ND are using a similar if not the very same RGBM version of the technique. In any case HDR appears to be a tad subtler on first impressions, although that could well be down to the environment and artistic use, than anything else. UC2 had areas in which both HDR and bloom were highly prominent, and areas where neither seemed to have much of a noticeable presence.

You can also see solid evidence of MLAA in the works too. There’s very little in the way of edge-based shimmering in the higher contrast areas of the scene, only the usual sub-pixel artefacts not covered by the technique. But overall, it’s a noticeable improvement over the second game’s solid use of MSAA.

In terms of Uncharted 3, I think that about covers it for now. The range of screenshots and videos showcase what appears to be a range of subtle, and quite substancial – in some areas – improvements to the core technology powering the game. On the whole it’s not drastically different to Uncharted 2, but more an evolution of the engine than a complete revolution. Although, you could easily argue that is all the game really requires.

Up next... a few 3DS bits and pieces to cover.


  1. Thanks david for the the analysis. Just to add, one of the obvious changes I see is environment is more destructible, and also how the fire chews up the wood into ash..