Followers 0

How to make a Game Engine For Super Beginners?

27 posts in this topic

You can spend all your time working on the engine, or you can spend your time working on all (or even some) of that other stuff.
Try to do everything and you'll end up accomplishing nothing.

Absolutely! Take it from me!

2

Share on other sites

To be honest if you are a beginner and you want to create a game without using a third party engine then the steps to writing your engine is this.

• Dont't write an engine. Just start writing your game and finish it.
• Now you want to write another game.
• Hmm I can reuse bits of my previous game to write my new game
• GOTO 1.
Pong to pacman?
If you want to write an engine (i.e. not from the scratchy scratch), write a game using the needed libraries instead of an engine. By the time you're done, you would have made the different libraries work together well (i.e. if you did it well).
Voila, that's your engine (which would be as good as the work you put into making the game).
You would need to learn how to use those libraries though.
2

Share on other sites

Unless you really want to spent a lifetime creating a efficient engine You should just pick one of the dozens of amazing engines out there. Creating an engine requires you to already be a expert game developer. And if you where an excellent game developer you would not have posted this question here. So take my advice and just pick an engine to create your 2d rpg.

Well, I did mention I am still a student...and yeah that's what I wanted to do initially...but yeah I got curious about making a game engine...that's why I posted the question.

2

Share on other sites

You can spend all your time working on the engine, or you can spend your time working on all (or even some) of that other stuff.
Try to do everything and you'll end up accomplishing nothing.

I will take note of that. Thanks.

2

Share on other sites

To be honest if you are a beginner and you want to create a game without using a third party engine then the steps to writing your engine is this.

1. Dont't write an engine.  Just start writing your game  and finish it.
2. Now you want to write another game.
3. Hmm I can reuse bits of my previous game to write my new game
4. GOTO 1.

Follow these steps a few times and you will soon discover that you have a library of code that you know perfectly and can adapt to suit your needs and your coding style.  This is your engine.

There is the alternative way which is to try writing perfect systems upfront but you will never finish because you will read an article that differs with the way your engine works and then keep restarting and could spend the next 20 years trying to write the perfect engine.  Don't forget ALL successful games engines from simple ones like cocs2d to Crytek are permenantly under development.

Hmm I see what you're trying to say. Thanks!

2

Share on other sites

Can someone explain to me what all the fuss about 'engine' is, and why there is so much magic and mysticism around it?  In my world, an engine is what you naturally create while you are making a game, not necessarily a ready made 'system' made by some other company/person.

Not an uncommon game loop (details may of course vary):

    while (!quit)
{
//Manage inputs from the user (joystick, keyboard, mouse, etc...)
//Do some calculations
//Draw your scene/graphics based on the previous steps
}

To me, this is an engine.  It arises naturally from the process of creating a game.  Yes, it looks simplistic, but might not necessarily be.  Please explain if I am wrong?

While OpenGL or Direct3D might be hard to learn initially, it is an important process in learning to make games, and if you can make one textured quad output to the screen, it is not hard to expand to that so you can make your own class to plot a lot of tiles to the screen either.  If you want to postpone on that, you can of course use one ready made APIs to render 2D graphics, or if you are more adventurous, try to make some simple 3D graphics.  How about running around in a maze?  That would be a nice challenge if you are going for 3D.  My point is that you have to start somewhere, and it is just to dive into it.  Make something really bad, and refactor and make better as you go.  Start with something that is so easy that you think you can manage to do it.  (I wouldn't really recommend 3D, if you are an absolute beginner, though.)

Sorry if I am way off with my thoughts.

EDIT: I also disagree that you need to be an expert to make an engine.  When you are learning, you are allowed to fail.  Actually, failure is what you will learn from.  Your first 'engine' need not be perfect in any way - just work.  Knowledge is what you gain by doing.

That is just a while loop with some comments in it. An engine is what you create to make everything work together. You could make an engine and not have a game but having an engine will simplify making a game. Hence we advice you to rather choose a existing engine (like Unity or UDK) or library (Like XNA or SFML). With all these tools out there you do not need to know the inner workings of OpenGL or DirectX, you do not need to know how to ask a graphics card to draw a quad. There will be ready made classes for you. To draw a quad in Unity you just drag one into the scene with the mouse and voila. With XNA you just have to setup the indices/vertices and throw it in your draw class. So why botter creating the inner workings, unless of course you are really interested in that part and do not want to make games.

Most bakers do not know how to grind wheat into flower but they can make amazing things with flour.

2

Make Games,

Not Engines.

HyperV

1

Share on other sites

Most bakers do not know how to grind wheat into flower but they can make amazing things with flour.

Great point. The analogy of cooking always helps me to place ideas. Most people buy packs of bread from the store when they need bread. Some people make it from scratch when making specialized breads, but if you don't need a special bread that can only be had by making it from scratch, there is no need to.

I think I personally get overwhelmed by the idea of making an engine because I don't know all of the key ingredients needed to do so. And I really haven't looked into making an engine, because I have an engine that can get me started in making the game I want to make, and I don't need any specialization.

But I understand when he says that you naturally make an engine when making a game, or at least you are perhaps using some skills that it takes to make an engine.

You stir when making a recipe, and you can use that skill to stir when making bread. So stirring is a useful skill in both ventures. (I made bread from scratch once, it sucked, but I will make it better next time, and the experience let me know that I can do it.)

0

Create an account

Register a new account