Sign in to follow this  
Rxanadu

Looking for free C++ game engines

Recommended Posts

I'm looking to learn C++, and I thought the best way for me to do so was to use a game engine to make some games.  I know of UDK and CryEngine 3, but I can't run those on my laptop (the only computer I have at the moment).  

 

Are there any less graphics-intense free game engines that use C++ out there?  I'm specifically looking for something that can use 3D models, as I'm not that good with 2D art as with 3D.

Share this post


Link to post
Share on other sites

You could look into Ogre3D, but I should probably stop you right there and say that trying to lean C++ and a 3D game engine at the same time is a very bad idea. If your goal is to learn C++ you should start with the absolute basics. Being better with 3D graphics than 2D is more or less irrelevant when you compare the programming complexity of making a 2D game vs a 3D one. Buy a good book or look up some tutorials online and start working through them, then when you're familiar enough with the language you can look into 2D APIs like SDL or SFML. If you want to make a 3D game then grab Unity instead.

Share this post


Link to post
Share on other sites

I tend to use Unity for most of my games, so I have some familiarity with 3D game engines.  What I'm looking for is a solid objective to have while learning C++, and I decided to try my hand at making games using C++.  Is there an alternative objective you would recommend for beginners in C++ to try to achieve?

Share this post


Link to post
Share on other sites

Disclaimer: this post is full of largely ignorant complaints by a C++ noob. =P

 

If you're already something of a programmer, the main issue with trying to learn C++ is all of the annoying linking of libraries and stuff. The problem with 3d Engines in C++ is that their tutorials always start this way:

 

"Download these source files and use MAKE to build the project from source (because you totally know how to do that already), then import into your favorite C++ IDE (because you have one) and set up these 32 project properties and build paths and environment variables and linked libraries (I know you could do that in your sleep, tutorial-reader!). Good to go? Okay, here's how to make a game..."

 

Not that I blame them -- it's just a side effect of being an ancient programming language with hundreds of slightly different versions. =P Or maybe I'm just dumb about it, but I always get stuck on just getting the darn things installed and never get to the actual "using the engine" part, and then I give up and go look at Java engines like JME3.

 

So my advice to you would be that you should make "Ease of Installation" a high priority in your search for C++ engines -- and let me know when/if you find one. ;)

Share this post


Link to post
Share on other sites

P.S. Do you care if the game produced by the engine is cross-platform or not? I think part of the reason things were so hard for me is that I didn't want an engine that only made Windows-compatible games, and so my expectations of everything being wrapped in a handy .exe were continually disappointed. =P

 

Edit: I just remembered I had some moderately good success with "Panda3D" which is a free game engine initially developed for Disney's 2005(?) Pirates of the Caribbean MMORPG. I was actually able to get it up and running. =P I think it was mainly built for use with Python, but has C++ as a secondary option for most of the things you might care to do (and has C++ versions of the tutorials too, if I recall correctly). I don't remember why I stopped using it, I think it was mainly some annoyances with the Blender exporter to their custom ".egg" files -- but if you're already comfortable with 3d graphics stuff that might not bother you so much. :)

Share this post


Link to post
Share on other sites

I've looked into Panda3D, and it looks to be pretty good for C++ development.  It's a bit dated, but I'll take anything that will take a minimal amount to get up and running.

Share this post


Link to post
Share on other sites

Disclaimer: this post is full of largely ignorant complaints by a C++ noob. =P

 

If you're already something of a programmer, the main issue with trying to learn C++ is all of the annoying linking of libraries and stuff. The problem with 3d Engines in C++ is that their tutorials always start this way:

 

"Download these source files and use MAKE to build the project from source (because you totally know how to do that already), then import into your favorite C++ IDE (because you have one) and set up these 32 project properties and build paths and environment variables and linked libraries (I know you could do that in your sleep, tutorial-reader!). Good to go? Okay, here's how to make a game..."

Man, I've studied a whole lot of C++ and I think I'm pretty good at it but this part is always fucking voodoo to me. I get the feeling it's actually really simple but gets obscured by all of the presumably super-helpful tools that IDEs provide to automate it and abstract it away, but for whatever reason this always ends up being a clusterfuck for me too. I don't know why: It really shouldn't be that complicated... should it?

Share this post


Link to post
Share on other sites

I agree, project management for C++ is a nightmare. Visual Studio is easily the best IDE but it overwhelms you with options and installing libraries on Windows is a pain. Package management in Linux is a lot better but then you have to deal with not having a good IDE and manually editing make files, and I don't think there's any help for these things written after the 90s. 

 

As for learning C++, I don't think it's that different syntactically from C# or JS which you can use in Unity. I don't know if you'll pick up the real differences (which I'm guessing are memory management, templates, and class definitions) while making a game using an existing game engine. 

Share this post


Link to post
Share on other sites

Is Eclipse for C++ not mature yet? I've only used it for Java so far, and only recently used Vstudio for C# but Vstudio for C# at least is miles, miles worse than Eclipse is for Java. I would expect the C++ Eclipse to be good also by now.

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