Making the Halo 2 E3 Demo - Engineering
Wednesday, August 27th, 2003, 5:06 PM
A long time ago, in a galaxy far, far away... Well ok, so it was just 3 months ago and it was just LA, but it sure seems like an eternity. And who can argue that LA isn't kind of like its own galaxy? The Halo 2 demo has been out for quite a while now and you’ve probably read the other ‘making of’ interviews but one story has yet to be told. At long last I’ve been able to pry the keyboard away from our programmers and distract them from Halo 2 just long enough to get a little insight into their world. Chris Butcher and Michael Evans, two of Halo 2’s Chief Engineers, (with a little help from Damian), took a break from their complex equations and frantic whiteboard scribbling to talk shop with me about the E3 demo.
"The Story is what drove the concept of the demo. It dictates the design. The engineers strive to make the tools and systems that allow us to tell that story."
- Michael Evans, Halo2 Engineer
Can you briefly describe the overall process for building this demo from an engineering perspective?
Michael : The biggest thing we tried to focus on was to not focus on the actual demo. This was great in theory but after a few weeks it didn’t work so well.
Butcher : It’s important that engineering is involved in the demo planning process early on, so that we can make the call on features which we think will be impossible in the time available. Other than that, we tried to stay our normal path for as long as possible. Because it was going to be an in-game demo, we had to concentrate on continuing to build real game systems rather than putting together demo-specific "hacks." We spent a lot of time working on visual quality and performance towards the end.
What dictates the final content in the demo? Is it the technology? The Design?
Michael : The story is what drove the concept of the demo. It dictates the design. The engineers strive to make the tools and system that allow us to tell that story. For this demo, we needed to do it in a way that as real as possible (meaning we were building systems that were good for the actual game). Then in the end we have to make it all fit into a debug box that has no more cpu/graphics power then a normal. So in some ways it’s reality that dictates what we can do. It is then really everyone’s job to make sure that reality doesn’t get in the way of what we want to accomplish.
Butcher : We have built a lot of new systems since Halo 1 and it’s our job to make sure that the demo takes advantage of them in an efficient and inspiring way. All of the engineers spent a lot more time working with the artists and designers to make sure that everything they created worked well in the engine. Our job is really to build an engine that never forces us to say "No, that’s not possible" to a member of the team.
What was the biggest challenge in creating this demo?
Michael : On a single piece of technology side, the lighting was and still is the big challenge for us. It is the largest, most performance intensive feature and we don’t have the luxury of being able to use a faster machine and/or video card. That was on top of the fact that we picked a level that, while being very cool and fitting into the next natural part of the story arc, was not an easy level for us to do. In the end, that worked out really well and taught us an enormous amount about what we have to work on.
How was creating this demo different than the Halo 2 announcement trailer that was released last year?
Michael : The largest difference was that this demo was all real-time. It meant that we had to make things real in performance and memory which was much more challenging than what we had to do with the announce trailer.
Butcher : Another important factor is that this time we actually had a lot of game systems up and running. The trailer was rendered out of a branched codebase which consisted of just our new rendering engine. For the E3 demo, we had all of the real AI, scripting and physics to contend with as well.
What are some of the major technological differences between what was shown at E3 and what was possible in Halo 1?
Michael : The largest difference is the new approach to lighting. Much more of the lighting was dynamic and more accurate. However, there were tons of things that were different. For example, more detailed sounds. We went from primarily using 22Khz sounds to 44kKhz stereo sounds. Halo 2 also uses bump mapping more pervasively than Halo 1.
Butcher : The new graphics engine is huge. But less obviously, the AI is fundamentally different as well. They are much more aware of their allies and have a number of advanced group behaviors that you can see in the demo. Not to mention the driving!
Speaking of AI, can you talk a little about the improvements in Halo 2? We know that Marines have now completed “Driver’s Ed” and we got a small taste of our new smarter comrades in the E3 demo. How much smarter is the AI this time around?
Chris : Damian is our AI guru for Halo 2 so I’ll defer this to him...
Damian : We’ve made some pretty radical internal changes to the AI. The things you’ll probably notice first are the places where we’ve gone in and expanded the AIs’ abilities in specific ways. Driving warthogs and dropships are examples of that, as are vehicle-boarding and group behaviors (such as the jackal formation in the E3 demo). A lot of these are not really a matter of making them smarter so much as giving them more to do.
Is there a particular aspect or feature in the E3 demo that you’re most proud of?
Butcher : I’m very proud of the ‘beauty shot’ when the Chief slides to a stop, then gets up and looks at the city skyline. Also, the AI driving is spectacular... I love how they don’t get all fazed by everything blowing up around them. They’re good at dodging flying cars too.
Damian : I would have to say the warthog driving probably (of the things I worked on). We spent a lot of time getting the driving right, and looking natural. In the demo the warthog was being told to go to certain waypoints, but was deciding for itself how to get there. There is a LOT of code in there to make sure that the warthog is accelerating and decelerating realistically, turning at an appropriate rate, rounding off its turns appropriately, etc. I think we got it to a point where it looks like a human might be driving it, which is super-cool!
Thanks for your time guys! Before we go, can you give us a quick introduction to the Halo 2 engineering team?
Michael : The Halo 2 Engineering team is:
- Chucky : Charlie is an engineering lead who wrote the Halo 1 physics. Outside of Jason Jones, he is the engineer who has been working on Halo for the longest.
- Butcher : Butcher came from New Zealand to work on graphics for another Bungie product but was quickly stolen by the San Jose team working on Oni where he learned AI programming and wrote a kick ass AI along with a particle system. Butcher went on to write the Halo 1 AI and lead up the Halo 2 graphics, AI, networking and a whole lot more during the drive to E3.
- Ben : Shortly before E3, Ben was thrown full force into the graphics and visibility work on Halo 2 which he is still working on.
- Michael Evans : I led the Oni team in San Jose, the multiplayer effort on Halo 1 (and yes, the lack of bots are my fault) and led the overall engineering effort on Halo 2 leading up to E3.
- Mat : Mat owns the tools that all the artists and designers use to make Halo 2 the great game that it is. He also owns sound for Halo 2 and has been able to make huge strides there (more fidelity, more channels, same memory).
- Greg : Greg is currently working on animation for Halo 2. He has written numerous articles and recently a book on Real-Time 3D Terrain Engines.
- Stefan : Stefan was captured by brigands and brought from Chicago to San Jose to help the Oni team finish. Since then he has written a variety of pieces of networking code as well as the UI for Halo 1 and Halo 2 (in progress).
- Eamon : Eamon was actually finishing up some other work leading up to E3. He has since been brought on to the Halo 2 team where he now works on physics.
- Jason M : Jason is working on the graphics of Halo 2. He reworked the particle system and various parts of the graphics system.
- Bernie : Bernie wrote the Xbox graphics engine, decal system and animation compression for Halo 1. He has the largest collection of mysterious electronics parts on his desk and works on the graphics system for Halo 2.
- Damian : Damian was brought on board to work on the Halo 2 AI and has been immersed in it ever since. The AI vehicle driving in particular was all work from Damian (just wait until you see them turn in tight spaces) as well as tons of the new behavior the Marines and Covenant show (better coordinated AI, the Jackals moving as a unit and so on).
That’s All Folks
And with that, we close the final chapter on the “making of the E3 demo” saga. If you never caught the earlier stories, be sure to check them out:
That’s it for the E3 story but trust me, we’ve barely scratched the surface of Halo 2. Stay tuned to Bungie.net in the weeks and months ahead for more behind-the-scenes stories and info!