C++ Complete Beginner Help
by Philip Harvey · in General Discussion · 03/27/2006 (7:11 am) · 7 replies
Hi all,
Firstly, great community you have here. I've enjoyed reading it over the past few days. Now, onto my question.
I'm a 'BASIC' junkie. And I'm trying to kick the habbit. Instead I want to learn all I can about C++ so that I can start work on my own computer game using the Torque engine.
Can anyone offer advice as to what I need to start i.e. software recommendation, books that make learning C++ fun and easy, things like that.
I thank you in advance for any comments.
Berbalang
Firstly, great community you have here. I've enjoyed reading it over the past few days. Now, onto my question.
I'm a 'BASIC' junkie. And I'm trying to kick the habbit. Instead I want to learn all I can about C++ so that I can start work on my own computer game using the Torque engine.
Can anyone offer advice as to what I need to start i.e. software recommendation, books that make learning C++ fun and easy, things like that.
I thank you in advance for any comments.
Berbalang
#2
I'd recommend the "getting started" docs, the starter kits (those 2 cool games) that come with TGE and this web site. Then if you need more there are Torque books you can buy but again they talk in terms of the scripting language not pure C++.
Cheers
-Alex
03/27/2006 (6:39 pm)
Good news you don't need to learn C++. Torque comes with a scripting language (which is C++ like) but it's easier and more productive. That is the expected way to create games and you can start pretty much straight away. I'd recommend the "getting started" docs, the starter kits (those 2 cool games) that come with TGE and this web site. Then if you need more there are Torque books you can buy but again they talk in terms of the scripting language not pure C++.
Cheers
-Alex
#3
For fun you might spend some time tracking down things in TGE, and using break points in two different areas at the same time to determine which one gets called first. After you get familiar with the TGE code base, and get past the beginner phase of C++ you'll be ready for action!
03/27/2006 (9:34 pm)
@Philip: Honestly, for learning C++, having a huge code base like TGE is not a good place to start. I would spend time searching Google and starting with simple C++ applications. This will give you a chance to get comfortable with C++ syntax, compiling, pre-processor, debugging, memory mgt, pointers, references, etc.For fun you might spend some time tracking down things in TGE, and using break points in two different areas at the same time to determine which one gets called first. After you get familiar with the TGE code base, and get past the beginner phase of C++ you'll be ready for action!
#4
03/28/2006 (3:44 am)
@Brandon: To learn TGE do you recommend starting with C++ or the scripting language first? Of course it won't hurt to know C++ but is it required knowledge?
#5
03/28/2006 (3:51 am)
I would recommend to start with learning the TorqueScript language, using Game Programming All in One or The Game Programmer's Guide to Torque should get you well started. Once you have that down, start looking at c++ toturials, get a book or two, and only then start to look at the engine code. Start by implementing and understanding some of the code resources (such as the inventory). Then you can prob start doing your own mod.
#6
You paid money for the source, and if you are interested in becoming proficient at C++, TGE is an awesome code base that is a wealth of knowledge. I just wouldn't sit down to learn C++ from it; there are too many things going on for it to be a useful "beginner" resource. Stick with very simple applications for that, then use TGE to open your eyes to the real world of game development after you know what's going on with C++.
From a very biased C++ background I would say you will need to know C++ if you want your game to innovate and do more than the basics.
03/28/2006 (5:36 am)
I think they are all good ideas, just get started somewhere and work from there. If it were me, it would depend what my role was in the grand scheme of things. If I'm a level designer that will only need to access script based resources, then start with TorqueScript.You paid money for the source, and if you are interested in becoming proficient at C++, TGE is an awesome code base that is a wealth of knowledge. I just wouldn't sit down to learn C++ from it; there are too many things going on for it to be a useful "beginner" resource. Stick with very simple applications for that, then use TGE to open your eyes to the real world of game development after you know what's going on with C++.
From a very biased C++ background I would say you will need to know C++ if you want your game to innovate and do more than the basics.
#7
Thank you for responding to my plea. I have decided to take a two pronged approach. Learn to use the TorqueScript language to produce a simple game and take learning C++ on as a seperate project aside from game design.
Once again, many thanks for your help.
Berbalang
03/28/2006 (7:02 am)
Hi all,Thank you for responding to my plea. I have decided to take a two pronged approach. Learn to use the TorqueScript language to produce a simple game and take learning C++ on as a seperate project aside from game design.
Once again, many thanks for your help.
Berbalang
Torque Owner WDDG
Honestly (imo), T2D's engine is so well written that even coding/modifying/adding to it at the C++ level is much easier than I expected. It has many higher level classes (t2dVector class comes to mind), making it much easier to work with.
Not to mention that, the best way to learn is to immitate. At first I was mostly copying a function/class and changing stuff to suit my needs, even if what I ended up with was nothing like what I started with. It's helpful to see the structure there so I can say, "ok it's done this way in this class ... let me try that".
t2dSceneGraph* pT2DSceneGraph = dynamic_cast
Most importantly, don't be afriad of it! I sure was at first when i started poking through the engine. You can always redownload the source, or use a svn.
Hope this helps.