HELP!

Started by
22 comments, last by Telastyn 11 years, 9 months ago
Thank you for all the helpful insight, guys!! This is exactly what I was hoping for when signing up for these forums! I will definitely take a look at that book and try again with SFML later today! Also thanks for the useful tip- I wont be overloading the tags anymore. Some websites that I have visited were so large that you needed to use alot of tags just to get what you were asking about, glanced at.

~Saint Squireen
Advertisement
Just my opinion, but, C++ requires a lot of Library's to achieve a lot of what your looking for, or you have to do the grunt work to write the system handlers that you are asking for.

If you don't mind shifting to C# you can use Game Studio and it's XNA Framework to do most of that heavy lifting for you, plus, you get the added benefits of having all of that Creators Club material at your disposal. This will allow you to use Visual Studio Express 2010 as your IDE and Game Studio 4.0, to target the XBox 360, WP 7+, and the PC.

I realize this is all Microsoft specific and I will get trounced on by those that hate Microsoft, but this will get you started and building games faster, and then you can look for replacements for the XNA sub-systems, when you understand better what they are all doing.

I have used these systems, while getting my Associate's in Programming, Bachelor's in Game and Simulation, and my Master's in Game Design Degree's; and I could now use anything I want because of that starting foundation.

I now have a Game Framework I use for almost any project that I start, and can modify that as needed from project to project; as long as I'm targeting any Microsoft platform.
As dkrogmann suggested, C++ is probably not the best choice for your first endeavors in programming. Perhaps try something easier, like Python or maybe C#. If you search the forums for "C++ first language" you'll turn up a lot of reasons why.

I recommend Python and Pygame. It seems someone has already told you the typical "do a guessing game and then Pong" suggestion; they're right. Work up from printing "Hello, World!" to making more and more advanced games. You'll get there if you keep at it!

gamedev.stackexchange.com is a great resource, as is this site. I've found books are the most useful learning tool for beginners. There are plenty of good ones for Python; I think I bought some from Amazon.

Good luck!

As dkrogmann suggested, C++ is probably not the best choice for your first endeavors in programming. Perhaps try something easier, like Python or maybe C#. If you search the forums for "C++ first language" you'll turn up a lot of reasons why.

I disagree, if he already knows basic C++ it would be unwise to switch. Just stick with what you know, C++ may be harder but if your going to have to learn it anyways, and already know some of it, its more of a pain to switch. It is basically a waste of time to go learn something else just because people say its "easier."

Any language is easy if you work hard enough, quit being lazy and put in some hard work. smile.png

I disagree, if he already knows basic C++ it would be unwise to switch. Just stick with what you know, C++ may be harder but if your going to have to learn it anyways, and already know some of it, its more of a pain to switch. It is basically a waste of time to go learn something else just because people say its "easier."

Any language is easy if you work hard enough, quit being lazy and put in some hard work. smile.png


I think we have gauged his skill level differently. I got the impression that he's just starting to look into game development and hasn't really made a commitment to C++ or coded more than a few console tests. (He says a guessing game is "within his capabilities", not that he's done one yet.)

As to needing to learn C++ anyway: not necessarily. There are plenty of libraries and platforms that can be used to develop games that don't use C++. In any case, learning C++ first is probably not the best way; I'd recommend a more gentle introduction. Learning C# or Python first is not being "lazy." We don't start our careers coding MMOs, we code "hello, world."

As to needing to learn C++ anyway: not necessarily. There are plenty of libraries and platforms that can be used to develop games that don't use C++.

Not if your going to do a career in it as he said.


Learning C# or Python first is not being "lazy." We don't start our careers coding MMOs, we code "hello, world."

It is to an extent, when you considering everything is basically already implemented for you in C#, and more so in Python. I didn't recommend he code an MMO, instead of hello world, I recommended he stick to what he already has experience with. smile.png

That is not to say you cannot learn in those languages, you can, but you will be missing the finer details.

Not if your going to do a career in it as he said.


Once again we have interpreted him differently. I took "career" more generally.


It is to an extent, when you considering everything is basically already implemented for you in C#, and more so in Python. I didn't recommend he code an MMO, instead of hello world, I recommended he stick to what he already has experience with.

That is not to say you cannot learn in those languages, you can, but you will be missing the finer details.


Everything already implemented? If you're referencing the standard/.NET libraries: true, many low-level tasks are abstracted to save you from "reinventing the wheel", so to speak. But if he wants to write a web scraper, should he really be initiating the socket connection and parsing HTTP to do so?

As to missing the finer details: If you're referring to pointers/memory management/low-level programming stuff in general, then yes, he will be missing it at first. I'm not objecting to his learning low-level languages down the road. I'm just suggesting they may not be ideal at first.

That is not to say you cannot learn in those languages, you can, but you will be missing the finer details.


Yes, missing fine details like how to smelt your own steel when all you want is a roof over your head.

C++ is nothing but a string of landmines for beginners to walk into repeatedly.
Yes, missing fine details like how to smelt your own steel when all you want is a roof over your head.

Your analogy is a bad one, what your trying to learn to begin with is how to build the roof, so it makes sense to start with the basics. If all you want is a roof, go ahead and take a game already made and mod it.

So I shall clarify, code reuse is useful.

However, if you don't understand what the code is doing in the first place your at a serious disadvantage. Sure you can reuse a red-black tree implementation, but if you don't even know what it is doing or the complexity requirements you probably shouldn't even be using it.

If your using an animation library that uses quaternions for rotations, and don't even know basic quaternion mathematics how can you possibly hope to make your game work?

Understanding how to implement such things is important. C# abstracts most of this away so that you don't even have to think about it, this is the wrong way to learn.
To make myself a little clearer, I just want to say that I have been linear programming for over a year now and hit the point where I literally cant do anything else. I cant learn anything new, nor get better at implementing by practicing, nor have any trouble what so ever with making games that linear programming can handle. I have done guess my number, a memory game, hangman, tictactoe, text rpg, a very small Skyrim game with money, experience, coin, leveling up system, shop, fishing (although not implemented in actual game), battles/battle sequences, and a save and load feature using 'lists' to arry a bunch of variables. To restate(summarize): Im finished with small, easy, slow languages and Im ready for the big leagues. Im very interested in what object oriented programming can accomplish and I do very much want to turn this into a life long career.

I hope this has cleared up some of these vague, foggy thoughts.

~Saint Squireen

This topic is closed to new replies.

Advertisement