Jump to content

BLaBZ Blog

  • entries
    18
  • comments
    59
  • views
    22,031

Game Engine Development


BLaBZ

1,928 views

 Share

While I should be finishing my game and engine a notable epiphany has hit me like a ton of bricks, the kind of epiphany that's worth writing about so the next time you decide to dedicate 3 years of your life to a programming project you don't forget what you learned the time before.

 

My project has consisted of 3 sub projects - The Engine, the Level Editor, and the IDE.

 

I've been working on "RTS Creator" for awhile, and it's a full suite of tools to make your own Real Time Strategy game with little to no coding knowledge.

 

The project is 90% complete but the last 10% seems to be taking the longest, which could have been preventable had I known what I know now.

 

Having a solid foundation before you begin development can really make development move along much more easily, and the things I would suggest tackling before even beginning development of your game are the following -

  • Graphics API\Engine - In this case Leadwerks is a developed and tested solution.
  • GUI - Having well tested User Interface api will make life much easier.
  • Saving\Loading Mechanism - Writing saving and loading functions can be a huge time consumer. Using Serialization(Or Reflection to create serialization) you don't have to worry about updating your saving and loading functions when you make changes to your game.
  • Resource Management - It's not uncommon to change your mind about some of the assets in your game, don't let the removal or addition of a resource create a world of work for you.
  • Modular Development\Isolation - Create an architecture that's easy to add\remove functionality. Make the core game framework raise the events you need to for your modules, and make those modules raise their own events. Develop the modules in complete isolation from your game.
  • Inheritance\Polymorphism - Make good use of polymorphism but don't overuse. Finding a way to use inheritance for your game that supplements you can make a huge difference.
  • Take Your Time - Taking the time to design a good architecture can save you time in the long run. Code smart not fast smile.png

 

These are the things that I've learned over the last 3 years and if I had known to do these things before and well enough I'd probably be done by now.

 

Happy new years!

BlaBZ ouT!

 Share

3 Comments


Recommended Comments

Thumbs up. One of the biggest problems I noticed in games, was using a measurement system. We use meters here. And basically if you want something one meter in your game it would scale at 1.0. A human's height is about 1.5 - 1.8 meters in real life. so in game it is scaled to that.When walking

figure out how many meters you moved per second, and when creating your game have it move the same per second. This brings a more realistic game.

  • Upvote 1
Link to comment

The last 20% of a project is always the longest and hardest. No matter how well prepared you are. Having the discipline to get over that wall is truly hard to find.

Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...