Jump to content
  • Advertisement


This topic is now archived and is closed to further replies.


Hint: 2D or 3D?

This topic is 5562 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I took CG lessons at college, learning the CG basis and 3D programming with OpenGL. I''ve also been working with 3D programming for a (non-game) company for more than a year. My experience with 2D is limited to programming GUIs with GDI/Java2D, etc. I have never developed a real 2D nor 3D game, and that''s why I seek advice. Considering I have the 3D background, which would be easier for me to develop: a 2D or 3D strategy game? Take as a reference Starcraft vs Warcraft3. My project would be much smaller, but still have a "commercial" quality level. The graphical designers would be hired accordingly, and it would be nice to know what would be cheaper, 2D or 3D media development? I would like to know which path would be "safer" and "better" for me to follow. Thanks in advance for any help.

Share this post

Link to post
Share on other sites
Personally I would go with 3D. Here are some reasons:

1. Terrain rendering is pretty easy for an RTS since you can assume a particular range of camera angles and thus you can basically use brute force rendering. Also, writing your terrain editor is conceptually simpler, because it''s simply a heightfield, and you can define a "brush" with a certain radius which will raise or lower the terrain- similar to painting a 2d image of a heightmap with a blurred brush.

2. Character animation takes up a lot less disk space. Consider your average character... Now if you go the 2d route, you''re going to probably want 8 frames in your walking animation, which actually comes out to 5 frames due to symmetry. You''re going to want the characters to be able to walk in at least 8 directions, otherwise it will look like crap. So, 8 x 5 is 40-- just for your walking animations, you''re going to have to have some artist render 40 frames of the model, then use some art tool to pack all those frames into texture sheets (or whatever, depending on what tool set you use)... Well you get the point. With models, it consumes much less space, and you can do neat things like re-use the same animation for a few different models, since the animations just specify rotations of each joint and aren''t specifically tied to any particular model.

3. Camera angles. Although I suspect most RTS players don''t care that much about being able to rotate or tilt the camera, some people do (me! hehe).

4. Overall simplicity... All recent RTS''s are essentially 3d games, even if they are 2d or contain 2d elements. Thus rendering them in 3d and representing your world in 3d makes sense. If you went the 2d route, you''d have to end up "emulating" lots of 3d features anyways, like if you fired a projectile, you would most likely represent that in your game as a 3d trajectory, but then you''d have to write some code to translate its 3d position and orientation into a 2d position and draw the appropriate image for the projectile given its orientation. That''s probably not the best example but you get the idea.

Another approach would be to use "hybrid" 2d/3d rendering, where some things are 3d and some things are 2d. For examples, see "Rise of Nations" (a commercial RTS by Big Huge Games) and "0 A.D." (a freeware RTS by Wildfire Games). For example, on the 0 A.D. project, they are rendering everything 3D *except* buildings because that way they can get better detail in the models.

Anyways, I still think pure 3D is the easiest way to go.

Hmm, btw writing an RTS (even a small one) is not a cakewalk, and it''ll take a lot of work but hey if you think you can do it, more power to ya.


Share this post

Link to post
Share on other sites

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!