Gamasutra: The Art & Business of Making Gamesspacer
High Moon Shining: Inside Sierra's San Diego Outpost
View All     RSS
September 22, 2017
arrowPress Releases
September 22, 2017
Games Press
View All     RSS






If you enjoy reading this site, you might also want to check out these UBM Tech sites:


 

High Moon Shining: Inside Sierra's San Diego Outpost


September 21, 2007 Article Start Page 1 of 11 Next
 

Early last year, Vivendi Universal's burgeoning Vivendi Games division acquired Darkwatch developer High Moon Studios. The developer began its life as the development arm of Japanese pachinko behemoth Sammy before its merger with Sega, transitioned to an independent studio and finally found its home with Vivendi.

Earlier this year, Gamasutra toured the studio, gaining insight into the tools, techniques, strategy and inspirations that fuel the company, as the studio works on titles including The Bourne Conspiracy, due mid-next year.

First, we spoke with Clinton Keith, who currently heads High Moon's technical department, overseeing research and development of next-generation game engines. A seasoned veteran of both the video game and graphics technology industries, Keith's career has taken him from programming avionics for advanced fighter jets to working for such studios as Angel Studios, now renamed Rockstar San Diego, where he worked as both the director of product development and lead programmer.

What third-party tools do you use?

Clinton Keith: We're pretty much an Unreal 3 house, so we use all the tools associated with that: Maya, Max, and a number of plug-ins like Face Effects, AI Implant, SpeedTree, and tons of smaller things like MotionBuilder. We have about a dozen people on what we call a stability and tools team. Their focus is on making the engine, keeping it stable, and building tools on top of Unreal 3 that make the job of the content creators easier.

Did you have a proprietary engine previously?

CK: Yes. It was called Score, which stood for the Sammy Core Engine. Rather than just a complete engine, it was more of a framework with this behavioral layer on top that controlled how objects in the world operated. It was all data driven through tools. You could change the behavior of the game very quickly, much as you can do with Unreal 3. Underneath that, we just bought parts off the shelf.

That's what kind of drew me here -- we kept spending a lot of money on physics engines at Angel Studios [now Rockstar San Diego.] It's kind of hard to break away from that once you spend millions of dollars, but then you look at the cost of something like Havok off the shelf, and it's less than what you spend on one engineer a year, and they've got 35 people working on it. I really wanted to take the company in that direction, but there was a lot of inertia against that. I saw Sammy [Studios, High Moon's previous incarnation] as an opportunity to say, "Let's see if we can give more control to the content creators. Let's take that money [spent] on the programmers doing physics and instead put that into tools."


High Moon's California studio

How important is it to be up on the latest versions of tools?

CK: This is the problem -- one of the things that I like to have for tools is the source code, so that we can modify it for our own particular needs. This is one of the biggest lessons we learned in going to Unreal 3. I like Unreal 3 -- it's gone through a lot of changes, and it's now stabilized -- but any kind of tool or engine that you buy off the shelf has some assumptions built in, in terms of the workflow. Unreal 3's power is in its tools, but those tools are built based on the philosophy of how their level designers and artists build levels. If you go into that with a different approach... you'll have a learning curve to overcome.

Now that we're getting close to the final year of our game, we're not upgrading. The problem with upgrading is that it keeps you back on the vendors' path. For the first year and a half of using Unreal 3, we couldn't deviate, because there were so many changes going on it would be disastrous for us. Now it's all about diverging and doing things that we need, to put icing on the cake.

There's some problems with that. In my last year at Angel Studios, we were working on an entirely data driven approach -- giving content creators entire control over behavior, and making tools to allow that to happen quicker. Two of us came over to Sammy to continue that. The problem is that you can never create a perfect system that can anticipate all contingencies. The path it can take from an obvious piece of data to the game not behaving correctly is really long. When we finished Darkwatch, we had something like 13,000 bugs, most of which were caused by bad data matching, and all the stuff that built up because of this ideal we had of giving total freedom.

Do you wind up having to clean up a lot of code? Giving designers control over that level of specification tends to wind up with a lot of spaghetti.

CK: It's true. Technical designers often haven't learned some of the techniques that programmers have learned in writing self-testing code, and we get bit by doing it in C++. They don't pay as much attention to the underlying performance issues, because you still have to use some of the tools. We try to encourage technical designers to work shoulder-to-shoulder with the programmers, rather than coming to the programmer with a bunch of code that they've written. They'll prototype something out, or invite the programmer over to talk about the problem, and maybe on a day-to-day basis, we get something in the game that works that the programmer can verify.


Article Start Page 1 of 11 Next

Related Jobs

Level EX
Level EX — CHICAGO, Illinois, United States
[09.22.17]

Associate Producer
WRKSHP
WRKSHP — San Francisco, California, United States
[09.22.17]

Senior Game Artist
Supergiant Games
Supergiant Games — San Francisco, California, United States
[09.22.17]

Platforms Engineer at Supergiant Games
MindBlown Labs
MindBlown Labs — Any City - Remote Work, California, United States
[09.21.17]

Contract Unity Developer





Loading Comments

loader image