Tuesday 2 February 2010

Halo Reach Engine: Early Tech Analysis

A few days ago Bungie released the first batch of in-game screenshots from their newest Halo title. Interestingly these appeared to be in full 1080p (1920x1080) resolution, and didn’t seem to be upscaled. In addition, the screens at first glance also showed off a few improvements to the Halo engine, such as possible AA (anti-aliasing) and for the first time, AF (anisotropic filtering).

Whilst it’s not uncommon for companies to release higher resolution rendered screens to the press with higher IQ than the final game, and Bungie did the same thing with Halo 3 (remember those 720p native screens?), the first official sighting of Reach’s gameplay looks to hold some truths in regards to the engine used in the final game.



The above screen was posted on Bungie.net and is obviously in 1080p. However there appears to be a huge level of AA on display, far more than the 4xMSAA used in certain 360 titles such as Dirt 2 and Race Driver Grid. This simple excess of AA can be explained away with the use of supersampling, a simple process in which an image is rendered at a much higher resolution, and then downsampled to form a cleaner smoother final image. This is basically a form of AA which requires a huge amount of processing power, due to having to render at a higher resolution than the one you want to display at, but is also very effective at eliminating jagged edges across the whole scene.

It seems that this shot was originally rendered at 2560x1440 (thanks to AlStrong for the pixel counting) with no AA, and then downsampled giving the smooth 1080p image. This is certainly something that won’t be seen in the final game. Instead we expect Reach to render either in full 720p, or using the same dual 1152x640 buffers found in the previous two games. Currently we have no idea on whether any form of AA will make it into the game, that all depends on if they’re using the same HDR lighting method from before, or if they have adopted the use of tiling in order to fit a 2xMSAA frame buffer into the 360’s 10mb edram.

Either way, in order to render in 720p or using the 1152x640 dual buffer method with MSAA, they will need to title. Especially as they claim to be pushing more enemies and vehicles around on screen than before at any given time.

However whilst we can’t judge what AA will be used (if any), or at what resolution Reach will be rendered at, it is possible to see at least 4x AF + maybe trilinear at work, or just AF with a bias towards certain textures. If you look closely at the ground you’ll see it blur much further into the distance than with both Halo 3 and ODST.

Texture detail in itself, has also been improved, with greater levels of normal mapping and improved shaders on many surfaces. Combined with the use of AF, the numerous bumps and curves of the cliff faces and surrounding scenery are much more apparent than before.

You can also find small elements of SSAO (Screen-Space Ambient Occlusion), particularly on some of the environment details, although rather subtle. It doesn’t appear to be present in the entire scene, with only a few points of visibility in other areas. A clear example can be found in the screenshot below, look at the metal shelving in the bottom right. The shading there isn’t quite correct, a usual side effect of using SSAO.



There’s no sign of the improved lighting model in the first-person screenshot either, though it’s very hard to tell, especially without seeing the same area, but from different angles as to analyse the shadowing and lighting. At present it looks very similar to ODST, and there’s no sign of the multiple independent light sources that Bungie stated is going into the game. Though those have been witnessed in other screenshots released, showing what looks to be from in-game engine cut scenes. (see above)

Arguably the gameplay build we’re seeing here is very early, and is almost certainly likely to see a noticeable improvement by the time the beta launches. Between now and then, we still have many questions that need answering. Will Bungie still be keeping the benchmark HDR of the last two games, in addition to the 30 or so real-time light sources being added? Are we going to be seeing AF plus a proper 1280x720 frame buffer. Or will the HDR be dropped for an easier 1152x640 with 2xMSAA and AF approach using titling?

We just don’t know yet, and I guess the beta is when we will find out about some of this stuff. The rest will no doubt have to wait for a more complete single-player build of the campaign, in which nothing will be paired down to deal with lag, split-screen and other concerns, which almost certainly impact on graphics.

Anyway, this small insight into Halo Reach’s graphics tech is all we have for now. But stay with as, as we’ll be following any developments very closely.

No comments:

Post a Comment