Sign in to follow this  

Where to start when creating a 2d game engine

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

Where is the easiest place to start when creating a 2d game engine. OS: Windows Language: VB (I'm using VB 2008 Express) Graphics: DirectX Ask anything you want if it'll help you give a better opinion

Share this post


Link to post
Share on other sites
Creating a new thread with essentially the same question isn't a good idea. A mod will hopefully merge the threads.

I would agree with Telastyn that logging (and error management) is a good starting point. I pretty much start with at least a barebones logging system in any project I have.

On another note, are you sure you want to build a game engine? Perhaps you want to build a game instead?

Also, worth knowing for us:
- How long have you been programming in VB? Overall?
- How many games have you made so far?
- What do you expect to accomplish having built a game engine?

Share this post


Link to post
Share on other sites
Quote:
Original post by oler1s
Creating a new thread with essentially the same question isn't a good idea. A mod will hopefully merge the threads.

I would agree with Telastyn that logging (and error management) is a good starting point. I pretty much start with at least a barebones logging system in any project I have.

On another note, are you sure you want to build a game engine? Perhaps you want to build a game instead?

Also, worth knowing for us:
- How long have you been programming in VB? Overall?
- How many games have you made so far?
- What do you expect to accomplish having built a game engine?


I'm sure i would like to build a game engine

-Not long, but i understand the basic, and learn very fast.
-0
-I'm working on a game.

Share this post


Link to post
Share on other sites
Quote:
Original post by Gage64
I highly recommend that you read this.


My reasons for wanting to build an engine is because i want to create the game myself, no matter how long it takes. I don't want to use an engine that i didn't make.

Also, I know that what i want to create is a game engine as i stated in the above post.

Share this post


Link to post
Share on other sites
If you read the article I linked to, you will realize that it is in fact a guide on how to build a game engine yourself (despite the title). Read all of it before you decide that you don't agree with what I just said.

Share this post


Link to post
Share on other sites
Quote:
Original post by afterlife08
Quote:
Original post by Gage64
I highly recommend that you read this.


My reasons for wanting to build an engine is because i want to create the game myself, no matter how long it takes. I don't want to use an engine that i didn't make.

Also, I know that what i want to create is a game engine as i stated in the above post.


You didn't create DirectX either, are you going to let Microsoft do all of the work for you? You also didn't write the Visual Basic compiler. Doing that too would only add a couple years to the development time. How lazy can you be?

Obviously I'm being sarcastic. There is nothing wrong with leveraging existing tools so you can work on what you want to. Drawing a line in the sand and saying 'Anything above this is cheating, and anything below it is doing it yourself' is just silly.

If you want to work on an engine to learn that technology, that is fine. But if you want to make a GAME, it is largely a waste of time.

Share this post


Link to post
Share on other sites
Quote:
Not long, but i understand the basic, and learn very fast.
Sure. But you definitely aren’t at the level where you can write a game engine. Writing a complete, polished game is enough of a challenge for you. Especially because you have made none so far.

Quote:
My reasons for wanting to build an engine is because i want to create the game myself, no matter how long it takes. I don't want to use an engine that i didn't make.
The “Not Built Here” mentality is extremely common among programmers. It’s also one that is very undesirable. There’s several reasons to not use something a 3rd party has made and I do not recall “Not Built Here” as being one of them. As Simian Man demonstrates, the NBH mentality can be applied to absurdity, because the rationale itself is flawed.

In any case, even if you did have a legitimate reason to build an engine by yourself, the fact is, you cannot. The term engine is nebulous in definition, but I think most would agree that it has the characteristic of being both reusable and suitably generic. You cannot create a game engine with either characteristics because 1) you don’t know what is worth using because you never created a game and can’t design something to be reusable, and 2) you most likely will not create something that is usefuly generic.

Focus on creating your game. There are enough game development challenges therein. Designing a fun game, working on its usability and fun factor, programming the relevant code, creating the content and preparing it for production. All those are significant challenges that are more important for you to tackle.

Share this post


Link to post
Share on other sites
OK, my advice for what it is worth... (and I am not an experienced game developer)...

Don't give up on XNA just yet.

You want to write a game engine for DirectX with VB.Net? You are going to be doing what XNA already does (creating a managed wrapper around DirectX). And as VB.Net uses garbage collection anyway you aren't going to achieve anything better by creating your own engine.

XNA is going to speed your development up ten fold but maybe you should make the transition to C# from VB. I did a few years ago and I've never used VB since (it isn't that hard to move across either).

XNA probably won't give you the FULL engine so you'll still have plenty to do... physics, AI, pathfinding etc.

You also have Managed DirectX but that pre-dates XNA.

If you really are hell bent on writing your own engine I think .Net is a non-starter (maybe non-starter is a bit harsh but it will cause you headaches) unless you use XNA - XNA DOES WHAT YOU ARE TRYING TO DO... Why re-invent the wheel!

And Simian Man is correct - if you really don't want to rely on the work of others and writing your engine/compiler/graphics library... you better start learning assembly! :D I am of course joking!

Ta

JT

Share this post


Link to post
Share on other sites
Quote:
Original post by afterlife08
Quote:
Original post by Gage64
I highly recommend that you read this.


My reasons for wanting to build an engine is because i want to create the game myself, no matter how long it takes. I don't want to use an engine that i didn't make.

Also, I know that what i want to create is a game engine as i stated in the above post.


Simply read the entire article.

Start making games! Make simple games, and then add to that game by seeing what could be used in another game, and simply keep making games. What you'll find is there is much reusable code (this reusable code is your game engine).

I started with pong, and then with breakout created a scene_management stack, particle engine, and an entity list.

Now that I'm about done with that game; I already have my next game in design and I'm designing it as I'm finishing this one, and I can see many reusable code that i made for the breakout game; in fact, all I'll have to do in the next game is add specific entity objects that will inherit my entity class that I have, and have those inherited objects use specific AI algorithms, and I might start the physics engine as well... who knows?

The point is just start making something, and you'll realize that what is reusable code is your game engine, and you can add to that with future game titles.

Good Luck ;)

Share this post


Link to post
Share on other sites

This topic is 3486 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.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this