July 23rd, 2003, 04:44 PM
best language to learn for the following purposes ....
I hope I'm posting this in an acceptable place. I know the question is kind of general, but my forum searches didn't turn up much, and I'm just looking for as many views on this as possible:
I'm a very unexperienced programmer -- I know a smidgeon of QBasic, some general FlashMX ActionScript, and that's about it. I'd say it's been just enough to give me a general idea of how programming works, and some common types of commands and concepts applied therein.
I would like to get into programming in a new language with the ultimate goal of being able to create visually pleasing RPG/Adventure games of at least a 16-bit console system caliber. I've recently obtained 3DS Max and may teach myself some 3-D modelling but all-in-all my goals aren't too lofty. Recreations of things in the line of Super Metroid, Zelda, etc.
So, I'm wondering what some of you recommend for aims of this type. I have heard that Visual Basic is easiest for the kind of thing I want to do, but that in the long haul C++ is more versatile and powerful and gets you into better programming habits. And now there's C# which I'm curious about too.
I guess I can boil my questions down into a couple specifics:
1) For a relative beginner, is C++ just too much of a task to learn as a spare-time hobby?
2) Do the benefits of C++ outweight the ease of Visual Basic for someone with no intentions of ever doing this professionally?
3) If I were to go the C route, should I do C++ or just start with C#?
Thanks in advance.
July 23rd, 2003, 05:37 PM
C++ is overall the best language to learn if you're serious about programming.
Basically, C++ is the ur-language. Learn it, and you'll learn everything. And if you do wind up wanting to program games professionally, the only language they'll consider is C++. That's what all the professional games are written in.
The only downside is that there is a learning curve and it will take a while before you can start doing cool things like OpenGL or DirectX graphics. If you want to get a feel for game programming quickly, I'd recommend DarkBasic rather than Visual Basic. Dark Basic is cheap and it's specifically designed for making 3-D games. You can learn it very quickly and it will prepare you for 3-D objects and coordinates.
In the long run one of the BASICs would probably suit your needs best. VisualBasic is probably more versatile than DB (I haven't used VB for game programming), but pricier than DB.
Hope that helps.
July 23rd, 2003, 06:07 PM
VB is good if you're writting programs that need a Windows interface and aren't too speed dependent.
Will all optimizations on, VB is almost as fast as C++, but when game programming, expecially 3D game programming, every millisecond counts.
Plus, like Cuku said, C++ is the standard for game programming. Therefor, you're going to find a lot more help on it. There's already many good game programming books for C++.
July 26th, 2003, 10:38 AM
1) I don't think any language is THAT hard, the only thing you need to do is read and do examples A LOT and you'll eventually get it. Also don't give up if it's too hard. If you see a hard piece of code, just do it part by part, it's rewarding when you understand it.
2) I think for 3D, the benefits do outweight the ease of VB, VB is slower than C/C++. VB is also for windows only, if you learn C/C++, you can make games for consoles (gamecube,DC,.. etc)
3) You should learn C++ or C (knowning one will make you know the other, pretty much, it doesn't matter which you learn first).
Here's a good site: www.gametutorials.com
July 26th, 2003, 12:37 PM
C++ is the way to go for serious 3D. I know DirectX with VB and make 2D games though, very little difference in speed.
July 26th, 2003, 03:01 PM
One other question, and forgive my naivete on this. Are the figures and animations you create in a program like 3D Studio Max integratable with C++? I have a book that covers a lot of programming basics, then at the end starts to get into 3D with Direct X, but in all the books I looked at, I saw no mention of 3D Studio Max. Is it more a stand-alone program, or can you use it in conjunction with actual programming to design 3D games?
3D games are quite a ways down the road for me, but I just want to know what I can or can't expect from some of these programs I'm considering learning. THx.
July 27th, 2003, 08:00 PM
Answer: Of course! 3ds Max is the standard modelling program for games, and C++ is the standard programming language. But remember, C++ is a lower-level programming language, so it's not about C++ being compatible with the models, it's about you having a routine in your program to load them and a graphics engine to manipulate them. C++ itself does not determine what sorts of models can be loaded -- your code does.