Sponsored By

Gamefest: Capitalizing On Middleware

Speaking at a group panel at Seattle’s Gamefest, Epic’s Michael Capps and a trio of Unreal Engine 3 licensees presented their company’s experiences on how to best make an out-of-the-box engine fit a project’s specific requirements.

July 25, 2008

7 Min Read

Author: by Christian Nutt, Eric Caoili

Speaking at a group panel at Seattle’s Gamefest, Epic’s Michael Capps joined a trio of Unreal Engine licensees, including Gearbox’s Randy Pitchford, Midway’s Stuart Denman, and Chair’s Geremy Mustard, to talk about how to best make an out-of-the-box engine fit a project’s specific requirements. Avoiding Mistakes With Unreal Engine 3 Epic Games president Michael Capps kicked off the presentation by outlining the strengths of the company’s Unreal Engine 3. Describing it as “made to be modified and extensible,” he commented that most studios are able to create a game and work with the engine as soon as it's licensed. "We've got a lot of experience shipping products on consoles and PCs with this engine," he said, before reminding attendees that Unreal Engine 4 is also in production for the next console generation, roughly predicting its availability for “2012 - 2018.” He mentioned that Epic makes sure to use external middleware products: "One of the big things about licensing tech is not about reinventing the wheel, it's about catching up with your competitors." On modifying the engine, Capps suggested that developers alert Epic to fix bugs instead of changing the code themselves, which he expressed is “really, really bad." Using Ion Storm’s Deus Ex series as an example, he noted that while the original simply added a gameplay layer over the engine and was an “awesome game,” the team heavily modified the engine for its sequel, resulting in a disastrous project. “Most of the low hanging fruit is pretty much gone from the engine after shipping 50 or 60 games on multiple platforms already,” he said in regards to altering code performance. Instead, developers should work on optimizing content. Capps then suggested that developers ask for advice before starting a project: “I've seen five projects skip the Unreal Editor and go back to Max or Maya, and they all went back to the Editor in the end." Sharing his own missteps, the Epic president said his biggest technical mistake was creating America’s Army as a single-player game first, thinking network support should be added later: “We ended up throwing out 70% of our game when we took it to a multiplayer-only game later." Following Epic’s Lead Gearbox Software co-founder, president, and CEO Randy Pitchford took the stage next, pointing out that four of the studio’s titles utilize Unreal Engine 3: Brothers In Arms: Hell's Highway, Aliens: Colonial Marines, Borderlands, and an unannounced AAA shooter. Recounting how the company came to choose Unreal Engine, he said: “The decision we made related to wanting to support a number of games, mostly in-genre, first-person shooters. We wanted to do a number of games, stack them up and line them up, and we wanted to get as much of our passions and creativity in the next round." He continued: “We also wanted to be able to know what we were buying. Our decision related to support, it related to speed in prototyping, and it related to familiarity with the code and how the content and engineering path related to our own processes." Pitchford acknowledged that choosing Unreal Engine 3 meant having to accept that it’d be dependent on what Epic released, waiting to ramp up production of its games until the second half of the expected life cycle of current consoles. He noted that some developers who licensed Unreal Engine 3 made the mistake of shipping their titles in 2005 or 2006 instead of waiting for Epic to release its own games (e.g. Gears of War, Unreal Tournament 3) to see how the studio utilized the engine. Gearbox added several modifications to Unreal Engine 3 to support its needs, such as extensions for foliage, destructible environment, character bifurcation and dismemberment, animation compressions, and improved dynamic shadows. On the developer’s virtual memory modifications, he commented, “This isn't as relevant on the 360, but there are some advantages on the PS3, and it carries over to the PC.” Midway’s Modified Engine According to Midway and Surreal Software technology director Stuart Denman, Midway originally licensed Unreal Engine 3 because it wanted to share technology with its games: “It was one of their major technology directives back in 2004/2005... across many, many different game titles.” Midway’s Unreal Engine 3 projects include Stranglehold, Area 51, TNA Impact!, Wheelman, Mortal Kombat vs. DC Universe, This Is Vegas, and several other titles Denman couldn’t mention. "Unreal is mainly made for FPS games,” he commented, “So, [there were] a lot of deep technical challenges Midway had to overcome to make it work for these titles... We chose Unreal because Midway didn’t have the support infrastructure on any one of its teams. Unreal clearly had that advantage.” In adopting the engine for its titles, Midway not only built its own heavily modified version of the engine, but also mastered the UE codebase: “Originally, we had a group that worked on this core technology base, and we'd take updates from Epic when they did their releases. He continued: “But after the changes that we started making were more and more significant, we made a decision to separate from Epic, and since we had several hundred programming resources across Epic, we felt we could take that base and move on from there." Now, the studio just takes individual changes from Epic that are needed, but it understands those changes before implementing them. Denman remarked that with This Is Vegas, Midway added a streaming and hierarchy system and serialization optimizations to the engine: “I think we've gained back 150mb in the last couple of months just with code.” He concluded his portion of the panel: “We spent a lot of time working on visualization tools that we've added to Unreal... We have a heat map that's an offline process that does a sampling of anything from framerate to memory usage to animation budgets and plots it onto a map of our world.” Assume Developers Created Middleware The Right Way Now Epic-owned Chair Entertainment co-founder and director Geremy Mustard cited his staff’s familiarity with the Unreal Engine as the primary reason why his studio chose UE3: “I've been using the Unreal Engine for many years and our art staff has too... We were very comfortable with the Unreal technology, so when we started doing our projects, we decided to go with Unreal again." With only one programmer and seven artists, Chair was able to complete Xbox Live Arcade title Undertow in just nine months: "That would have been completely impossible without a middleware solution, and in particular Unreal 3." Pointing out that Undertow’s AI is based off of Unreal Tournament 3’s squad-based AI code, He suggested playing other games created with Unreal Engine 3, particularly Epic’s games, to understand how to use the engine: “Because of [the fact that you can use their code], you can look for examples of anything you want to do in your game in their game... and build upon that." He added, “Even though the engine is highly optimized, it was optimized with respect to Gears of War and Unreal Tournament." Licensees should recognize, however, that their own needed optimizations can be very different from Epic’s: “We had to optimize particles because we used particles way more heavily... than Epic had in a lot of their games.” Mustard said that developers should “assume that the people who created the middleware did it the right way. They understand the whole of their system better than you ever will... Even though I might write a system a little differently, I assume they did it the right way and then ask them questions about why they did it the way they did it.” Every one in a while, the middleware might not be coded in he best way, so it’s alright in those cases to change the code to fit the game better. But Mustard warned, “I've worked with a lot of programmers who will take the other approach [to remake the middleware], and they'll go in and try to do that, and it will always end up bad.” He concluded the presentation: “Nothing's impossible in games these days... It's just that the impossible takes a lot of time. But by using middleware, you can cut the time... And by using these things, you can approach the impossible and make a great game."

Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like