Best language to make 2d games

Started by
21 comments, last by Paul Benedict Jabines 11 years, 8 months ago
If your goal is to create a game, I would suggest you try Unity. Games written with Unity can be run on Windows, Mac, Android and iOS. Lots of developers are using it with great success.
Advertisement
Nobody can make that decision for you, different languages exist for a reason. Languages are a series of trade-offs. Java is a higher programmer productivity language that pays a price with (potential) speed. C++ is a higher (potential) speed language, with heavy costs in programmer productivity ( and sanity! ). Which is best often comes down to you.


Actually that's not completely true; the ecosystem plays a huge part of it. Both Java and C++ have good (and free) tools available. Libraries are a big part of it, and both have some good choices there too, although C++'s selection is by far it's biggest strength. I would suggest reading this guide for a better idea of languages available, their primary tools and libraries and the merits of each.

Finally we can offer you our own opinion. Me, myself, unless I had to ( platform requirements, client demands, etc ) I wouldn't touch C++ with a 10 foot pole, unless I was working with a very large team. If I was looking to actually ship, if working in 3D I would probably go with C#/Unity, or in 2D I would use a higher level language like LUA with MOAI. Personally, I've been interested in HTML5 lately, so Javascript has been on my mind. It's a hateful hateful language that is a ton of fun to develop in! :) I've recently done some tutorials using Cocos2D if you want a taste for HTML5 development.

Python / Pygame is easy, however is not portable at all ( don't get me started on Py2Exe )
C# / XML is a bit harder than Python, but is very popular -- Mono makes it portable to any system

I've corrected you on the C#/XML thing before. XML is just a markup language/document. XNA is what your after. Proof: http://en.wikipedia.org/wiki/XML http://en.wikipedia....i/Microsoft_XNA Last time you even downvoted me for correcting you which makes no sense seeming as you were genuinely wrong. And btw the guy thats already downvoted you wasn't me

Python/Pygame is also VERY portable. The same code will run on any system with python and pygame installed without any issues. Theres other options besides Py2Exe. Mac has python preinstalled so just include a note on how to install pygame. Linux almost always has python preinstalled so its a simple case of providing a quick note on how to install pygame aswell (which is in almost every distro's repository). I'd say its VERY portable.
If you are fairly new to programming i would suggest you tu use python
With one of the graphic library( pygame pyglet pyopengl) and a physics engine like pymunk. It's easy and if you work hard you can create amazing things !

C# is a really good idea aswell

If you just wanna create a 2d game there is no need to get into c++ or java
It doesn't matter.

Hell, I'm teaching a class on making games in JavaScript. There's lots of them out there these days (games, not classes).

Do whatever you know best. Learn as many programming languages as possible. Eventually, you will see that it doesn't matter.

[Formerly "capn_midnight". See some of my projects. Find me on twitter tumblr G+ Github.]


It doesn't matter.

Hell, I'm teaching a class on making games in JavaScript. There's lots of them out there these days (games, not classes).

Do whatever you know best. Learn as many programming languages as possible. Eventually, you will see that it doesn't matter.


This is great/horrible advice :)

Learn as many programming languages as possible... eventually. One of the biggest problems with new (all?) developers is getting distracted by shiny and new. Learn one language well before moving on, as minimal exposure to many languages doesn't help you one bit, at least until you've mastered at least one.

One of the biggest problems with new (all?) developers is getting distracted by shiny and new.

I think this is a great point. I'm new to games development (but not programming in general) although to start my path into games I decided to go down the XNA route. I'm basically having to pick up knowledge on C# (never used before) from the tutorials and my VB.net and python experiences, hang on, just discovered something glinting on this webpage over here, brb....

[quote name='capn_midnight' timestamp='1344362015' post='4967070']
It doesn't matter.

Hell, I'm teaching a class on making games in JavaScript. There's lots of them out there these days (games, not classes).

Do whatever you know best. Learn as many programming languages as possible. Eventually, you will see that it doesn't matter.


This is great/horrible advice smile.png

Learn as many programming languages as possible... eventually. One of the biggest problems with new (all?) developers is getting distracted by shiny and new. Learn one language well before moving on, as minimal exposure to many languages doesn't help you one bit, at least until you've mastered at least one.
[/quote]

Multiple examples are better than one. If you can see the same program implemented in 3 different languages, it's a lot easier to pick out what is the C/Python/Java of it and what is the algorithm of it.

Yeah, distraction is a problem, but the beginner's single-minded focus on The Best Programming Language Evar is worse.

[Formerly "capn_midnight". See some of my projects. Find me on twitter tumblr G+ Github.]

This topic is closed to new replies.

Advertisement