Advertisement

Time to start over?

Started by June 14, 2001 02:22 PM
44 comments, last by Tommy x 23 years, 7 months ago
tcs: That depends entirely on what kind of game you're making. Not all games require fast graphics etc.
eg. Card games, Board games, Tetris clones and such, small simple games, perfectly feasible to write in Java.

And for a beginner it might be more important to have a simple language than to use every tool that professionals use. Learn to program using a simple language, it will simplify learning other languages a lot!

Perhaps I shouldn't confuse you more by suggesting yet another language, but I think Python would be quite good as a first language. Its easy to learn and cleanly designed. (The people here would probably categorize it as "not good" for writing games, though )

Edited by - Dactylos on June 14, 2001 5:03:01 PM
LoL tcs, you seem like you really don''t care about who you offend. That statement about the big bunch of idiots, who don''t realize C is dead... I personally use C. And I don''t find a need for C++ at all. Classes are useless to me, so is all that inheritance stuff. I''m not saying it''s a bad thing, I''m saying I see no need. And I''m getting by just fine making my game. In my opinion, C is a great language. C forever, it''s not dead

Don''t resist RoastBeef - You know you''re hungry
Don't resist RoastBeef - You know you're hungry
Advertisement
Well, in my opinion, ->tcs<- is a fucking moron! Does he not realize that most of any operating system is written in C, look at the fucking windows header files! Carmack wrote QuakeIII in C and asm. C++ is slower than C, tahts why it is still used. I hate idiots!
"LoL tcs, you seem like you really don''t care about who you offend."

A bunch of lamers that don''t know C++ ;-) If you don''t like it or see no advantage, there ONLY ONE

possible reason: You di not know C++ well enough...

"That statement about the big bunch of idiots, who don''t realize C is dead... I personally use C.

And I don''t find a need for C++ at all."

This is your personal problem. Probably you are blind, challengend, whatever ;-)

"Classes are useless to me"

Again, consult professional help... If they are useless for you, you don''t know C++ (Or any modern

programming language of the last 15 years...) well enough.

", so is all that inheritance stuff. I''m not saying it''s a bad thing, I''m saying I see no need."

Yes, YOU. And exactly about those persons I was talking about ;-)

"And I''m getting by just fine making my game. In my opinion, C is a great language. C forever, it''s

not dead"

It''s dead. People get this in your head.


it doesn''t mater how damn obvioussly C++ is better than C. It doesn''t matter how superior C++ is in

every damn aspect. It doesn not matter how faster C++ dev is, how much more resuable the code is.

There will ALWAYS be some person that is unable to recognize those incredible obvious advantages. I

just pray that those generations of programmers will die out and newbies receive enough education to

see this for themselves. I possibly cannot understand how any smart human beig can use C in favour

of C++ because he does not see the advantage. I can''t believe you really meant that. Do you really

want to tell me you see no advantage in the countless improvements and additions of the C language ?


I don''t want to have a C/C++ war, because there never was one. C++ is superior, period. YOu can argue about D3D vs OGL because each one has advantages and disadvatages. But you can''t do this with C vs C++ because C has only disadvantages over C++...
Tim--------------------------glvelocity.gamedev.netwww.gamedev.net/hosted/glvelocity
Hmm... I''ll throw in my ideas...

If C++ seems too hard and a bit overwhelming, then slow down. Although many of the C++ books I''ve read always say something about C forming bad (C++) coding styles that usually isn''t the case unless you use C for a long time (that''s when habits and personal prefences about code design start to form). My suggestion is to, if you haven''t already, learn C. C++ is almost completely compatible (except for a few little things) with C code, so learning C will help greatly with the basic syntax and some of the main ideas. You don''t have to go all out and learn every little thing about C. Just get yourself comfortable (sp?) with the syntax and with the concept of writing programs. Make a few text-based games. Then, get one of those C++ for beginners book (Accelerated C++ is a good book.. pretty short too). It''ll review the basics and any of the differences in the way C presents them and the way C++ presents them. After that, the book should cover the basics(note the word basics) of classes and OOP (object oriented (sp?) programming) and should give you more than enough knowledge to write some more programs. Practice designing a few games in C++ using OOP. After you''ve done that for a bit and feel comfortable with what you know, you can then try moving on to one of those big c++ books that covers everything (Bjarne Stroustrup''s (sp?) The C++ Programming Language ) and you shouldn''t have much (if any) trouble.

Well, hope that helps!
The moderator of this forum. Please close this thread its turning in to a pissing fight.
Advertisement
I really think those Sams books are the best out there for beginners. Learn C++, NOT C, together with this book and VERY IMPORTANT, an MSDN library. What really sucks about the sams books is that they don''t cover the C runtime lib, which is essential. But MSDN has a very good reference about it. I see countless coders that are skilled but absolutely lack any OOP skills, I guess that''s a result of the learn C before C++ idea. C++ has the same basic elements as C, so it''s not more complicated etc.

Tim

--------------------------
glvelocity.gamedev.net
www.gamedev.net/hosted/glvelocity
Tim--------------------------glvelocity.gamedev.netwww.gamedev.net/hosted/glvelocity
tcs, cut it out. You''re the moderator and as such should set a good example for others to follow. You should be able to respect that different people opt to write in different languages (for different reasons) and not flame people who give perfectly valid advice simply because you don''t agree with them.

I personally use C++ rather than C, but that doesn''t mean I don''t understand why others would rather write C. Let everyone use the languge of their choice.

Lastly a quote taken from the glossary in "The OpenGL Programming Guide" (aka "The Red Book"):

C
God''s programming language.

C++
The object-oriented programming language of a pagan deity.



(Please don''t take this the wrong way, it''s just meant as a funny quote )
Okay, I just couldn''t resist this C/C++. Not to flame war or fan the flames but isn''t this more the way the war should go:

Its not that C or C++ are hard, the theories behind C++ is what makes it difficult. The syntax in C and C++ are nearly the same (extended of course in C++) but where the challenge in C++ lies is in being GOOD at designing classes. I mean there of course is not an advantage to it if you are not great at designing classes. But if you are then there is an obvious advantage. Plus it takes time to get good at anything, practice is the key.

as per c/c++ in games, depends on the scope of the game. C++ for a big project (3d FPS or something) makes sense, since C++ Classes lend itself well to 3d. But for a simple 2d game, it might be overkill? back to your orignal post Tommy X. First off yes stick with C++ some day, it will make sense. My first game in C++ wasnt really C++ at all I had a game programming book (called creating turbo C++ Games or something) and thats all I had to go on. I went from BASICA to C++. LOL the first project sucked, not one array in it But I learned lots from it, and now I know what arrays are etc...I can look back and appreciate what I learned. My suggestion is goto a book store and just thumb through some programming books until one clicks. Then get that one and stick with it. Start off with sample code and tweak it here and there all the while keeping in mind your short term and long term goals. But thats my two cents too, and this thread is now a dollar over budget


I''m not sure I would listen to a post by anyone who uses the word "lamer", as if the value of a statement has any correlation at all with the coolness of it''s poster. Once people learn to ignore the cult of personality just a little bit and actually assimilate information themselves ... well ... then i guess we wouldn''t be human, but it''d be amazing.

A little advice on this issue in general. Most of the posts you are getting come from a very limited perspective, so do not take ANY of them (including my own) too seriously. Read them all, filter out the useless garbage, and keep the stuff that makes sense. Most programmers are just as opinionated and stuborn as the rest of the world, so realize that when someone says, Pointers are hard, Java is crap, or Don''t take classes, you should read that as "some people think pointers are hard ... I should check them out and see if I agree", "some people do not like Java, I wonder what their reasons are?", "some people prefer to learn themselves instead of being taught, I wonder which method of learning works for me?" And the key is this ... just like in experimental science, everything is just a theory, and additional open honest experiments are the only way to test anything. You may think you like to learn alone, or not to go to work ... but years later you find out you''d rather work with friends and discuss things in a classroom. Be open minded ...

As for learning programming - it depends on how analytical your mind is. If you already think in logical steps, can work through a process (like word problems and chemistry experiments), and are able to hold a vision in your head (like writing a story or playing a paper and pen RPG ...) then you are likely ready to jump right into programming head first.

I recommend you use either Pacal, C, or C++. I have reasons, but I don''t have time to say them all and be fair. I will say this: I personally think Java has certain rules which differ from all other languages in non-trivial ways ... same with Visual Basic .. so if you choose those, you will probably have a harder time learning to forget the unique pieces. Pascal and C offer very clean symantics, easy to learn .. the diff being this: Pascal is more clear to learn and read, but C is much more like all the other currently popular languages (C/C++/Java). Language wise Pascal and C are about the same EXCEPT the standard library and pointers ... C''s library functions are named short abrieviated names that are hard to learn WITHOUT a reference .. but with a halfway decent reference .. this is not an issue. Pointers in C (and all languages) are very hard concepts to get right for new programmers .. but usually in 1-6 months they are no big deal, only causing trouble when you try to do new and creative things you''ve never thought of. Abstract Data Structures, pointers, and dynamic memory are the main reasons you WILL want to take a course within the next year or two ... cause if you learn in isolation .. some of your thoughts will be far from the norm ... and there will be no stabalizing factor to correct your misconceptions ... one alternative is to post in depth statements on THIS forum .. and ask ... "does this sound correct" .. that way you solidify your knowlege, and in the process you think through your ideas clearly and logically.

I would learn to do basic functions, basic input/output, and simple variable stuff and math ... using C/Pascal/C++ .. whatever. THEN .. you can move on one concept at a time ...

C++ is slightly easier to program than C .. even to learn .. BUT it is so BIG that many new programmers get lost trying to understand it all at once ... don''t

if you ignore EVERYTHING for you first program but the main() function and cout ... (hello world)

then add cin (type in your name ... etc)

then add variables and math (enter your grades ... here is your average)

then functions (this function caculates area, this one circumference .. etc)

then structures (but not classes or pointers yet)

Then you will have a good basic groundwork for the next big step ... and all of the above can be learned in anywhere from 1 week (total) to 1 month .. depending on your schedule and the quality of your books.

After that pick from the following and continue on piece by piece:

1. SIMPLE file input / output
2. SIMPLE pointer usage
3. SIMPLE dynamic memory (requires 2)
4. SIMPLE classes

once you do these 4 ... you can go any direction you want ... you will have the grounding to set your own direction ... total time to get to this point ... 3 weeks - 6 months ... depending on you, your schedule, and how in depth you like to take everything.

Good Luck.

This topic is closed to new replies.

Advertisement