How long would it take to create 2D game engine?

Hello there,

Few months ago I have started to create open world, 2D space game with procedurally generated galaxy in Unity3D game engine. Now that the bones of game are made(AI, galaxy is generated), I am figuring out that Unity3D is not capable of handling 200+ objects(ships), with physics.

I have seen a guy to have 10 000 objects/ships on scene in real time taking battles with 50+ FPS in his custom built engine.

So I came here to ask you guys, since you have FAR more experience with this, how long it would take me to remake the bones of game I have created in Unity? So simple spaceship movement physics, generating and spawning stuff etc.

I have been mainly programming in C# and in JavaScript for several years and working only with Engines, never with Eclipse or some bare IDE.


Thanks :D
Last edited on
This probably doesn't help, but I think it would take a pretty long time. Making a game using a game engine takes a pretty long time, I would imagine it would take even longer to make a game engine.
I know how to create games, I developed few of them, that is not a problem.

Problem this time is that the game I want to make, would have hard times running in Game Engine like Unity3D, because the way it handles physics, collision and other million things.

I don`t want to create game engine like Unity3d. Just want to create game from scratch, but people call it game engine.
I know how to create games
Just want to create game

Your post is a little contradictory.
1
2
3
4
I know how to create games
Just want to create game

Your post is a little contradictory.


:D I know how to create games in game engine like Unity3D.

But I have never worked without one. So making game in openGL and C++ would be something completely new.

That is what I am asking. How long would it take to make the game from scratch without the engine in OpenGL let`s say using C++ if I know programming, but just never worked with stuff like OpenGL, and are used to Engine`s gameObjects and collisions etc.
If you really want to make an engine, with better optimization and flexibility, it's good to learn few patterns and algorithms to boost your development time and performance especially if you want to be better off without a backbone engine. As for the a quantitative value, I cannot purely say, depending on your skill and stuff you want your programs to do and handle.
Last edited on
This looks like it could be a useful post maybe:
http://www.cplusplus.com/forum/general/109021/

I agree with rjvc regarding learning some patterns and algorithms, and some physics sprinkled in too.
Are you working on this full-time?
@mutexe No I have a job as software engineer(not in game industry), so Game Development is my long term side thing. It`s what I always wanted to do.

But I can put even 3+ hours a day into development and can learn things really fast.

Also about the link, it`s more 3D oriented so I won`t use things for 3D. Only pure 2D.
Last edited on
Difficult to say then. But i would definitely have a loose set of objectives to be complete after 3 months and then 6 months I reckon.

edit:
I am figuring out that Unity3D is not capable of handling 200+ objects(ships), with physics.

Actually, based on this, i'd knock up something quick and dirty ("spike it") just to see if you can actually get 200 objects moving about. It doesn't even have to be nice code or designed well. if this concept works then you know you can shelve your spike code and 'start again'. If this spike doesn't work then you wont have wasted a lot of time.
Last edited on
Actually, based on this, i'd knock up something quick and dirty ("spike it") just to see if you can actually get 200 objects moving about. It doesn't even have to be nice code. if this concept works then you know you can 'start again'. If this spike doesn't work then you wont have wasted a lot of time.


What do you mean?
Try to replicate in OpenGL the 200+ objects scenario or? :D
Last edited on
well if you spend 6 months on this designing and implementing the code beautifully but then find out that your code is not capable of getting 200+ objects to move about then you've wasted a lot of time.
i was just suggesting knocking something up very quickly to make sure your chosen technologies (openGl anc c++?) can actually achieve what you want.


Try to replicate in OpenGL the 200+ objects scenario

Yep, that's what I meant sorry :)
Last edited on
closed account (z05DSL3A)
Game Engine Architecture, Second Edition[1]
by Jason Gregory

It is a thousand page book on the subject2, how long would it take you to study such a book and practice what you have learnt?

______________________________________________________
[1] http://www.amazon.co.uk/Game-Engine-Architecture-Second-Edition/dp/1466560010/ref=dp_ob_image_bk
[2] I have not read it but would be interested in peoples opinion of it.
200+ objects

well, you can try using flyweight pattern here. I suggest reading it off somewhere in the internet (just search gang of four flyweight on your fav. search engine).

and can learn things really fast.

I have never used Unity, but the Gang of Four patterns is where you might want to start learning more on how to implement system designs, more efficiently.
Last edited on
@mutexe

Good point xD

Will have to first learn how to even draw object on screen since I dont know how to do that yet not talking about moving one xD

Since engines do everything for us. At least I will learn what is under the hood.

@rjvc

Will certainly look into that. Thanks.

@Grey Wolf

Isn`t it some hardcore book for companies that want to create their super game engine from scratch? :D I wasn`t aiming at creating game engine explicitly, only the game, but from what I hear when you create game from scratch you can call it custom built engine right?
closed account (z05DSL3A)
wrymn, We probably have a different perspective on what a Game Engine is. To me the engine is the run-time mechanics of the game...but I have never bothered with games development as of yet. From what I understand from your posts, I would call a Game development environment (obviously this would have a game engine in it).
So yes, if you build a game from scratch you will build an engine for it. I'm not sure what level the book is aimed at but it is the book that I am interested in reading.


rjvc wrote:
I have never used Unity, but the Gang of Four patterns is where you might want to start learning more on how to implement system designs, more efficiently.
Game Programming Patterns by Robert Nystrom may also be worth a look.
Grey Wolf - Yeah to me, or when word Game Engine is mention, we think of very complicated and powerful software to create game in.

So for example you want to create game.
You first create "Game" or program in which you create your game :)

But I don`t want the the program for game, I want only the game :D
Last edited on
Topic archived. No new replies allowed.