Google Search

Custom Search

Sunday, July 1, 2012

Technical Look At Max Payne

For what I believe is the first time ever, this is not the case here. While we're not seeing Battlefield 3-esque graphics, Rockstar has done well to make sure that the game looks as good as can be on the PC. The environments are highly detailed, and the character models are some of the best we've seen (thanks in part to L.A. Noire, I'm sure).
Max Payne 3 features support for DirectX 11, a fact NVIDIA helped promote long before its PC launch. Obviously, just because a game supports DX11 doesn't mean the differences over DX9 will be like night / day, but for those wanting to take advantage of tessellation, a DX11-compatible graphics card is required.

Tessellation

For this game, Rockstar implements Phong Tessellation to help smooth out rough edges on people and vehicles. The idea is that instead of the curvature of a character's head having obvious rough edges, it'd be smoothed out with the help of phong shading.
As we discovered, however, the effect that this tessellation technique has in-game is minimal at best. Here's a comparison shot:
Max Payne 3 Tessellation Comparison
In all of our tests, we found that tessellation did little more than "bulk up" character clothing - something that's almost non-distinguishable unless two images are looked at side-by-side. In talking to NVIDIA about this, we were told that the biggest differences would be seen in close-ups of characters, such as around their ears or head. However, getting close enough to a character to see a difference like this is easier said than done. There's no camera zoom in the game, so where the differences stand to be seen are in cutscenes.
For a better example, I recommend downloading this archive (400 KB, JPG) and view the included before and after images full-screen. When flicking between them, the differences with tessellation on are noticeable, but are not necessarily "better". In some cases, I'd say tessellation makes characters look even worse. There are exceptions, however. In these shots, Max's hands look far more natural with tessellation turned on. It's the rest that's debatable.

FXAA vs. MSAA

Since the launch of its Kepler architecture, NVIDIA has been pushing the use of FXAA due to its performance advantage over MSAA. While MSAA applies in real-time, FXAA acts as a post-processor, filtering the image just once (as opposed to 4xMSAA, which renders 4x the resolution and then downscales). This drastically reduces that amount of memory required, and the end-result is top-rate.
To better see the differences in the example below, I recommend clicking on the image to view it at native resolution. Without anti-aliasing, jaggies are evident around the door frame, the broken wall and woodwork in the middle. With 'Very High' FXAA applied (there is less than a 1% performance hit between the lowest and highest FXAA levels on a GTX 580), most of the edges in the screen are smoothed without the introduction of some side-effect. Comparing the FXAA and 4xMSAA shots, both are almost identical. The nod goes to MSAA, however, as it managed to smooth out the perimeter of the wall a bit better.
Max Payne 3 Anti-Aliasing Comparison
Is that minor improvement worth a ~50% framerate hit? For most people, no. Some might argue that 48 FPS is suitable, but this was a simple scene, and the same setting would plummet some to about 25 FPS or less. I know this, because I went through the entire game with 4xMSAA enabled, not cluing in until I got down to testing. Even with FXAA enabled, some scenes will dip to 60 FPS, which is more than suitable.
On the following page, we'll cover both Ambient Occlusion and Image Quality.by rob williams

No comments:

Post a Comment