Game Development Community

Isometric (2D) vs. 3D

by William Mitchell · in General Discussion · 04/30/2003 (11:36 am) · 22 replies

From an independent game developer point of view (with limited financial resources), what advantages - if any - are there for designing a 2D isometric MMORPG game as opposed to 3D? Something like Fallout, UO, etc.

Thanks.

W.
Page «Previous 1 2
#1
04/30/2003 (12:38 pm)
Well, my thoughts:

2D - Advantages -

- You can make 2D with all kinds of cheap tools, even just a simple Draw program.

- Animation is strait-forward and rather simple and can be done cheaply as well.

- 2D is easier with bandwith, instead of calculating positions in 3D space, it simply pastes an object/sprite at it's desired coordinates. Think digital (sprite based) vs. analog (3D Space).

2D - Disadvantages -

- Getting anything to look good takes some good artists or helper programs (which may cost a bit). Don't expect to get DKC looking graphics from drawn sprites.

- Animation can be a real pain, doing every frame for every desired action, then making sure that the game itself animates at the desired framerate. 3D instead allows you to create a model and animate it, which can be somewhat dificult, but sure beats redrawing the same sprites in different poses.

- You live in a 3D loving gamer world (had to mention it, though there are plenty of non-3D games still ruling the 'net) ;)

These are some off the top of my head, though I could be less informative than someone who's more used to working with the proper tools so maybe they'll post something ;)

Anyways, you do have a good advantage to using 2D if you don't mind the lack of realism that EQ fans will want, but hey, I could be wrong.

- Chris
#2
05/01/2003 (9:54 am)
Christopher got several points down, but I'd like to add one of my own. The question of a single camera angle vs. multiple camera angles. If you ever played "Syndicate," you might have an idea of what I'm talking about. If not, I'll explain.

The question stems from how much effort you want to put into the art. Do you want to have the camera angle set so that "north" is always the upper right corner of the screen? Or do you want to have the player have the option of changing the angle along the four compass points, so that a character might disappear behind a building if the camera was looking north, but would be perfectly visible if it was rotated 90 degrees east or west. The benefit to having the four way camera is that it gives your buildings and monuments more of a sense of being 3D, plus allows more options in terms of location (i.e. a puzzle where certain objects have to be fitted into specific sides of a statue). The downside is that it means four times the amount of work to get your buildings and such displayed. Still, it's worth the effort, I would say.

Hope this helps.
#3
05/02/2003 (6:09 am)
If you want to do a 2D game and get some characters done in a hurry but that will still look great, I've always thought this would be the way to go:

Model your characters in a cheap modeler like MilkShape ($20) and use as many polygons as you heart desires. You can also pile on the materials becasue the end result won't take a performance hit.

Now setup all your animations and all and take screen casptures of them all, or even better yet, grab a freebie like Anim8or and use screen renders!

Now you can crop the images down and you'll have great looking, consistent animated characters!

Just something I thought of some time ago while working with a team on a 2D Isometric game (that we never finished unfortunately =/ ).

Chris and Axel have made some very good points, and those are definitely some things to think about. I have to admit though, there must be some kind of market for 2D games, Diablo and UO never cease to amaze me in their popularity! ;-)
Cheers.
#4
05/12/2003 (6:59 pm)
also, check out ragnarokonline (http://www.ragnarokonline.com/) for a really cool combination of 2d sprites in a 3d world.
#5
07/08/2003 (8:29 am)
I've put a lot of thought into this myself and come to this conclusion on 2D vs 3D. Of course this is simply an opinion.

Unless you are making a FPS(or 3rd person, like Hitman) or a Flight sim/racing game of some sort. I really have yet to see the need for an all out 3D game engine. If you ( I am ) are looking to make something in the area of RTS, RPG(non-persistent) or turn based, then 2D is the way to go.

I've played, several RTS games from StarCraft to Empire Earth to Warcraft III, and Age of Empires. The 2D games always win my heart. And I think if you look at it closely you'll see(I have no statistics on this) that the 2D games are always more popular in those areas. This is great because they are simpler to program.

Now let's really take a look at the 3D RTS. It's hardware flexing for eye candy and nothing more. I mean, do you REALLY need all those camera angles? I have yet to rotate my camera in Warcraft III or Empire Earth for any other reason than to say "Ohhh, Ahhh" and then put the camera back to the default position and continue playing. It serves no functional purpose, in my opinion, and the time spent on creating the engine to have such effects took more away from the game and only added to it's appearance, and made cool screenshots. Do we play games for eye candy or do we play them to be entertained and challenged?

Starcraft, Diablo, Age of Empires, Heros of Might and Magic III, Age of Wonders II(beautiful partical animations). All really great games still going strong. (Actually I think AOWII was done with a 3D engine for the terrain without all the rotational camera angles and the characters were all 3D rendered into 2D images. Somebody correct me on this please)

Warcraft III, Empire Earth, Age of Mythology, Metal Fatigue( I don't know why I would even mention this one) All of these are less than entertaining as multiplayer games.

Anyway, all of this is simply an opinion and I hope I don't get blasted by anyone. Isometric(or IsoHex) is the way to go if you want to make an RTS, RPG, Turn Based, or any similar form of game. It's what I plan to do, so maybe I'm a little prejudice.

Use the 3D modeler and then render, as was suggested, if you want the nice images though, that's a great approach.
#6
07/08/2003 (11:50 am)
I've got two projects right now one is an ISO and the other is 3D using Torque. The promise of the ISO is that it looks like it will require much less resources. Your art can be created in simple drawing programs as Chris mentioned, and you don't need to worry about all of the issues that often come with trying to export 3D models into the engine. ISO also has its issues though (which I'm currently learning about). For your purposes, I'd probably reccommend ISO. Financial impact of creating a 3D game aside, it is very tough to find good 3D modeling talent I've found.
#7
07/08/2003 (12:02 pm)
Tile based iso games certainly arent dead :) one of the most compelling reasons for doing that rather than full blown 3D is that you dont need a 3D card to do it!

Forget the art side of things, or even the implementation. Simply looking at it, to catch the most customers for your game, you'd be silly not to consider 2D for SOME types of game.

For instance, for some games its almost absolutely a requirement to have a 3D world, but other than those, use 2D if you can, much larger customer base!

Get to all those customers still using ratty old Rage128's and stuff.

Phil.
#8
07/08/2003 (12:16 pm)
Excellent point.

"Please the masses and live in the classes...Please the classes and live in the masses." I don't know who said that, but I've heard it somewhere.
#9
07/08/2003 (6:47 pm)
I would just like to say : Long live Tetris!

Also as far as pure eye candy goes... Well Baldurs Gate, Baldurs Gate 2, Icewind Dale, Icewind Dale 2, Planescape: Torment are some impressive looking 2d ISO games.
As one reviewer once said "This game would look real, at least if reality looked this good"

Aceshardware.com once used Total Annihilation : Kingdoms for benchmark purposes. On the same hardware that was pushing 200 fps in Quake 3, it was barely pushing 30 fps in TA:Kingdoms. So 3D iso is not really the way to go. Total Annihilation w/ its rendered backgrounds and 3d units worked pretty nicely. It could save some animation depending on what kind of terrain you expect. If your going for the consistently flat feel where you dont have to worry about a tank driving up a hill and not pointing 'upwards' then 2d sprites are just as good.

I rarely, rarely ever use the rotation options. And I almost always zoom out to max. Unless I'm admiring my group of mechs in MechCommander 2. But thats an eye candy thing.
#10
07/10/2003 (2:44 pm)
The advantage to the ISO arrangement is in AI logic. Generally, in an ISO game, you have blocks, and either the block is full and blocks sight/shots/etc., or the block is empty. The AI has a really easy time pathing, because it's an extremely simple target.

So far as FPS goes, I think it's unfair to make the comparison between TA-K and Q3. You're comparing two entirely different games, implemented completely differently. Even comparing Q3 to, say, Descent 3 is unfair -- D3 requires much higher hardware and uses many more features of the video hardware than Q3 does.

There is a mistaken impression that the goal of game design should be to deliver the maximum possible frame rate. First of all, any frame rate above the monitor refresh rate is just thrown away -- the user never sees it -- so the goal is 60fps to 70fps, maybe as high as 75fps. Most monitors reporting higher than 70Hz refresh are interlaced, which means they draw even lines one pass then odd lines the next pass, so 70fps is still plenty if you want to avoid tearing, etc.

Secondly, the primary goal isn't raw frame rate. I can't word this better than the authority i have to quote, so I won't try, I'll just quote him instead:
"A corollary is that the best case performance can be seductively misleading; it's a great feeling to see a scene running at 30 or even 60 fps, but if the bulk of the game runs at 15fps, the best cases are just going to make the rest of the game look worse." -- Michael Abrash, Graphics Programming Black Book Special Edition.

The goal is to keep the frame rate steady and consistant. The frame rate needs to stay at or above the level you set as a target.
#11
07/10/2003 (4:06 pm)
It is unfair to compare the frame rate of 2 unrelated games.
But it does say alot about the performance requirements of a fully 3d isometric real time strategy. Although any other fully 3d isometric game w/ the number of moving objects as a rts averages would feel the pain.
The AI also has to better for games like that, as theres more to it then hunting down a player (and even that is a relatively complicated AI to build). RTS just has more things to consider in the AI, so it also tends to chew CPU power. Trying to make sure it builds the proper units to counter the units the player seems to use most.
Dark Reign was good at that. I remember over-using air power. By the time I managed to rebuild my air force the AI decided that 15 anti-air guns was the way to go. the 2nd run didn't go as well as the first :)

If you want an Isometric game, stick with 2d elements. Occasional 3d wont hurt. But sprites work best if you expect things to get 'busy'.

As an independent developer its not in my best interest to have a ludicrous min requirement, I cant afford to limit my market that way.
#12
07/14/2003 (1:33 pm)
You cannot draw any conclusion about the rendering pipeline in TA-K, much less about the performance of a 3D engine on that type of game, from one single application. There's no way of knowing what percentage of the time is spent in the rendering pipeline vs. the rest of the application, what graphics features it has enabled on that specific system, etc. The polygon count of the models is also critical. There is no valid conclusion that can be made from a sustained frame per second rate except if it is at the target rate on the hardware or not. You can't even validly compare hardware based on it, because most games scale graphics options based on the hardware -- take a look in the Tribes 2 GameData folder, if you've got it -- that's typical of most games, except that it's out where you can look at it with tribes.

The original question was:
Quote:From an independent game developer point of view (with limited financial resources), what advantages - if any - are there for designing a 2D isometric MMORPG game as opposed to 3D? Something like Fallout, UO, etc.

Lets look at UO. Ultima Online originally used a 2D isometric engine. This consisted of a back end that stored map data in a grid of cells, just like a RTS. I played it for a bit when it was in that stage of development, and it played OK. Nexus, Dark Ages, Lineage of the Blood, and a number of other "low end" titles use this same bitmap approach.

The issue with it is that you draw character graphics as layers. For each layer, you must have the same number of frames of animation. You must have separate bitmaps for each race, and each item. This leads to a lot of content on the client -- read: disk space and memory.

Now, realizing this, you switch to a 3D approach. You use a mesh with a skeleton under it. Now you need only provide one bitmap texture. If the skeletons are similar, you need provide only one skeletal animation file regardless of how many playable races there are. If the graphics can be scaled and still look right, you can have only one additional model per layer of equipment, etc.

For an isometric game, you have to provide at least 8 sets of animated bitmaps for walking alone, and if you're wanting to run at a high frame rate, you must provide many, many cels of animation.

For a 3D engine, you don't have to do this. For a 3D engine, you can store only keyframes and interpolate additional frames as you need them.

Ultima Online has recently released a 3D version of the client. The servers don't know anything about 3D for the old areas, and they don't need to. In those areas, the client can render using the 3D pipeline or the 2D pipeline, and it makes no difference to the AI on the server side.

I don't know if there are new 3D areas or not, but you can do so much more with a "real" 3D engine than with an isometric engine, from an RPG standpoint.

Anyway, the point is there is no valid conclusion that can be drawn from looking at TA-K. You need a lot more information than raw frame rate to be able to make a statement ruling out the approach.

Personally, in a shareware game, if you can target 1st generation 3D cards, I think you're probably better off going 3D than 2D -- even for a RTS. The reason is that in the past (and probably still today), the longer it took to download a game, the less likely you were to get someone to download it. Held true for most programs, the larger the download, the fewer transfers.

With well designed 3D graphics, you can have a smaller package than a 2D game can, so I would think you'd be a lot better off targetting low-end 3D than 2D in terms of overall download count. Not sure it does anything for registered user percentage, but if it improves download count, that is probably enough to make it worthwhile.
#13
07/15/2003 (5:34 am)
I could point out that WarCraft 3 doesn't exactly reach stellar framerates easily. MechCommander 2 isn't frame rate friendly either.
C&C Generals was quite fast remarkably even if the screen was full of units.
TA:K models were relatively high poly. Some were big, most were round.

No one said they were valid, scientific conclusions, they are merely trends that I have noticed and experienced.


I just dont know many 3d Isometric games that run fast consistently.

As for the size thing....
Games I have installed
C&C Generals - 1.55 gigs (250 music)
Neverwinter Nights w/ Expansion - 2.56 gigs (500 video and music)

Fallout 2 - 0.6 gigs
Diablo 2 w/ Expansion - 1.76 gigs (750 video and music)

Biowares Baldurs Gate 1 is over 3 gigs in space at 6 cds (w/ expansion)
Which is actually the largest game I've ever purchased when it comes to HD space.
The 3d games can take up just as much if not more space.
Sure its not a "valid" conclusion, but experience doesn't point to small sizes for 3d games either. Although realisticly, an indie doesn't really have the resources to make a gig in textures.
#14
07/16/2003 (1:33 pm)
3D content is an order of magnitude smaller than equivalent 2D content.

Lets say I have one 64 x 64 unit, and one 150 polygon model with a skeletal framework.

For the 64 x 64 bitmap unit, I have 4k per frame of animation, times 6 frams per sequence, times 4 directions, times 3 states (stationairy, mobile, firing). That is 294912 bytes of raw data. Granted, I'm going to compress it and what not, but that still is a lot of data.

Lets use single precision math, 4 byte floats. Lets store X, Y, Z, U, V, Bone for each vertex. That's 4 bytes * 6 = 24 bytes per vertex. Easy as pie, right?

Now then, we have 150 polygons. Each vertex is shared by at least 3 polygons, so there are 150 unique points. Each of these takes 24 bytes, so we get 3600 bytes for the mesh. Each bone requires two points (one at each end of a line). So we get 48 bytes per bone, lets give our 150 poly model 10 bones, so 480 bytes there. We are at 4080 -- the entire model and bones requires the same space as a single bitmap, before compression.

For each frame of animation, we need to store a transform for each bone impacted. We'll do it lazy, and not really use the skeletal animation right, and as a result we'll use 48 bytes per bone per frame of animation, and we'll always store every bone. That's 480 bytes per frame, vs. 4096 bytes per frame for the 2D vesion.

Now on top of this. the 2D version needed a separate animation for each direction. For the 3D version, you just rotate the shape to point the right way then play the animation.

So you can have 9 animations in the same amount of memory it costs to have 1 animation in a 2D engine.

Even with JPEG, even storing only differences between frames, your keyframes alone for a single 64x64 sprite consume more space than 9x the sequences do with a skeletal animation system.
#15
09/04/2003 (7:01 am)
I have read all these posts, and they are really great. I am a VB programmer with years of experience, in insurance healthcare. Thinking baout making a game, and am leaning toward an Isometric one. Would I stull use the torque engine? If not, can anyone recomend a good game making package?
#16
09/04/2003 (6:09 pm)
Torque is only for C++.

I don't use VB, so I can't reccomend a good game making package for VB. However, there are versions of the Basic programming language that are specifically for game programming. I believe one is called Blitz Basic, and another is called Dark Basic. I think they both have 3d capabilities.

They aren't Visual Basic, but I imagine that you can figure them out.

If that doesn't answer your question, you should probably start a new thread titled something like "How Do I Make Games In VB?". Most people who read this thread either won't know the answer to your question or won't bother to reply because it's about 2d isometric vs. 3d.
#17
09/04/2003 (7:56 pm)
I apologize for not making my last post clear, Steve. I am a VB programmer, but learning C++ will not be a problem, and mentioning VB in my previous post was probably superfluous. My question is this: If I want to make an isometreic game, would you still recomend the Torque Engine, or is that overkill? Everything I see here seems to point to this engine being used only for 3D engines.
#18
09/04/2003 (7:57 pm)
I apologize for not making my last post clear, Steve. I am a VB programmer, but learning C++ will not be a problem, and mentioning VB in my previous post was probably superfluous. My question is this: If I want to make an isometreic game, would you still recomend the Torque Engine, or is that overkill? Everything I see here seems to point to this engine being used only for 3D engines.
#19
09/05/2003 (6:00 am)
Still not specific enough. ;)

If you want to make an isometric game with 3d graphics, you could definately use torque for that. Just lock the camera to a specific angle.

If you want to make an iso game with 2d graphics, Torque isn't the best choice around - either track down an existing 2d iso engine or write your own. Iso engines really aren't very tough to write.

There is a book on writing iso games you could buy. The author of the book posts in the iso forums over on www.gamedev.net so that's an especially good place to get these kinds of questions answered.
#20
09/05/2003 (11:16 am)
I'm considering different options on engines, including Torque.
Can someone tell me how feasible these ideas are, for a single player game?

-use a modified terrain highlighter brush for building placement
-be able to bulldoze/add dirt in-game using tools from the TGE editor
-AI pathfinding
-dynamic lights
-.dts buildings, with animations and dynamic terrain shadows (someone mentioned Marble Blast does this?)
-random terrains (I know Davis Ray Sickmon is working on something like this)
-particle f/x
RADARw/terrain

Any thoughts/ideas? Has anyone come up with a "Torque-Lite" single player only? :-)

-EricF
Page «Previous 1 2