Sign in to follow this  
falconandeagle

What engine should I use as a beginner?

Recommended Posts

Hi,
I am a beginner in game development but I know how to program in C++, I also know the standard template library quite well. I am also well versed with all object oriented principles. I know the basics of DirectX, however it takes an inordinate amount of time to do anything in DirectX and I want to make a really good looking game with good mechanics in around 1 and a 1/2 year to submit as my final year project.

So I am looking for an engine that uses C++ and DirectX. I have researched a bit and I have looked into many engines on devmaster. So far I have narrowed down my choices to Esenthel engine, Irrlicht, Source engine and UDK.

I was hoping that someone here can help me finalize the engine that I will be using to make my final year project.

P.S: I know that game development is extremely hard and I am planning to put in a lot of time into making this game. Also I am not a complete newbie as I have made complex games in flash using Action Script 3.0.

Share this post


Link to post
Share on other sites
I think if you're new to game programming, you should consider staying with 2D graphics and gameplay for a while. Those games can be more fun anyway.

If you want to stick with C or C++, there's SDL, among others(and don't forget to take advantage of the standard library). Other than that, python is more beginner-friendly, has a lot of libraries that do the low-end hard work for you, and it has pygame.

Share this post


Link to post
Share on other sites
I think 1 and 1/2 years is plenty of time to make a game from scratch with your level of knowledge. I've made pretty cool games with C++ and DirectX from scratch in 7 months.

Share this post


Link to post
Share on other sites
He wants to use and already knows C++, so why are people promoting learning whole new languages such as python and C# on top of learning to develop games?!?

(It's not like C++ is a bad choice. For starters most of the mainstream industry use it, so as a student that's the best thing to concentrate on and get good at imo. Your best language perhaps isn't the most important quality in a new hire, but it's a damn good start when that happens to mesh with what the company need.)

Back on topic, I think that Unity will have the lowest friction for this proposal. I've not used it that much personally as I maintain/roll my own engines, but what I saw was right on the money. OGRE might be a sane choice but last time I looked at that it seemed a bit messy tbh. You want something that's simple to learn so you can spend your time learning how to write the game itself.

However if you've not done any 3D before and this is not a main topic in your course, I agree with the sentiment that sticking to 2D will get you more and better finished results. (I can't make any recommendations there as I've never felt the need to go to a 3rd party solution for that)

Share this post


Link to post
Share on other sites
Quote:

He wants to use and already knows C++, so why are people promoting learning whole new languages such as python and C# on top of learning to develop games?!?


Hey, he did mention that he's comfortable with flash and AS too...it's not like he only knows C++.

And since he's going to start writing games, C++ will give him various compatibility/linker issues. Last time I checked, SDL didn't support all Win32 features, and the line between software/hardware rendering and how to enable each one was a bit unclear.

I believe python+pygame would be a good choise...it's not like python is that much different syntactically...it teaches good identation and he doesn't have to mess with more advanced features like reflection if he doesn't want to.

I think Unity/UDK and such are way more advanced that what he needs right now...UDK is basically the Unreal3 engine ffs.

But you know, if you disagree...you can rate me down...plz?? :P

Share this post


Link to post
Share on other sites
I started learning 3D with C# and XNA neither of which I'd used before, within 9 months I had a pretty nice looking engine with terrain, physics, animation and some nice graphical effects. With twice that much time you could definitely get something pretty solid done. You sound like you have more experience with programming than I did at that time as well, I'd only done some Java and even then in quite small programs.

Definitely consider XNA as it takes care of a lot of the nitty gritty stuff and lets you get on with making nice graphics and gameplay. It's got some great features such as an inbuilt component system as well as a service system not to mention the content loading is all done for you. That's a good few months of work in C++ to get to that point already done for you.

If you plan on networking with C# than I would definitely recommend using the Lidgren library as well, I've been using it lately and it's absolutely fantastic. In terms of physics than there are quite a few options, I've used JigLibX and while it's not being supported much lately it works very well for the basic solid physics stuff, various primitive shapes available as well as inbuilt heightmap physics. Definitely worth a look at too.

Share this post


Link to post
Share on other sites
Umm I guess I didn't explain properly, I already know how to program and make 2D games. I want to make a complete 3D game for my FYP with good graphics, sound and game mechanics. I have already tried UNITY but it's not really what I am looking for.

The reasons I want to code in C++:
1) I know it quite well, and I've even entered programming competitions like ICPC.
2) It is the industry standard for making AAA games.

P.S: I am NOT a beginner, I guess I posted in the wrong forum but I didn't know where to post this thread. And guys please don't mention engines that do not use C++ for writing the game code, It is not what I am looking for.

@Rubicon: You have got it right, I am not looking for beginner stuff, it's just that I don't want to make a game engine by myself since I don't think I have that much time and also I don't think I can make a really high quality engine by myself.

@UDK is not that advanced, I've already used it and made some prototypes. It's just that before I dive into any engine completely, I want to be sure that I am using the best one to suit my needs. Pygame is for people very new to programming, I've already used it to make games. I prefer AS 3.0 and flash to it.

Share this post


Link to post
Share on other sites
Quote:
Original post by falconandeagle
Umm I guess I didn't explain properly, I already know how to program and make 2D games. I want to make a complete 3D game for my FYP with good graphics, sound and game mechanics. I have already tried UNITY but it's not really what I am looking for.

The reasons I want to code in C++:
1) I know it quite well, and I've even entered programming competitions like ICPC.
2) It is the industry standard for making AAA games.

P.S: I am NOT a beginner, I guess I posted in the wrong forum but I didn't know where to post this thread. And guys please don't mention engines that do not use C++ for writing the game code, It is not what I am looking for.

@Rubicon: You have got it right, I am not looking for beginner stuff, it's just that I don't want to make a game engine by myself since I don't think I have that much time and also I don't think I can make a really high quality engine by myself.

@UDK is not that advanced, I've already used it and made some prototypes. It's just that before I dive into any engine completely, I want to be sure that I am using the best one to suit my needs. Pygame is for people very new to programming, I've already used it to make games. I prefer AS 3.0 and flash to it.


Hm, you know, in that case you seem to be more than capable to choose the tools you want to use yourself. All we can do in this thread is list some engines and their pros/cons, but you can do that research on your own way more efficiently. We can't possibly know "the best one for your needs", I think you understand that. So, there.

Share this post


Link to post
Share on other sites
@AdrianC: technically, OGRE is a graphics engine, and requires other libraries to create a full game.

@mikeman: for C++, there's also SFML, which I, at least, found easier to use.

@OP: have you tried searching on devmaster.net's engine list? Also, what about the Unreal engine? I know you said you wanted a C++ engine, but it is proven, and could get you up and running in no time. Alternatively, the idTech 4 engine, or the Half Life engines are both in C++. I suppose with the above choices, it boils down to wether you want a completely standalone game ( still possible with Half Life, need to buy for idTech 4 and Unreal, unless you're OK with "mod" style games )

Share this post


Link to post
Share on other sites
@mikeman: I was looking for people to explain their experiences with the engines I listed. User experience is way more trustworthy then some reviews that may or may not be true. Also I am making a 3D RPG game, with complex mechanics, there now you know what I am looking for :p. I want my game to have HDR lighting and tessellation and good AI with awesome pathfinding xD. I am doing this so that I can showcase my programming and game developing capabilities to good game companies so that I can get hired, I understand the game industry is extremely hard to get into and I don't want to leave any stone unturned.

Anyway I was not trying to sound rude or anything, and thanks for the help.

Share this post


Link to post
Share on other sites
Quote:
Original post by falconandeagle
@mikeman: I was looking for people to explain their experiences with the engines I listed. User experience is way more trustworthy then some reviews that may or may not be true. Also I am making a 3D RPG game, with complex mechanics, there now you know what I am looking for :p. I want my game to have HDR lighting and tessellation and good AI with awesome pathfinding xD. I am doing this so that I can showcase my programming and game developing capabilities to good game companies so that I can get hired, I understand the game industry is extremely hard to get into and I don't want to leave any stone unturned.

Anyway I was not trying to sound rude or anything, and thanks for the help.


Well, why didn't you say so? Assembly is the answer, duh!

Seriously though, then those guys that proposed UDK or Unity I think were right in this case. I thought you were fairly new and wanted to take your first dive into gamedevving.

Share this post


Link to post
Share on other sites

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