Utterly new and utterly confused

Started by
5 comments, last by Alpha_ProgDes 18 years ago
Ok, today I've decided to choose the path of C++. I just installed Visual C++ 6.0. Is that a good version? If not what should I choose, and also, is it free? I read a post that said I should go straight into programming for windows as MSDos is, sadly, being used less and less, so learning that would prove useless. I need to learn the complete basics of C++ and I can then move onto the game making tutorials on the main site. Can anyone reccomend any good tutorials and programs? Oh, and as a last question, my brother said it would take at least 3 years to be able to program the simplest game. Is this true? I only want to create 2D games and I'm ready to start trying. How long did it take you guys to create your first proper game? Thanks a ton
Advertisement
Quote:Original post by Iridescent
Ok, today I've decided to choose the path of C++. I just installed Visual C++ 6.0.
Is that a good version? If not what should I choose, and also, is it free?

not a good version at all. it's pre-standard, therefore not true c++. i'd suggest visual c++ 2005 express. it's free as long as you download and register it by november or so.
Quote:
I read a post that said I should go straight into programming for windows as MSDos is, sadly, being used less and less, so learning that would prove useless.

most people stopped using dos about 10 years ago. the latest version must be about 12 years old now.
Quote:
I need to learn the complete basics of C++ and I can then move onto the game making tutorials on the main site. Can anyone reccomend any good tutorials and programs?

The Beginners Forum FAQ. (good place to start)
Quote:
Oh, and as a last question, my brother said it would take at least 3 years to be able to program the simplest game. Is this true? I only want to create 2D games and I'm ready to start trying. How long did it take you guys to create your first proper game?

not true. it shouldn't take anywhere near that long to pick up enough experience to create a very simple game. learning to use 3rd party libraries and api's is key to reducing the time and effort involved.
This space for rent.
You will want to learn console programming first. This is because it is very simple to get started. The only graphics you will have to worry about is text output, most likely with printf (C) and cout iostream(C++). I still use console programming to develop things like audio or networking engines before I plug them into a larger win32 application. Then, once you feel comfortable with C/C++...

Make the move to win32. You will have to read some win32 tutorials to get started. You first have to do some setup: creating a window, registering it with your OS, etc. The programming will be the same, but graphics is much different. You can either use win32 functions for drawing text and simple shapes, or you can make the move to...

DirectX or OpenGL. I won't even tell you that I suggest DirectX between the 2 because it will be a year or 2 down the road before you should attempt either. They are extremely complicated for the beginner.

Good luck, the best advice I can give you is to understand exactly what is going on in every line of your code. Its pretty easy to fiddle with small projects and get them to work without understanding the basics, but it is a horrible practice and will lead to remarkably hard-to-find bugs in medium to larger projects.
-------Harmotion - Free 1v1 top-down shooter!Double Jump StudiosBlog
You'll definately want a good handle on C++ before jumping into non-trivial projects. This means getting a good resource to learn from. "The C++ Programming Language" by Stroustrup (the creator of C++) is the one I usually recommend, but it assumes previous programming experience. Many other books gloss over some aspects of the language, but TC++PL glosses over some of the more abstract concepts you'll need to fully grasp C++. "Thinking in C++" by Eckel is a good compromise, and comes in two volumes (the first is more theoretical, the second is more practical) and is available for free (legally) over the internet on mindview.net and in print version. If you don't have a background in OO programming, he explains OO concepts very well, so it's a good place to start.

Before you start on a non-trivial project, you're definately going to want to understand every major feature of the language. You don't need to know how to use every feature from memory, but you need to understand what it does and where it can be used. Many beginning programmers come up with some crazy stuff only to find out later that the C++ language or its standard library already solved the problem for you. The amount of time it takes you to get to this point really depends on your previous programming experience and how quickly you learn.

I wouldn't dive right into a graphics API before you have a strong handle on the language itself. You'll be bogged down with details of both the API and the language and progress will be painful. Write text based programs first. Learn the language first, there's just no way around that with C++.

Of course, you're not required to use C++, are you? A dynamic language like Python can be a lot easier to learn. There are also free resources for learning Python, and the language itself is free and open source. PyGame lets you do 2d, and there are opengl bindings and bindings to 3d engines like Ogre.
Don't worry about it. It's all about how much effort you put into it. I think i've been learning C++ for about nine months now and i now know enough to make me a very simple 3D game using OpenGL for graphics. I have put tons of hours into learning however and I've also been programming for three and a half years previous to that on other languages so learning wasn't as hard as it could have been. Still I believe that in half a year you should be able to create a basic text based game and quickly move on to actual graphical games from there. This would mean however that you put actual effort into learning.

My suggestions for learning:

1. If an example program is given never move onto the next part of the program until you understand atleast 85% of the code given (some you just won't understand until later)

2. If the tutorial seems hard or you don't understand it ask plenty of questions here (but be clear and consise). Thats what were here for.

3. Have fun when your doing it. Get an example program and modify it to your hearts content. Do cool stuff that you yourself created (you get a warm and fuzzy feeling of success every time :) )

You can do it it will just take a little perseverance.
<-> Rate someone badly if they say something that has absolutely nothing to do with your problem; don't rate people badly because they tried to help you with their limited knowledge. <->
Skip over all that and go straight into C# and .NET. It's a lot more straight forward than C++, and a lot more powerful (for a beginner) at first. You don't have to do anything funky to get stuff working other then getting the hang of delegates. .NET will keep you busy and happy for a long time. It's also a lot more profitable to learn right now. People are clamoring for .NET coders.
Quote:Original post by Iridescent
Ok, today I've decided to choose the path of C++. I just installed Visual C++ 6.0.
Is that a good version? If not what should I choose, and also, is it free?

well i'm quite surprised no one has given you the link yet.
VC++ 2005 Express Edition
For the rest of the programming curiosity.

It won't take you 3 years to make a game. Actually with enough diligence, it could anywhere from 3 to 6 months (granted you mileage will vary [YMWV]). Don't be in a rush. If you don't know C or C++ (or whatever language you plan to use), learn that first. Then, learn the game programming concepts. You'll thank yourself late if you do [smile]

Beginner in Game Development?  Read here. And read here.

 

This topic is closed to new replies.

Advertisement