|
Chromanoid
|
 |
« Reply #15 on: November 07, 2010, 04:36:06 AM » |
|
Learn C#. It is a great language for learning. I strongly advise against C/C++. It is a language that is extremly hard to master and especially for beginners it is a burden. C++ is a very complex language and the possible perfomance improvements come with many drawbacks in coding comfort and ease of use.
If you know C# you have many possibilities: Unity3D, XNA, SlimDX, Silverlight, Mono+OGL, Player.IO...
MS Visual C# Express is a very nice free IDE for beginners.
C# is very similar to AS3 and Java - this makes it easy to learn them after learning C# (btw: if you know the basics of one programming language you know the basics of most programming languages).
If you don't want to learn C# I would recommend Java.
|
|
|
|
|
Logged
|
|
|
|
|
Netsu
|
 |
« Reply #16 on: November 07, 2010, 04:57:48 AM » |
|
C# and Java are both great languages if you want to build web-based games. But C++ is basically the go-to language when it comes to precompiled software distributed in an ordinary manner (i.e. downloadable exes). And it's not that hard to master at all. It is surely not a good choice for your first language to learn, but once you know the basics it's not that hard.
This is why I recommend Python and then C++. But if you want to develop web-based software, then both those languages are of little use to you, and I too recommend C# or Java.
|
|
|
|
|
Logged
|
|
|
|
|
Chromanoid
|
 |
« Reply #17 on: November 07, 2010, 05:27:17 AM » |
|
If you want to make games but not become a game programmer C++ is one of the worst decisions you can make. Its coding comfort is almost zero compared to C#.
With Unity3D, XNA, SlimDX and Tao one can build "downloadable exes" as good as with C++. When you want to make games with a small team one should choose productivity over perfomance. This is why some developers choose java or c# over c++. But if you want to make games even faster you should choose an engine like Unity3D or UDK anyway.
|
|
|
|
« Last Edit: November 07, 2010, 05:44:01 AM by Chromanoid »
|
Logged
|
|
|
|
|
Netsu
|
 |
« Reply #18 on: November 07, 2010, 05:40:45 AM » |
|
If you want to make games but not become a game programmer C++ is one of the worst languages you could choose. It's coding comfort is almost zero compared to C#.
Well, C++ is for sure a language for programmers, but that is why it is called a PROGRAMMING language  And coding comfort depends greatly on libraries that you are using and how proficient you are with handling garbage yourself. With Unity3D, XNA, SlimDX and Tao one can build "downloadable exes" as good as with C++. When you want to make games with a small team one should choose productivity over perfomance. This is why some developers choose java or c# over c++. But if you want to make games even faster you should choose an engine like Unity3D or UDK anyway.
But then to run those "downloadable exes" one needs the Unitiy/XNA/whatever platform, yes? I guess people have varying opinions on what is most comfortable, and where the balance between ease of use and capabilities lies. For some it is best to just use Game Maker, others use platforms like Unity3D or XNA and others prefer C++ and OpenGL. It would take definitely too much time to try out all those things and decide for yourself, so you have to kinda guess what suits you best. Still, I think Game Maker and Python+Pygame are the two best starting points, from there you can go everywhere you want. And maybe knowing what you liked/disliked when using those tools will help you decide what next.
|
|
|
|
|
Logged
|
|
|
|
|
Chromanoid
|
 |
« Reply #19 on: November 07, 2010, 06:03:36 AM » |
|
But then to run those "downloadable exes" one needs the Unitiy/XNA/whatever platform, yes?
Not really, applications developed with Java, Unity3d and Mono/C# can be deployed standalone... (i.e. grappling hook [comes with a portable jre]* or power of defense [standalone unity game (with portable mono)]). *correction: not anymore (?)... but you can do it just google portable jre.
|
|
|
|
« Last Edit: November 07, 2010, 06:16:00 AM by Chromanoid »
|
Logged
|
|
|
|
|
st33d
Guest
|
 |
« Reply #20 on: November 07, 2010, 06:55:08 AM » |
|
You might want to try a teaching language: http://processing.org/learning/Java is pretty good for learning how to program properly and Processing keeps all the complicated gunk out of the way. Once you've got a handle on that - then you can graduate to any other language and know enough basic concepts to take it in your stride. I understand the arguments for Python and C++, but Python should be a special treat after you've learned all the basic concepts and C++ should be saved for your masterpiece.
|
|
|
|
|
Logged
|
|
|
|
|
Nugsy
|
 |
« Reply #21 on: November 07, 2010, 02:49:00 PM » |
|
What i get from what you have said is that you just want to make games, i'd say the best way to do this is to start in GameMaker. It's easy to pick up and you can get good results in a relatively short amount of time. When you think you have GameMaker's basics down, move on to using GML within GameMaker, it's a great way to learn the basics and it has loads of helper functions. If you get fed up with this, and feel like you need more of a challenge, then move to another language! I won't give out suggestions here as you'll probably make the decision yourself after doing a bit of research. Good luck! Glad to have another developer in the mix haha. 
|
|
|
|
« Last Edit: November 07, 2010, 04:04:30 PM by Nugsy »
|
Logged
|
|
|
|
|
Aik
|
 |
« Reply #22 on: November 07, 2010, 03:22:16 PM » |
|
I'd say AS3 (compiled with Flex, not Flash). Python is fine too, but I think it's easier to turn your program into an unreadable mess with Python than AS3.
|
|
|
|
|
Logged
|
|
|
|
|
Absurdist
|
 |
« Reply #23 on: November 07, 2010, 04:34:28 PM » |
|
Java or C# is the way to go.
|
|
|
|
|
Logged
|
|
|
|
|
John Sandoval
|
 |
« Reply #24 on: November 07, 2010, 04:39:44 PM » |
|
 Felt appropriate.
|
|
|
|
|
Logged
|
|
|
|
|
JoeManaco
|
 |
« Reply #25 on: November 07, 2010, 04:47:20 PM » |
|
A simple but very powerful language to start with is Blitzmax. It's easy to learn, it's perfect for games and it produces very fast native binaries (and you can even import c/c++ files). It also has a big and helpful community. http://blitzmax.com/
|
|
|
|
|
Logged
|
|
|
|
|
Geti
|
 |
« Reply #26 on: November 07, 2010, 08:06:03 PM » |
|
Quite a few of you seem to be expecting him to be using his first language forever. "GO C#/C++" is poor advice for someone just starting out. You're much more likely to have a rewarding experience starting out either with GML, the python + pygame route or with something even more high level, like Lua with Love2D. Learning to code is more about getting your brain in the right order, but getting used to the quirks of a language is a lot easier if that language is as close to human-readable as you can get. Personally, I'd go with Lua + Love or GML (or construct, if you decide you hate coding). Learning proper game design and getting a grounding in programming at the same time is enough to ask, you'll have more fun without developing a love-hate relationship with gcc or worrying about segfaults.
|
|
|
|
|
Logged
|
|
|
|
|
John Sandoval
|
 |
« Reply #27 on: November 07, 2010, 08:21:38 PM » |
|
Quite a few of you seem to be expecting him to be using his first language forever. "GO C#/C++" is poor advice for someone just starting out. Only one person said this... most of us said go Python or Java first, then C/C++ for greater control.
|
|
|
|
|
Logged
|
|
|
|
|
Mattivc
|
 |
« Reply #28 on: November 08, 2010, 01:39:13 AM » |
|
I started with UnityScript in Unity3D, and have now recently moved on to C# with both Unity and XNA. It was i nice learning curve for me, and i can recommend it.
|
|
|
|
|
Logged
|
|
|
|
|
Geti
|
 |
« Reply #29 on: November 08, 2010, 02:01:43 AM » |
|
Only one person said this... most of us said go Python or Java first, then C/C++ for greater control.
Java or C# is the way to go.
Learn C#.
But yeah, it is only two. Point was, start pretty high level and work your way down since we're making games here, not creating a highly optimised server or high fidelity physics sim or anything that costly. Those things get integrated into your games coding later if you need them  and at the end of the day when you're starting out it's a lot more fun to have something playable made in Love or GM after a few hours of getting your head around the related languages and practices than realising you missed a semi-colon and that's what's making your compiler spit out all those unhappy red messages and why are you still learning about basic IO it's three in the morning oh god oh god I just want to make a guy run around the screen.[/melodrama]
|
|
|
|
|
Logged
|
|
|
|
|