Jump to content


Is an engine necessary for 3D games?


4 replies to this topic

#1 devingprice

    Member

  • Members
  • PipPip
  • 14 posts

Posted 21 April 2012 - 11:24 PM

My summer break starts in a week so I’ve decided to start a summer programming project. My goal is to create a playable prototype for a 3d game. I’ve programmed simple games for school in java and c++, but never anything 3D or complex. This will be a learning experience.

The prototype I’d like to create is a 3d Pokémon battle game. I loved the Pokémon series, but in gaming I’m not a fan of turn-based or 2d gameplay. You choose the starter Pokémon you want from the menu and then the battle starts. The environment would be just a simple flat arena. Attacks are programmed in (attacks like flamethrower may need a particle system or something). The Pokémon fight until one’s HP goes to zero and then it’s over. I’d also need to program an AI for the opponent. Once the prototype was fleshed out, I’d add networking where you could play a 2nd player.

The problem is I’m not sure what to use to create it. I’d like to do as much myself as possible, so I kind of shy away from using engines, but I’m wondering if it is necessary. I have the resources (models, sound, etc) but I would need to handle rendering, animations, scripting, and such. Is it feasible to create my own 3d rendering with everything I would need (animation, particles, etc) or use OpenGL/Direct3D instead of using a commercial engine (like UDK)?

#2 dev_str

    New Member

  • Members
  • Pip
  • 7 posts

Posted 22 April 2012 - 02:09 AM

It is certainly possible to do that with OpenGL.

Theoretically, you could code it all by yourself. It'd be a lot of work. OpenGL should satisfy your needs well enough, though.

Good luck.

#3 Reedbeta

    DevMaster Staff

  • Administrators
  • 5308 posts
  • LocationSanta Clara, CA

Posted 22 April 2012 - 02:10 AM

If you want to code everything yourself using 3D APIs directly, it will likely take you the whole summer just to get an animated character walking around on screen. A fighting game with particle systems, AI and complex animations is too much to do in that time frame, when starting completely from scratch. If you want to build the engine yourself, that's fine and can be quite rewarding - just be aware that you'll spend so much time on "basic" game engine technology that you won't have much or any time to build an actual game.

If the game itself is more interesting to you than the ins and outs of render targets, vertex buffers, input handling, sound mixing and so on, then I'd advise using an engine, of which there are plenty that have a free version.
reedbeta.com - developer blog, OpenGL demos, and other projects

#4 TheNut

    Senior Member

  • Moderators
  • 1701 posts
  • LocationCyberspace

Posted 22 April 2012 - 11:34 AM

devingprice said:

The problem is I’m not sure what to use to create it. I’d like to do as much myself as possible
When it comes to developing a game, you are still required to do a lot. The question is whether you are more interested in the low level mechanics of game development or if you're more interested in producing a game. You can certainly do both, but it will take longer to complete your project. I think it's a good idea to start with an engine first. Build games while at the same time learning how other people do things. If low level development interests you later, you will at least have some experience to start with. You're still in school by the sounds of it, so you'll want to maintain a work-life balance. Being able to produce something quickly will keep your spirits and motivation high.
http://www.nutty.ca - Being a nut has its advantages.

#5 alphadog

    DevMaster Staff

  • Moderators
  • 1716 posts

Posted 01 May 2012 - 08:50 PM

How long is your summer? But, I'll pre-judge and go with "No."
Hyperbole is, like, the absolute best, most wonderful thing ever! However, you'd be an idiot to not think dogmatism is always bad.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users