Jump to content
  • Advertisement
Sign in to follow this  
DriveByBaptism

First time game engine

This topic is 3264 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

Hi there. I was wondering if any of you know any good links/tutorial/books that can help someone who has never made their own game engine before, make one. I have moderate skills in C# and C++ and I'm currently learning DirectX and XNA. Any help you can give me would be appreciated.

Share this post


Link to post
Share on other sites
Advertisement
The stock advice is usually: start making games and worry about an engine later, if at all. An engine will grow from the bits of code you can reuse from the code for a game, which depends on what kind of games you make. For instance, if you make two shoot-em-ups chances are there'll be a lot of common code that you can extract into an engine of sorts. But if you make a shoot-em-up and then a driving game there's probably going to be very little. But to start out you're making a single game, which means the 'engine' is just part of your game code, so don't think in terms of an 'engine' at all and just make the game.

Share this post


Link to post
Share on other sites
If you do still want to look at building an engine, or if you have a general interest in how commericial engines are put together, I can't recommend Jason Gregory's book enough - Game Engine Architecture.

Share this post


Link to post
Share on other sites
PKLoki et all are right.
I probably lost 4 years trying to develop game engines. Don't get me wrong, I learned a lot in the process, but I had nothing to show for it still didn't learn much about engines.

Several months ago I wrote a pong clone from start to finish and now I'm wrapping up a tetris clone (with parts pulled from the pong clone). Coming out of this experience, I've learned much more about how engines work than I ever did when trying to build an engine.

One of the biggest parts of each of these games is the event system. At each attempt at an engine before, I focused on things like graphics and physics and sound, but those really don't make up much of the work at all. The same goes for game object management. Having a robust GO management system takes up a large chunk of code plus it is accessed everywhere.

Everyone really is right when they say create games not engines. *Even* if you want to learn about engines, the right way to do it is to decide to make 2 or 3 games and take chunks from one to the other to the next. You'll learn more about engines than trying to build an engine from scratch.

Share this post


Link to post
Share on other sites
The way I do it is to write a game with the explicit intent of having re-usable code at the end that I can call an "engine". Basically, I develop the game and engine in parallel, with the focus on the game and with engine features only added as I need them. Keep in mind though that for your first time, you're almost guaranteed to mess it up, and you will need to get good at changing stuff.

Actually, this is a good thing, because the sooner you weed out your bad ideas, the better, and refactoring code builds character, I mean *cough* it's good practice. Really, that's something you're always going to be doing, and you shouldn't be afraid of it. As you fix your architectural problems, you'll recognize how the problems form, and learn to avoid them.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

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

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!