Game Engines-Engines,Libraries,2D,3D

Hey guys, I am getting a good grasp of the basics and semi-advanced parts of c++, and I have a project I have planned and want to begin working on. Now it would b e completely unrealistic for me to just start on it without more work and practice now I have some questions. Number one is about game engines. How exactly does an engine work? First let me explain what I would like to do, I would like to create a game using a pre-existing game engine made in c++, but I also want to practice coding in c++. Now I am not sure how engines work exactly but I was looking at http://en.wikipedia.org/wiki/List_of_game_engines#Free_and_open_source and most of these engines have a scripting language like LUA that you work with. But I would prefer to do it in c++, can anyone explain a little more how these game engines work :3. Another thing can anyone recommend any game engines where I can still program using c++, and maybe some other scripting language if necessary. Note that I would like this engine not for actually doing my project, but instead for practice for my eventual project. I plan to use this more of a learning tool by creating a crappy game, and making it good enough so that i can just give it away for free play (not expecting many(if any at all) to play it). I would use the techniques I learned to eventually create a new game of my own from scratch.

-----


Any help at all would be appreciated, opinions, comments, criticism, cussing, or general advice or experience. If you need anything about my question explained further just ask.. Thanks :D
Last edited on
Well, i wrote a massive essay trying to answer all of your questions until the site had an error and i lost my post. I'm sad so ill just post this.
Very helpful thanks :D, But I still need more answers :3--Atleast I know there are people capable of answering the questions
Last edited on
If you're looking to jump right into big games using a pre-made game engine i would recommend Unreal development. One of my programming heros Thenewboston teaches tutorials for this engine here:
http://thenewboston.org/list.php?cat=12 . This is the exact same engine used in developing games such as
Gears of war 3 and bulletstorm.

As for game engines, think of them as shortcuts. Usually, if you want to make a game you'll need to follow
some basic steps. First you need to create the backbone of the game before actually coding the game. The backbone consists of all the math and physics that make the game enviroment act as a real enviroment. Game engines take away that first step, allowing companies to go straight to making their game. Without game engines companies would never be able to throw out games as fast as they do(those yearly releases on call of duty depend on skipping that first step to get right to making the game, while blizzard takes that first step and creates a unique game engine for their own games to enhance the feel of the game, making their games take longer).

From what i see, you might want to start from the ground up and not go straight to a high end game engine. I would recommend starting with graphics like directX and openGL, using librarys such as SFML and SDl to create the small games you desire. Trust me on this one, dont go from nothing to trying to create a game using a pre-made game engine, at least know the basics and what goes into coding one.

hope that helps
Thanks, so based on your post I guess I will first start using some opengl code and then some sdl. TBH there is not really an engine that could do what I want for my actual eventual project, so I will probably use a combination of libraries and some basic engines. Well first after learning some more code I will probably take a look at the unreal engine (I heard it was nice) But one more question, if I use an engine is everything I code gonna have to be in the scripting language?? Or do I have to add c++ code while working with the engine. Hows that come along?
Also, I like The New Boston, it was my first step in learning to code in c++, I watched all 73 videos in 3 days and learned practically everything he taught, but 3 days later (today) I realize that his ways are kind of sloppy in c++ since its not his main thing. I have learned to overcome the sloppiness though, but I could not have learned without his tutorials he is a good teacher (although he talks too much)--Anyways thanks again

I would still like to here from others, and their perspectives/comments/ideas/advice it takes it takes 3 apples to feed a man.
Do you have a specific genre and graphics style in mind? Those things would probably have a big influence on how the engine works.

I usually think of an engine as having three main components:

1) Tools for creating game elements such as characters, items, sprites, maps, dialogues, quests, scripts, etc. There could be multiple editors(map editor, character editor, sprite editor, etc) or just a single all-purpose editor.

2) Data files and resource files. Data files contain the objects created with the editor(s), resource files contain sounds and graphics.

3) An "interpreter", or game executable, that loads data files and executes the game based on the input, and manages objects and resources as required.
Of course using a premade engine will be easier. It lets you focus more on the design and creation of your game so you don't have to worry about the programming or implementation of the engine itself.

Have you made any simple 2D games before? It's not very practical to jump into creating a 3D RTS engine with no prior experience in game dev. I don't want to discourage you, it's not as hard as you may think, it just takes alot of experience and knowledge of game design and architecture.
2D: SMFL or SDL. Some people go for Allegro, too.
3D: Ogre3D is free and capable.

UnrealSDK and the like of Unity3D are good, but they'll come with a bit of a learning overhead in that you'll probably have to spend a lot of time learning how to use the SDK and interface before you even touch any code.

Also, don't underestimate the difficulty and complexity involved in programming a 3D game, not to mention all the work you'll need to do on assets.
Last edited on
Thanks, guys and don't worry i don't underestimate anything! I know how hard it would be. Its like putting someone in a blender and expecting them to get out alive without proper blender survival techniques :D I came across this and its good so far http://www.gamefromscratch.com/page/Game-From-Scratch-CPP-Edition-The-Introduction.aspx
Topic archived. No new replies allowed.