Why use a 3D engine for strategy games?

Published on Sunday, September 21, 2003 By Brad Wardell In Software Development

Why use a 3D engine for a strategy game? Especially ones that take place on a 2D plane (like land or a space board game style?)

A big thing that isn't discussed much is that 3D is much more hardware accelerated than anything done in 2D.  What that means is that at some point, when the lowest common denominator machines start to have Geforce 2 level cards (with T&L) then you will see more games go to 3D.
 
For instance, our next generation strategy game engine is going to be done as a 3D engine.  The game map will still be 2D (i.e. on a plane), but it won't be sprite based.
 
Here are some things that buys you:
 
1) Hardware acceleration.  This is a big deal. In GalCiv, we have limits on how much stuff we can put on the screen because the CPU is doing all the work in animating those sprites and such.  But with a 3D engine, the same scene could be much more complex and still be faster. All eye candy aside, hardware acceleration would mean that the strategy game would be faster and more responsive which is the type of thing strategy gamers really care about.
 
2) Multiple resolutions. It's easier to make use of different resolutions with 3D.  With sprites, you're either stuck keeping them the same size or creating different sprites for different resolutions.  With 3D, things are treated almost like a vector -- they're rendered on the fly. Warcraft III made some use of this by having the units be more detailed and nicer at higher resolutions (though I would personally prefer a compromise -- slightly more detailed scenery but be able to see more too).
 
3) Much more seamless effects. With 2D sprite based engines, you have to pre-render your explosions, weapons, etc.  With 3D you have a lot more effects at your disposal more easily. Lights. Shadows. Tintings.  Sure, it's eye candy but if I'm playing a World War II strategy game it would be nice to see the terrain taking damage. Imaging Heroes of Might and Magic if the spells have a lot more visual punch, damage and morph terrain. Think of the additional game mechanics you could have in HOMM if spells could morph terrain on the fly in visually exciting ways?
 
4) More fluid animation.  In sprites, you're very limited to how many frames of animations you have since each frame has to be kept in memory to have adequate performance.  So units tend to move a bit jumpier.  How many different positions can a unit take when moving around? 7? (n, ne, e, se, s, sw, w, nw?).   Maybe double that? With 3D you can have it totally smooth.
 
5) Less disk space.  Sprites take disk space.  They're pre-rendered.  In GalCiv, the WEAPONS animations use up 30 megabytes of disk space.  Models use only a few K in space.  So that starship that might use 6 megs prerendered and only have 32 different direction movements could now be 600K, have perfectly smooth rotations and even bank when turning,  have light effects as it nears a star or change hue as it travels through a nebula.
 
But there's been a huge gotcha against using 3D in strategy games -- strategy games need a lot of polygons.  We used sprites in GalCiv because we wanted our ships to be distinct and have good performance on low end hardware.  I don't like muddy, polygony ships.  But pretty soon, the Geforce 2 level cards will be that low end and when that happens, you'll be able to have games that have all the advantages of 2D (sharp looking units and graphics) with the advantages of 3D and they'll actually be more responsive, use less disk space, and look nicer.
 
But that doesn't make 2D dead. It depends on the use.  Sprites make a lot of sense still in lots of cases.  But 3D engines are very close to reaching the point that they make sense to be used in creating strategy games. Even strategy games that are on a 2D plane.
 
Here are some screenshots from stuff we have in the lab that runs at very high frame rates on a Pentium 1Ghz with a Geforce 2MX card which by 2005 will be a very low end machine.
 
(rough but you get the idea, click to zoom)

Normal view
 

Zoomed out.