May 8, 2012

2D / 3D Hybrid Approach Explained

Q: "What made you choose a combination of 2D and 3D...were performance/costs a consideration? If these constraints were not there, would you have gone for 3D all the way?"

A: Many people have asked about Wall Street Titan's mix of 2D sprite characters and 3D vehicles and objects.  It's an unusual approach, but it's worked extremely well, we just had to take care to make everything feel like it was part of the same world.

Wall Street Titan's people are 2D pixel sprites living in a 3D world

There are several factors that convinced us to go this route, but the three main reasons were style, performance, and development time.

1. Style - The game concept originally had you trudging through big city levels, decimating buildings and squashing people like ants.  Because the people were so small, and we wanted to have big crowds, we knew not only would 3D not be feasible with performance on mobile devices, but it was totally unnecessary as the people were so small on screen.  

Early prototype on an iPhone 3 - the white circle was your finger squash radius

Although our world's inhabitants were tiny, we wanted them all to have personality and style, so tightly controllable pixel art was a good solution, and would allow us to have a huge variation in people with minimal memory/performance overhead.  

Tiny people in a dangerous city

As the game's development progressed, we realized the city was too big, it was hard to get around, early testing showed the people were too small, and even though they were just 2D sprites, the huge crowds we had early on were just too hard on performance. (huge crowds not pictured)

2. Performance - This was really the key factor.  As development furthered, we found having good physics on the vehicles was already a big performance bottleneck, and our cool building destruction physics slowed everything down immensely, so we came up with a scripted solution, a bit more like the old arcade game Rampage.  If we tried to have animated 3D people here, even with pre-scripted animations for everything and no physics, there's no way it would have run on a mobile device.

In fact, we originally had full physics on the 2D people, blowing them up to hilarious effect, but even this was too much for something like the iPhone 3GS (our base performance target), so we settled for some seriously clever scripting that our Technical Director, Brian Hunsaker put together.  It looks convincing to me, though; as far as I'm concerned, it's magic.

3. Development Time - With our camera now pulled in tighter, bigger characters, and fewer objects to fit on screen (saving processing time), relatively few people and vehicles makes it feel densely populated.  We could now process some 3D characters, but we'd have to sacrifice population density, which we feel would negatively impact the game, and would unnecessarily tack on a bunch of development time.

We definitely want the game to end up as high quality as possible, but at the same time, as a bootstrapping business, we don't have the luxury of the time or budget to do everything we'd love to do with the game.  We don't have the pockets of Valve or Blizzard, that's for sure, lol.

That said, we've had really positive feedback about the characters.  They seem to be hitting a chord with the public, saying they've got the right balance of charm and style, while being faceless enough that you don't feel bad about the horrible things you're doing to them.

So go on, give 'em a high five and squash all you want.

- Eric Boosman

P.S. Thanks to Manu Goel for the question!