Tech Interview: Halo: Reach
An exclusive, in-depth chat with Bungie on the making of Reach.
Stop us if we're getting too technical... on the other hand, don't bother! When the opportunity arose to talk tech with Bungie on any topic of our choosing, let's just say that we didn't hold back. And luckily for us, neither did the studio. What we have here is a titanic 6000 word insight into the technical make-up of the Xbox 360's biggest exclusive of the year.
In this piece, we go into depth on a vast array of technical topics: we talk about the deferred rendering solutions employed by the Halo games, the enhancements made for Reach, anti-aliasing, atmospherics and alpha, plus we talk about how high-dynamic range lighting is handled in the new game.
It's fair to say that this is pretty high-level stuff, but our other discussions on performance, co-op/split-screen, artificial intelligence, animation, motion capture, the return of the Elites, plus the process by which Bungie polishes its game before release should be accessible to all. Also, we get to the bottom of the mystery of the deleted campaign level that had the player in control of a Covenant Scarab...
Joining us for this interview are graphics engineer Chris Tchou, character designer Chris Opdahl, community/writer Eric Osborne, senior animation lead Richard Lico and character engineer Max Dyckhoff. Thanks to each and every one of them for putting so much time and effort into what is one of the most expansive and comprehensive tech interviews we've ever published here at Digital Foundry.
The last hurrah for the 1.2TB of lossless HDMI captures Digital Foundry has of Halo: Reach. Here's the entire single-player campaign condensed into 16 minutes, 34 seconds. Um, spoilers...
Digital Foundry: Let's kick off by talking about upgrades to the renderer. You're able to handle far more light sources than previously - have you adopted a deferred model? What research did you undertake and what solution did you eventually settle upon?
Chris Tchou: Halo 3 and Halo 3: ODST used a 'semi'-deferred two-pass rendering approach, except for small decoration objects like grass and pebbles which were forward-rendered in a single pass for speed. Semi-deferred rendering allowed us to have cheap decals, but we didn't use it for deferred lighting; the lighting was rendered in the second pass over the geometry so we could have complex light map lighting and nice-looking metallic shininess (i.e. something better than Phong specular). For Halo: Reach, we rebuilt the deferred buffers so they could better approximate our specular models, which let us use fast deferred dynamic lights everywhere without losing shininess.
On top of that, we also built a system to determine when objects were not taking advantage of the deferred path (ie. they had no decals or complex deferred lights touching them) and switch those objects on the fly to the faster one-pass forward rendering. Yaohua Hu also spent a lot of time researching an improved light-map representation (it's better than spherical harmonics!) that gives us the same support for area light sources, improved contrast, fewer artifacts, a smaller memory footprint and much better performance. This helped to free up a lot of GPU time to use for the dynamic deferred lights and other graphical goodies.
Digital Foundry: Previously, there was brief mention of being able to render many more particles in Reach, and in the first ViDoc we saw a fleeting look at a demo - what's new here and how is the tech used throughout the game?
Chris Tchou: We built a particle system to handle the specific case of numerous small transient particles - basically rock chips, dirt puffs, rain drops, splashes, sparks and that kind of thing. I am presenting it in more detail at the next GDC, but the neat part is that it can handle tens of thousands of collisions/bounces each frame by reading the depth and normal buffers, and the whole thing takes less than 0.3 ms (about 1/100th of a frame); which looks pretty good compared to the seven (7) standard particle collisions per frame allowed by the effects budget.
The new particle system allowed the effect artists to use huge numbers of these small colliding particles in their effects without worrying about performance at all. Oh and it's used for the rain too: if you watch the rain in slow-motion in the theatre mode you can follow a single rain drop as it falls until it splashes onto something!
Digital Foundry: How is HDR being handled this time? The dual framebuffer seemed to get a lot of flak in Halo 3 in terms of the resolution downgrade, but there wasn't much explained about it. Were other framebuffer formats (7e3/FP10 or INT16) just nowhere near comparable? Your previous GDC presentation only described the differences in terms of numbers, but the real-world comparison is difficult to visualise otherwise. What's the approach in Reach?
Chris Tchou: We use a single 7e3 buffer for our final render target in Reach. This results in a more limited HDR (about 8x over the white point, as opposed to 128x in Halo 3) but is much faster for transparents and post-processing. In practice, the difference between 8x and 128x HDR is slight - the main thing you may notice is that the bloom around bright areas loses its color more often, desaturating to white.
And yes, a single 7e3 buffer gives us more available EDRAM for the final lighting pass, but the render resolution is still limited by the three buffers used in the main deferred pass. The resolution in Halo 3 was more limited because we save some EDRAM for dynamic shadows during the lighting pass, alongside the 2 HDR buffers and a depth buffer. But with a single 7e3 buffer, we have plenty of extra room available for the shadows, and it's only limited by the 3 buffers used during the deferred pass.
Digital Foundry: The set-ups used in Halo 3, ODST and Reach suggest that you're not fans of tiling out the EDRAM. What are your reasons here?
Chris Tchou: Multiple tiles are problematic: they either add too much controller latency (because predicated tiling delays the GPU start), or they result in too many passes over the geometry, eating up large amounts of CPU (basically rendering everything twice). Another factor is the 360's DAC, which has the super fancy up-sampling filter that hides any artifacts - we actually ran user tests on various resolutions and no one could tell the difference! So we chose to take the additional performance and reduced controller latency over the nearly imperceptible resolution increase.
You may also like...
-
Gravity Rush Review 48
-
Sony patents method to interrupt your gaming with an ad 105
-
Wii U Aliens: Colonial Marines is best-looking version because of console's "more modern tech" 73
-
Kingdoms of Amalur: Reckoning needed to sell 3 million to break even 65
-
Activision vs. Vince Zampella and Jason West: Inside the game industry trial of the decade 70
-
Skyrim gets mounted combat in new update 52
-
Arma 3 in-engine footage shows off lighting tech 18
-
App of the Day: Go Robo! 2
-
Dirt Showdown Review 89
-
Minecraft overtakes Black Ops on XBL activity chart 25
-
Ghost Recon: Future Soldier Review 132
-
Minecraft total sales hit 9.2 million 8
-
FIFA has a new world champion 8
-
How the Darksiders 2 delay benefits you 9
-
Tony Hawk's Pro Skater HD soundtrack listing revealed 18
Comments (38) Latest comment 1 year ago
Comments for this article are now closed, but please feel free to continue chatting on the forum!
Comment below viewing threshold Show
Comment below viewing threshold Show
For me, Reach is the best shooter this year, and probably the best Halo game in the series.
Comment below viewing threshold Show
Comment below viewing threshold Show
Also Bungie has a nasty habit of not-so-great-presentation, not only in art design, but in plot pacing, etc. Example in Reach: *super calm monotone voice*:"the convenant is on reach repeat the convenant is on reach", seriously? Or the inability to blend non-interactive first-person cutscenes seamlessly into gameplay (which is the industry standard, for like 5 years?) but still has a whitewash screen
Comment below viewing threshold Show
Comment below viewing threshold Show
Personally I love it - can't think of any other game with so much colour and action - green, purple, gold and blue fire and explosions, multiple & different enemy models all with crafty and clever AI (on the harder difficulty levels and/or skulls) to fight at the same time.
It's pretty damn glorious.
Shame about the shite voice acting and inept communication of story...
Comment below viewing threshold Show
/Drools on carpet.
Comment below viewing threshold Show
Comment below viewing threshold Show
Comment below viewing threshold Show
Hear that, Treyarch?
Comment below viewing threshold Show
Comment below viewing threshold Show
Comment below viewing threshold Show
I played it through again, and I still spent the whole time in a panic!
Great interview though - hope it makes people pause a bit before slagging off minor glitches in superb
games like Reach.
Comment below viewing threshold Show
Comment below viewing threshold Show
Comment below viewing threshold Show
400 points for that and maybe a mission where you play as Carter/Kat in New Alex whilst six is in the Falcon, instabuy from me.
Comment below viewing threshold Show
Comment below viewing threshold Show
Comment below viewing threshold Show
Sometimes the AI had me fooled I was playing against real "people". One time, I retreated into a very small corridor to reload, only to have an Elite (whose shields where down) jump in, melee my shields and immediately jump away into another corridor. As I was trying to track the Elite a little one, obviously part of the Elite's group, sneaked in from the other side and finished me off.
That kind of enemy team play and unpredictability; anyone whose played this game on heroic or above will have a "wow" moment. I don't know of any other game that does this and Halo has been doing that sort of thing all the time.
However, as people point out, Bungie is not very aggressive about communicating the real depth of their game. In true sandbox fashion, leaving a lot of that for players to find out.
Example: how many use the simple plasma gun (the most default covenant weapon)?
It seems weak in comparison to other guns but it has one trick that a lot of people miss.
If you have one, charge it and a single blast will disable enemy shields and vehicles, even dropping banshees from the sky, after which you can hijack them!
Combine a plasma gun (charged) to disable an Elite's shields with a human weapon to finish them off quickly and you won't have to go through half your ammo to take one down. Human weapons are excellent against flesh/armour, but relatively weak against shields. The covenant weapons are exactly the other way around. Once you get the hang of each weapons strength, suddenly you can turn the difficulty up one or even two notches.
Halo doesn't really communicate that other than showing this during combat as the small ones tend to do this to you often to players, but it's hard to pick up on that when fighting.
Music
I didn't enjoy the music as much as I expected as I absolutely love the first one for its score. Didn't like the pseudo "metal" in the second one and the third one was great again. Reach however doesn't really leave an impression.
One really smart thing about the music is the loading sequence (starting the game). As you'll notice, the Reach Danger music crescendo's (climaxes) before you actually see Planet Reach. The camera's still tracking over the surface of the little moon when the music already reaches its conclusion. When Planet Reach then comes into view the music is quieting down again.
This seemed strange when I first saw it, but it is telling something: You know how it ends even before you see the planet on which it will end. It is one of many clever and thoughtful ways of communicating, subtle so easily missed... but it is what makes Bungie games so special.
It's a shame reviewers never seem to pick up on these kind of things because what sets Halo games apart is not that it excels in one discipline of game making (though Reach can compete) but the attention to detail and the fine balance between graphics, ai, sound, open world, freedom etc. The experience of playing Reach comes close to playing the first one and I agree with the poster before me saying it seems underrated. Perhaps because it doesn't do anything new really, instead just perfects what it already did well before?
And does anyone do skyboxes the way Bungie do them? I can stare at those fights in the background and light and cloud effects forever. Seeing that cyclone move over the planet in the space missions and it arriving on the horizon in the last one. Gorgeous stuff.
Well the answer is that Red Dead Redemption can, but still ; )
Thanks for this great insight Richard and Bungie!
Comment below viewing threshold Show
Bungie: *Ctrl + C* ---> *Ctrl + V*
Eurogamer: Brilliant.
Comment below viewing threshold Show
I don't think I would have been able to tell the difference between 1152 X 720 and 1280 X 720 either. Nice trade.
Comment below viewing threshold Show
Comment below viewing threshold Show
His points about the music were of particular interest to me - being a huge score fan (movies, games), I too have a deep fascination with how music and imagery are married together for dramatic effect, and I agree that Marty nailed the opening credits score.
Comment below viewing threshold Show
Anyway, I personally think Reach took a more subdued aesthetic direction from Halo 3, which I do not actually find preferable. From what I've seen I think many other people have a similar reaction, so then their gut response may be that it's not more impressive than Halo 3. But the overall package is in a technical class of it's own, especially for the FX, and the performance in so many different conditions. They've managed to deliver 5 games in a row that, while none quite as perfect (imo) as the original, always upped the ante for both tech (excepting ODST of course) and gameplay in some fundamentally successful way.
Bravo Bungie, and thanks for the article DF, it seemed very even and honest.
Comment below viewing threshold Show
Can't wait to see the GDC presentation on the voxel-based impostor system. It's simply amazing to see just how much stuff Reach throws around.
The game is technically and artistically amazing. It's incredible how much it does, from vast terrains with tons of vehicles, to one-on-one battles, all while looking and performing great.
The depth of the game, and the attention to detail, makes most other shooters look basic.
A tie with RDR for GOTY, as far as I'm concerned.
Comment below viewing threshold Show
Comment below viewing threshold Show
Comment below viewing threshold Show
Great article.
Comment below viewing threshold Show
Comment below viewing threshold Show
The way that the ai seems to have a plan up its sleeve gives it a kind of character and believablity that makes is all the more fun to battle against. Even years after halo 1 I can't think of another game that manages this nearly as well.
Comment below viewing threshold Show
Love this tech stuff, very interesting
Comment below viewing threshold Show
Comment below viewing threshold Show
Comment below viewing threshold Show
I agree with you but in 07 apart from Uncharted the PS3 didn't have much in the way of technical prowess. Heavenly Sword was too jerky. I was more underwhelmed with Halo 3 tech after seeing what Gears of War had to offer from a technical stand point. But like Reach I started to appreciate its other qualities more such as the lighting, sandbox gameplay, A.I, music, framerate and controller latency.
Comment below viewing threshold Show
Comment below viewing threshold Show
As for what load the AI takes, well it would vary depending on the mission, scene complexity, etc. The "AI" is (effectively) distributed over time in what is a glorified (but very cunning) state machine.
So I don't think there's any useful metric like "10%". There are probably ceilings imposed when it comes to numbers of units and certain algorithms, but most of the core decisions are probably not programmatic: they are set by the mission designers.
i.e. instead of capping "AI" to 10% of CPU usage -- which is a narrow kind of metric -- the designers/artists have perf tools so they can see the impact of their choices. If a scene is too busy, different choices have to be made. (e.g. disable super-cunning flocking in a scene with 20 grunts; make them use paths instead.)
Comment below viewing threshold Show
Comment below viewing threshold Show