Help! I'm trying to make a game.

Started by
44 comments, last by Dragonsoulj 11 years, 7 months ago
Hi I'm Kripis and in the future I want to work as an indie game developer (I'm 13) but I'm stuck, C# or C++? I know Java a bit (watched over 70 tutorials from "thenewboston" and over 20 of C++) I like C++, HATE Java so that one is off the table but there's C# and while they are similar I've heard it's better, I've also heard that C# is faster at getting your games finished, well my big question is keep going with C++ or stop and go for C# while it's still early (only 20 C++ videos).
Advertisement
Go with whatever you feel the most comfortable.

With C# and XNA you already have a pretty nice framework and plenty of tutorials that will help you in making your game. Next to XNA there are probably some more other viable options that will help you make your game. Perhaps Unity3D is something you want to look into.

With C++ you have a bit more choice I think (I'm not that deep into what is out there for C#, so I might be wrong) there are plenty of engines/frameworks out there that will let you focus on the gameplay part instead of the rendering part.

So basically, see what fits you best in your goal. If you are still new to either of those 2 languages, compare differences, see what is out there that might help you in your development. All of that has already been answered more than once on this forum alone, so do some digging here and see what has been said over the past time.

Good luck! :)
Thanks for the answer but the type of answer I want is not "go with the one the you like" I want an "Go this because of this and NOT this because of this" type of answer I want many opinions like that, please!

Thanks for the answer but the type of answer I want is not "go with the one the you like" I want an "Go this because of this and NOT this because of this" type of answer I want many opinions like that, please!

There are no such answers, this is life.
Besides that, you are still 13 don't worry about this, go to school and get good grades first.
The problem with the answer you are looking for is that all languages are good in their own way, even for making games. Sometimes people totally miss that the concepts of programming are more important than the language choice for learning.



Go with whatever you feel the most comfortable.

With C# and XNA you already have a pretty nice framework and plenty of tutorials that will help you in making your game. Next to XNA there are probably some more other viable options that will help you make your game. Perhaps Unity3D is something you want to look into.

With C++ you have a bit more choice I think (I'm not that deep into what is out there for C#, so I might be wrong) there are plenty of engines/frameworks out there that will let you focus on the gameplay part instead of the rendering part.

So basically, see what fits you best in your goal. If you are still new to either of those 2 languages, compare differences, see what is out there that might help you in your development. All of that has already been answered more than once on this forum alone, so do some digging here and see what has been said over the past time.

Good luck! smile.png


I think this answer is pretty good IMO.

But I'll try and be a little constructive.

If you are really serious about getting into games development and see it as something you would definitely want to get a job in when you are older.
Think about C++, its today's industry standard, however, it is a very intensive language. so learn the concepts and basic ideas before trying make games straight away, you will just stress out and fail.

The other thing is about your age, you are quite young, so the industry standard might change by the time you are 20 or something. That said, knowing the principles of programming is better than focusing on a language, it means you can pick up any language that happens to come along.

If you want to just dive right into games programming however, without having to worry to much about other stuff. Yes c# and XNA is a good place to go.
/********************************************************************************\
/**********************He Who Dares, Wins**********************************\
/********************************************************************************\
Okay i'll take a shot in the dark then, I can't tell you which one to go with, because that depends on your dedication and project aim, but I definitely lay the cards on the table.

Do you want full control of your game? Do you need to manage memory yourself, rather than letting the system manage it? Do you want it to run on multi-platforms? Then I'd choose C++, if we compare it to C#, C++ is a lot steeper learning curve, however, if you use the right libraries your application can be cross-platform, run faster (in saying that though, the speed difference probably isn't that noticable, it'll probably be more noticeable the larger the application is), industry standard for the most part, so learning C++ you can be safe in knowing its used throughout the industry.

C# is a Microsoft product, and while the language is very nice, it holds similar routes to Java, so if you hate Java, its likely you'll hate C#. However, its faster to get games out on the table, since you dont need to worry about memory management, and if you use XNA, boilerplate Windows and DirectX code (Also allows you to release for the Xbox). So there is always that route. As far as I know, so don't quote me on this, C# will only run on Windows, due to the CLR, so cross-platformability is dead in the water if you want to release for other platforms.

But, there just the cards, I can't tell you what to do, because thats your choice, and I don't understand your goals/aims/dedication enough to reccomend one over the other, and if I did, it would't always be clear cut, go with what you decide is best.

"The problem with the answer you are looking for is that all languages are good in their own way, even for making games. Sometimes people totally miss that the concepts of programming are more important than the language choice for learning."

This is a good reply, because its true. Dont look at the language features, but instead, look at what you can do with it. And good luck.

"The other thing is about your age, you are quite young, so the industry standard might change by the time you are 20 or something, that's knowing the principles of programming is better than focusing on a language, it means you can pick up any language that happens to come along."

And another, C++ is industry standard now, but whose to say this wont change. Learn one language, it becomes easier to traverse that skill and knowledge to be easier, I learnt PHP and then moved to C++ with relative ease having learnt PHP and its object orientated route. So it really doesn't matter that much.
'Knowledge isn't key, but understanding...'

My qualifcations are not here to showcase, but for those I answer and ask, to get a better idea on my knowledge.

BCS Level 2 Certificate for IT Users (ECDL Part 2)
OCR Level 2 National Award in Business
Level 2 First Diploma in Media
Level 3 Diploma in Games Design and Development Extended
BSc Hons in Computer Games Programming (Current - 1st Year)

Thanks for the answer but the type of answer I want is not "go with the one the you like" I want an "Go this because of this and NOT this because of this" type of answer I want many opinions like that, please!


In my opinion those opinions are worthless, stop worrying about what language you start with, you'll probably end up learning the 3 you mentioned + 10 more before you're 25 anyway.

So my advice is: Just pick a language and start making games, C# is probably the option that will give you results the fastest and cause you the least amount of problems, C++ will take a bit longer to get up and running with and it will cause you the most problems, there is also a risk with C++ that you pick up some very bad practices that can be timeconsuming to unlearn later on (a good book will help alot here), i strongly advice against using tutorials (video or traditional) for C++ since far too many of them are pure complete and extremely smelly crap and as a beginner you won't be able to pick out the good ones from the bad ones. (over 90%(rough estimate) of the C++ tutorials on the internet are bad and a disturbingly large portion of the bad ones are so bad that they actually do more harm than good).

Thenewboston for example is crap, (its not crap of the extremely dangerous kind but it is still crap) i'd highly avoid staying as far away from those c++ tutorials as you possibly can. (Their tutorials for other languages might be better, but even if they're not the damage caused by bad tutorials is far lower with managed languages such as C# than they are with C++)
[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!
You are currently 13. So I will tell you why I think you should master C++ in the next 5 to 7 years. It might not stay the industry standard that long, but learn it still because it is a language which teaches memory management and pointers which some other languages hide.

After you have learned the c++ language you should learn application programming interfaces like OpenGL, OpenAL TCP/UDP sockets and some higher level like Ogre3D, SDL, glfw, etc. Once you are comfortable programming with c++ you can quite easily pick up other languages.

You have lots of time on your hands you can use to become great programmer and before you need to support yourself. Use this time well and you can build your indie game business already at 16 to 18, but still remember to hang out with your friends so you wont become unsocial like me, because you really most likely will not need to start your business until you are over twenty.

I remind you that knowing a programming language is not enough to create the next best seller.
Go with C# and get a few games under your belt. Try XNA with C#. Youll be able to learn the concepts of game design faster and not struggle with the complexities that are the C++ language.

Then once you have some titles COMPLETE, attempt learning something more complex with C++.



EDIT: Not sure why I got - 1, the OP obviously wants hard opinion on a direction, so I gave it.

jmillerdev.com

Follow me @jmillerdev

You probably won't understand most, if not all, of the things you need to know to program a computer game. I would say you need to wait at least a couple of years, as you definitely NEED Algebra I and II and Linear, but Calculus does come in handy (not COMPLETELY necessary, but almost). And that is only for the graphics part (which is surprisingly only a small part of programming a game, about 10%). You definitely aren't the first kid out of your age group running over here for advice to implement their "great new idea."

C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.

This topic is closed to new replies.

Advertisement