Jump to content

  • Log In with Google      Sign In   
  • Create Account


Create a Game Engine


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
47 replies to this topic

#1 Sugavanas   Members   -  Reputation: 153

Like
-6Likes
Like

Posted 24 October 2012 - 10:26 PM

Hello guys, I want to create a game engine and i am confused with things. Can anyone say the things i need to know please..

Sponsor:

#2 kidman171   Members   -  Reputation: 498

Like
11Likes
Like

Posted 24 October 2012 - 10:30 PM

I'm no expert on game engine programming but I can tell you that your question is way too vague for a topic way too large. If you want good answers you need to ask specific questions. Be specific on what you are confused with.

#3 Inukai   Members   -  Reputation: 1282

Like
6Likes
Like

Posted 24 October 2012 - 11:21 PM

http://scientificninja.com/blog/write-games-not-engines

#4 Tasaq   Members   -  Reputation: 1156

Like
8Likes
Like

Posted 24 October 2012 - 11:25 PM

First of all, I would recomend you to plan and answer some questions like:
which programming language I chose?
what the engine will be used for (what kind of games)?
Which platform you are aiming for(windows, unix, consoles, mobile)?
Which api will you use (directx or openGL obviously, but also some 3rd party or frameworks, like xna, sdl, devIL, assimp etc.)?
Also chosing good architexture is important (I am deferred shading or other variations).
And much more, you can figure the rest out :)

After that the best idea is to plan your project. Use a piece of paper, or if you can an app, to create a model of your engine(I use Visio for instance). It's very crucial, because you need to plan your project, think of what you need, how to combine it into one, for instance which class agragates other, or which one derives after other. Imagine what would have happened if you would make a planning mistake during codding - ouch...

When You got your project done, code. You got plenty white papers on algorithms. Try to make everything as clean as possible in the code. Try to use tips for speed. Ask on forums if you are stuck. Also remember about commenting your code. Engines are big, sometimes you need to go back to 'older' code and sometimes you can forget what it does (we are just human :)). And be patient :) Good luck!

#5 Hodgman   Moderators   -  Reputation: 26958

Like
27Likes
Like

Posted 24 October 2012 - 11:34 PM

A game engine is just a tool. If you want to make a tool, you need to know specifically what you're going to be using it for.

If you're turning screws, you want a screwdriver. If you're hitting nails, you want a hammer.

If you're making a new tool, you should know what problems it will be used to solve.
If you do know what problems you will use this tool to solve, then tell us those specific problems and we can help you design this tool appropriately.
If you don't know what problems you'll be using this tool for, you have to find that out first before blindly creating tools with no explicit purpose, otherwise you'll end up with a mallet when you really needed scissors...

#6 Nickie   Members   -  Reputation: 315

Like
4Likes
Like

Posted 24 October 2012 - 11:48 PM

Creating a game engine is really hard task. Especially for someone that hasn't got enough experience. I wated around 1 year before I start my engine(after this idea first came into my mind). During this time I read all books which had the keywords "engine" and "programming" in their titles(If I could find them in PDF, i would really like to buy some of them however not everyone has money).
And I can say, it would be better if I had waited a little more.
The result was: 5 months working on engine. And then give up, and start it from the very beginning. WHY? Well, books don't tell how you should struct your code. They can just show the way. I also coun't make a plan for my project. I mean I couln't plan my features. This two mistakes bring me down. However I do not regret, I learned how to plan my future projects and how to make my code right with minimal effort.(under struct I meant const correctness, design, naming, etc.)
If you are going to start it now... well, happy debugging. The choise is yours.

#7 Felix Ungman   Members   -  Reputation: 888

Like
4Likes
Like

Posted 25 October 2012 - 12:15 AM

Hello guys, I want to create a game engine and i am confused with things. Can anyone say the things i need to know please..


The things you need to know are:
- a programming language
- a graphics library
- a sound library
- a library for mouse/keyboard/gamepad input
- at least three game designs that could be implemented by the game engine, preferably as different from each other as possible (within the scope of the engine).

openwar  - the real-time tactical war-game platform


#8 Sugavanas   Members   -  Reputation: 153

Like
-2Likes
Like

Posted 25 October 2012 - 05:41 AM

I want to know the language i need to learn and also the graphic thing. I need to know the sections i need to learn in the specific language and also in the graphics library. I need a clear answer for this.The game which is created by my game engine should work in pc, mac, ps3, xbox.

And guys i did not post anything because i am not started yet. I need some guide in it. For now i am learning so it would be more easier for me to learn if i know what to learnPosted Image

#9 Sugavanas   Members   -  Reputation: 153

Like
0Likes
Like

Posted 25 October 2012 - 05:46 AM

Forgot to mention a thing, I don't care spending so if you know some pdf books selling online say the link i would like to buy it, it is worthy in the future

#10 demonkoryu   Members   -  Reputation: 976

Like
0Likes
Like

Posted 25 October 2012 - 05:56 AM

I want to know the language i need to learn

Most languages will do, if you know what you're doing.

and also the graphic thing. I need to know the sections i need to learn in the specific language and also in the graphics library. I need a clear answer for this.

You will need a good grasp on everything that's important. What that is, only experience can tell you.

The game which is created by my game engine should work in pc, mac, ps3, xbox.

Your engine doesn't create games, you create games. ;)
Try Unity, that's a popular cross-platform engine.

And guys i did not post anything because i am not started yet. I need some guide in it. For now i am learning so it would be more easier for me to learn if i know what to learnPosted Image

Learn to make a game, using an existing engine. Then you can make a "game engine", because you know how to use one.

#11 Sugavanas   Members   -  Reputation: 153

Like
0Likes
Like

Posted 25 October 2012 - 06:19 AM

Ya, i have unity 3.5 pro, i am using it. I also use cryengine 3 and unreal engine 3. Now i want to create my own because then i can make my game more easily.

#12 Radikalizm   Crossbones+   -  Reputation: 2765

Like
1Likes
Like

Posted 25 October 2012 - 06:54 AM

Ya, i have unity 3.5 pro, i am using it. I also use cryengine 3 and unreal engine 3. Now i want to create my own because then i can make my game more easily.


Why do you think it'd be more easy to create a game with your own engine instead of with a highly polished and proven solution like CE3 or UE3? Building something which can compete with those engines would require loads of time, money and expertise from you and your co-workers.

If the only reason why you want to build an engine is because you think it'll be easier to build a game, you really shouldn't build one at all, trust me.

#13 Sugavanas   Members   -  Reputation: 153

Like
-2Likes
Like

Posted 25 October 2012 - 07:21 AM

Why do you think it'd be more easy to create a game with your own engine instead of with a highly polished and proven solution like CE3 or UE3? Building something which can compete with those engines would require loads of time, money and expertise from you and your co-workers.



I know that my engine can't compete their engine but my game would be more prefect if i create my own game engine.

#14 demonkoryu   Members   -  Reputation: 976

Like
5Likes
Like

Posted 25 October 2012 - 07:22 AM

If you have completed a game with each engine, you wouldn't be asking this.

#15 Dave   Members   -  Reputation: 1478

Like
4Likes
Like

Posted 25 October 2012 - 07:25 AM

http://scientificnin...mes-not-engines


This is really bad advice.

#16 Dave   Members   -  Reputation: 1478

Like
2Likes
Like

Posted 25 October 2012 - 07:27 AM


Why do you think it'd be more easy to create a game with your own engine instead of with a highly polished and proven solution like CE3 or UE3? Building something which can compete with those engines would require loads of time, money and expertise from you and your co-workers.



I know that my engine can't compete their engine but my game would be more prefect if i create my own game engine.


Yes and no.

What you would end up with is an engine that does exactly what you want. Often though this is alot more complicated that tweaking an existing solution to meet your needs. For a hobbyist who has the intention of making a game for production and making money it is often best to use a third party solution if what you want to do is fairly standard stuff.

In time you will know when you need your own solution. I've worked at studios that have exclusively rolled their own stuff and it was alright, you feel in control and licencing etc is less complicated. It comes at a cost of time though.

Edited by Dave, 25 October 2012 - 07:28 AM.


#17 Álvaro   Crossbones+   -  Reputation: 11696

Like
7Likes
Like

Posted 25 October 2012 - 07:36 AM


http://scientificnin...mes-not-engines


This is really bad advice.

Care to elaborate? I haven't read it in a while, but I when I did I thought it was precisely the advice that beginners should get.



Why do you think it'd be more easy to create a game with your own engine instead of with a highly polished and proven solution like CE3 or UE3? Building something which can compete with those engines would require loads of time, money and expertise from you and your co-workers.



I know that my engine can't compete their engine but my game would be more prefect if i create my own game engine.


Yes and no.

What you would end up with is an engine that does exactly what you want. Often though this is alot more complicated that tweaking an existing solution to meet your needs. For a hobbyist who has the intention of making a game for production and making money it is often best to use a third party solution if what you want to do is fairly standard stuff.

In time you will know when you need your own solution. I've worked at studios that have exclusively rolled their own stuff and it was alright, you feel in control and licencing etc is less complicated. It comes at a cost of time though.


Given that the OP doesn't seem to know how to give proper background when asking questions, how to program, or how to spell "perfect", what makes you believe he has any chance of succeeding in writing an engine better suited for his game than a polished third-party engine?

#18 Radikalizm   Crossbones+   -  Reputation: 2765

Like
3Likes
Like

Posted 25 October 2012 - 07:45 AM

Care to elaborate? I haven't read it in a while, but I when I did I thought it was precisely the advice that beginners should get.


I don't completely agree with that page either.

The advice given there is one of those typical "you should never ever build an engine and you should feel bad about wanting to build one" texts. I do agree that you shouldn't build an engine while still inexperienced or without a clear definition of the goals and future applications the engine will have to meet, but that doesn't mean that nobody should ever build an engine.

#19 Dave   Members   -  Reputation: 1478

Like
9Likes
Like

Posted 25 October 2012 - 08:24 AM

It's just bad insta-advice.

The guy has expressed an interest in writing an engine and there is a hell of a lot he can learn from writing that technology himself. He expressed no intention of making a game in his OP and so an insta-reply with a link to that article serves very little purpose and it is of practically no help.

I have never made a single worthwhile game in my personal time, i have always worked on various pieces of technology and still do today and that has served me extremely well in the games industry. Using Unity to make games however is only going to get you as far (in terms of your skillset) as writing games with Unity. I have worked on a commercial product with Unity and you don't learn shit about making games when using it. You just learn to use Unity and how to cobble stuff together.

If you really want to learn to make games you need to have a good understanding of how the stuff your game code depends on actually works. Game programming is not easy, its very technical. You have to be aware of all the same technical considerations as engine programmers do in order to do it well.

Since the OP asked about engines specifically (albeit it turns out to be a bit misguided in later posts) its important to just point him in the right direction with regards to developing that kind of tech.

However, in light of more recent posts in this thread it is clear that the OP is a bit misguided with his need to write an engine and if his intention is just to make a game then there is no better solution than Unity. I just object to that article being banded about as if its THE answer to every thread similar to this one Posted Image.

Edited by Dave, 25 October 2012 - 08:24 AM.


#20 Álvaro   Crossbones+   -  Reputation: 11696

Like
6Likes
Like

Posted 25 October 2012 - 08:55 AM

The write-engines-not-games blog post doesn't recommend using Unity or anything of that sort: It recommends writing your games without an engine. After a while, you'll have a collection of code that has proven useful in several games, and then you pack those in a library and call it your engine.

I generally agree with that advice.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS