Page 1 of 9

Need a Little advise

Posted: Sun Jan 18, 2009 3:59 pm
by Aeolus
Ok, So before i get started on asking some questions please understand that i just started learning C++ about 3 days ago.

Alright, Im going to attend the International Academy of Design and Technology for Game Programming in July. It will cost about $80,000 for 3 years of tuition, Books, and housing. Is this a good idea? I want to basically be a Game Developer when i get out of college and so far i found IADT and DeVry. My friends going to DeVry and says its a waste.

For my second question, To make a game thats 3d like the one Trufun is working on or say a MMO like WoW or Knight Online, what does it consist of? Like C++ coding with a game engine like Torque Game Engine? I dont quite understand what Blitz/OpenGL/SDL/Allegro is and how it relates to game development. Could you explain?

I'm not rushing anything, I am learning C++ till i understand it to a good enough knowledge where i feel comfortable to move on to the next language/thing needed for game development. Could you tell me the things you recommend i learn to start making a game like TruFuns, as in a 3d RPG. So far i am currently watching episodes 1-55 of AntiRTFM c++ tutorials, then i will begin reading the 3 C++ books i bought off amazon, i believe it was Sams 21 days, The beginners guide to C++, and C++ programming for the absolute beginner (I got all of them for $5.00 ea used/excellent quality + free shipping on amazon).

Also can you recommend some better advanced C++ books i can read once im done with the 3 beginner books i bought.

Re: Need a Little advise

Posted: Sun Jan 18, 2009 4:39 pm
by programmerinprogress
Before you even consider game programming, learn to program first.

Find a language you're comfortable with, and one that suits your needs, this is probably the most important thing.

Learn the language, and make sure you at least know the fundamentals before you even bother trying to use a multimedia library like allegro or SDL.

Once you understand the concepts, and you understand how you can apply those concepts, perhaps try your hand at a multimedia library.

You mentioned TruFuns's Game (gollevius) and WoW...wait a second and slow down, you're not going to be making 3D games with bells and whistles quite yet, that takes a lot of learning(years to learn the concepts of 3D programming and Networking for an MMO), you have to be realistic, and you can't expect to understand how to program straight away.

As for learning the language, I would recommend a good book, personally I never bothered with online video tutorials, I don't think they offer the in-depth facts you get from a book (also if you're not willing to put in the reading time, then you're probably not going to be patient enough to program/debug your code)

To answer the question about where SDL/allegro etc fit into game development, you need to understand that they are APIs (application programming interface), they allow the programmer to access the hardware through a simplified means so that you don't have to handle low-level operations, an API does that for you.

As for the institution you've chosen to attend, I can't really help as I don't live in the US.

Good luck programming!


EDIT: as for books, I recently read 'C++ a beginners guide' by Herbert Schildt, that might be a good start, it's about 500 pages and goes into details over beginners fundamentals, but only skims over the more advanced concepts (I'm currently reading a more advanced book to clarify my understanding of the more advanced concepts)

Re: Need a Little advise

Posted: Sun Jan 18, 2009 6:25 pm
by Aeolus
It really seems like you did not comprehend what i meant, or even read my post. By your reply it makes me think you skimmed through.

I said im not rushing anything, Im learning C++ but i am a person who likes to plan ahead so i asked what comes next after c++ that i need to learn for MMO development, so i can buy books and stuff. Im not looking to go straight into developing a game or anything. I just began learning C++ so why would i act like a noob? I just want to know what comes next...

Basically in the first post i meant:

1. What are all the languages/things used to make game development (Dont worry i wont try to make a game till a few years from now. I just want to know what a game like TruFuns or a MMO like WoW is made up of other than C++)
2. What is OpenGL/Allegro/SDL, and what are they used for that relates to C++
3. What is used to code graphics in a game? Like a Game engine such as Torque Game Engine? Just wondering.

I just want to know so once im done reading/learning the 3 C++ books and when i buy some advance books, then i can read other things such as OpenGL books so i can better understand those.

Re: Need a Little advise

Posted: Sun Jan 18, 2009 7:02 pm
by trufun202
Aeolus wrote:It really seems like you did not comprehend what i meant, or even read my post. By your reply it makes me think you skimmed through.

I said im not rushing anything, Im learning C++ but i am a person who likes to plan ahead so i asked what comes next after c++ that i need to learn for MMO development, so i can buy books and stuff. Im not looking to go straight into developing a game or anything. I just began learning C++ so why would i act like a noob? I just want to know what comes next...

Basically in the first post i meant:

1. What are all the languages/things used to make game development (Dont worry i wont try to make a game till a few years from now. I just want to know what a game like TruFuns or a MMO like WoW is made up of other than C++)
2. What is OpenGL/Allegro/SDL, and what are they used for that relates to C++
3. What is used to code graphics in a game? Like a Game engine such as Torque Game Engine? Just wondering.

I just want to know so once im done reading/learning the 3 C++ books and when i buy some advance books, then i can read other things such as OpenGL books so i can better understand those.
Have you watched Falco's YouTube series on how to get started with game development? If not, check it out, it's filled with great info on where to get started.

http://www.youtube.com/watch?v=zAgpsks29W4

My Golvellius game is being written in C++ and I'm using the Ogre3D engine, which is a 3D graphics library. OpenGL and Allegro are libraries that handle 2D and 3D graphics. SDL handles graphics, sound, and input.

A game engine, such as Torque, is going to require much less knowledge about programming, but you are limited to what's built into the engine.

Re: Need a Little advise

Posted: Sun Jan 18, 2009 10:03 pm
by Aeolus
A game engine, such as Torque, is going to require much less knowledge about programming, but you are limited to what's built into the engine.
Thanks trufun, But what did you mean by that?

Re: Need a Little advise

Posted: Sun Jan 18, 2009 10:24 pm
by sparda
Once you're done with the 3 simple books, I recommend "The C++ Programming Language" By Bjarne Stroustrup, the creator of C++.

Pretty much all that you need to know about C++ is in this book; everything. But I'll warn you, its kinda hard to understand on your first read as he uses turgid language. If you've ever tried to read the "Principia Mathematica" By Isaac Newton, you'll know what I mean by *turgid*

Re: Need a Little advise

Posted: Sun Jan 18, 2009 11:16 pm
by Aeolus
http://www.amazon.com/C-Programming-Lan ... 848&sr=1-1

That one? Well I've never read that, I'm not really much of a reader lol. I think the last book i read was Eragon when it came out.

Oh also im not very good at math, I mean i took the bare minimum math classes required to graduate. Is calculus really needed for c++? I think my last math class was Algebra 2. Lol like Sophmore year crap. Oh and FYI im already Graduated, I graduated last year.

Re: Need a Little advise

Posted: Sun Jan 18, 2009 11:40 pm
by sparda
I'm not really much of a reader lol
Oh man, then I don't know what to tell ya. :| You must come to peace with the fact that in order to become any good at programming, you will need to read books, many books. There is only so much you will accomplish by watching tutorials, etc. In other words, if you don't like reading, then forget about programming (professionally that is, of course you can do it as a hobby). If you're not much of a reader, then you must become a better reader, period.

To answer your question:

To learn C++ (the language), you don't need calculus; as a matter a fact, I would say you don't need any math past basic algebra. But if you're planning on doing 3D graphics engines using C++, and stuff like that, then you need a lot of calculus, even physics.

Re: Need a Little advise

Posted: Mon Jan 19, 2009 1:33 am
by Falco Girgis
sparda wrote:But if you're planning on doing 3D graphics engines using C++, and stuff like that, then you need a lot of calculus, even physics.
I'm not so sure that I agree about calculus.

The vector manipulation is also a part of calculus, but you aren't doing it with calculus procedures, you're handling them like matrices. I would say that you need Linear Algebra, not Calculus.

Rates of change, areas under curves, and even solving differentials are pretty useless in our field. They have only helped me when I wanted to find an excuse to tutor semi attractive women in my calculus classes.

Re: Need a Little advise

Posted: Mon Jan 19, 2009 1:43 am
by M_D_K
And scare off engineering nerds :)

Re: Need a Little advise

Posted: Mon Jan 19, 2009 2:26 am
by Aeolus
sparda wrote:
I'm not really much of a reader lol
Oh man, then I don't know what to tell ya. :| You must come to peace with the fact that in order to become any good at programming, you will need to read books, many books. There is only so much you will accomplish by watching tutorials, etc. In other words, if you don't like reading, then forget about programming (professionally that is, of course you can do it as a hobby). If you're not much of a reader, then you must become a better reader, period.

To answer your question:

To learn C++ (the language), you don't need calculus; as a matter a fact, I would say you don't need any math past basic algebra. But if you're planning on doing 3D graphics engines using C++, and stuff like that, then you need a lot of calculus, even physics.
Well i will be taking calculus in about 5 months or so. It will be a stretch going from Algebra 2 to Calc but i can do it.

As for reading, I understand i have to read many books for programming, hence why i bought them. When it comes to learning something i love doing (not saying i love c++ but i do love programming. Im a big fan of SQL and know the basics of Java) then i am always willing to better my education.

Re: Need a Little advise

Posted: Mon Jan 19, 2009 3:55 am
by sparda
I'm not so sure that I agree about calculus.
The vector manipulation is also a part of calculus
I'm not sure if you're disagreeing with me or not.


In any case, I was merely answering Aeolus calculus question specifically, so I omitted other aspects of the 3D game engine creation; surely linear algebra in also included.

Re: Need a Little advice

Posted: Mon Jan 19, 2009 4:48 am
by programmerinprogress
Aeolus wrote:It really seems like you did not comprehend what i meant, or even read my post. By your reply it makes me think you skimmed through.
I'm sorry you feel that way, I agree some of my points were scattered(but that's because I was writing the post at about 1 in the morning!)

On the contrary, I read your post several times, I tried to answer what I understood, and left out what I did not.

After reading your post again...

-I can't comment on the institution you are going to attend, unless you move to england :lol:
-You utilise SDL/OpenGL/Allegro to manipulate the hardware of the computer, you use C++ to control the operations of the Libraries, and in turn you have the ability to do things such as draw graphics to the screen (without having to understand the complexity behind manipulating the screen memory)
-To start making a Game you need to continue learning C++(with whatever way you feel comfortable, although I would use those books personally), and to produce a 3D game you could either use a well known engine (i.e. a pre made collection of source files, which will compile into a game) or you can go down the route of writing your own engine (although you would need to learn a library such as DirectX or OpenGl, however I don't know an awful lot of this as i'm not there yet :lol: )
- my final point about the reading was simply explaining that learning C++ requires much reading time, you have to digest the concepts that are new to you, and I find using a book (or possible a written tutorial) allows you to refer back to points which you don't understand, where a video makes it a little more difficult (this is just what I think I'm not trying to preach)

Now I hope this helped you, now don't tell me I didn't read your post, i've read it about 10 times now .

EDIT:
I just began learning C++ so why would i act like a noob?
when did I say anything about you acting like a noob (I hate using that word).
That one? Well I've never read that, I'm not really much of a reader lol.
Reading is essential in programming, learning the language requires much reading, and analysis of code (to learn or debug) requires patience and more often than not you'll probably have to reference a programming text (online or offline)

Re: Need a Little advise

Posted: Mon Jan 19, 2009 8:32 am
by Ginto8
Before you go far into programming, take this article into mind. I found it to be quite a lot of food for thought. :)

Re: Need a Little advise

Posted: Mon Jan 19, 2009 11:51 am
by trufun202
Ginto8 wrote:Before you go far into programming, take this article into mind. I found it to be quite a lot of food for thought. :)
bingo.

Aeolus, not to shatter your hopes and dreams, but game development takes years to learn.

As you can see from my latest YouTube video, it took me 10 years to get to the point where I could develop Golvellius. And, in one form or another, I've been programming pretty much every day since I was 17. :shock:

If you want to get a game out there quickly, I would look into game engines, like Torque. If you want to truly build your own game from the ground up, you'll need to focus on the fundamentals of programming before you get gaming specific.