Language Question

Started by
4 comments, last by Spencer Bowers 11 years, 11 months ago
[color=#000000][font=Tahoma]

I've done a fair bit of programming in Java which, coupled with my love of video games, has sparked my interest in game development; however, Java as a language is seldom used in the game development industry, so I wanted to use this summer to do two things I view as necessary in my growth as a developer: pick up a new language, and make a few games as hobby projects, seeing as I have not made any before. My initial plan was to learn C++ over the summer and use it to make games, but in my search for a game engine to use, the lists I found (see the link below as an example) showed that few, if any, engines use C++ as a language for writing the code itself (the strong majority using either Lua or Python, some derivative of the two, or the occasional C#/Objective-C). So my question is, what would you recommend? If it were just the case that all the freeware engines require these other languages for scripting and it's the commercial ones that use C++, I'd pick C++ in a heartbeat, but from what I see, C++ is rarely used, so I'm not sure what to do.

[/font]

[color=#000000][font=Tahoma]

Anyone got any suggestions? Thanks in advance.

[/font]

Advertisement
Java is perfectly capable as a platform for game development; I'd say stick to your strengths instead of trying to make decisions based on popularity factors, but that's just my opinion :-)

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

Android uses Java, and the market for Android games is pretty active.

Many desktop titles use Java.

Many web games use Java; look at EA's Pogo that seems to be based mostly on applets.



As for learning new languages, it is always a good thing to learn some more. C# and C++ could be good for your career, but that depends on your job. Game console programming is done in C++ with no immediate signs of stopping. Many studios are moving their PC development to C#. Python and perl are useful scripting languages that are always handy.

Really just follow your passions. The only wrong choice is to do nothing.

Java is perfectly capable as a platform for game development; I'd say stick to your strengths instead of trying to make decisions based on popularity factors, but that's just my opinion :-)


I do agree, and it's something I've thought about, but I feel like using a new language to make a game would kind of be killing 2 birds w/ 1 stone which is why that's what I'm initially planning for.


Android uses Java, and the market for Android games is pretty active.

Many desktop titles use Java.

Many web games use Java; look at EA's Pogo that seems to be based mostly on applets.

As for learning new languages, it is always a good thing to learn some more. C# and C++ could be good for your career, but that depends on your job. Game console programming is done in C++ with no immediate signs of stopping. Many studios are moving their PC development to C#. Python and perl are useful scripting languages that are always handy.

Really just follow your passions. The only wrong choice is to do nothing.


Ok. I knew of one or two big games that use Java (i.e. LoL), but didn't think it was still used that much.

I forgot to put the link in for where I came to this realization: http://content.gpwiki.org/index.php/Game_Engines

I thought that C++ was still big, but then I looked at the engines (some of which are still really popular like Unreal Engine), and there might have been……like……1 that had C++ as a scripting option, which is why I was a little confused. The idea of maybe learning C# in conjunction with Unity seemed like a good idea, but if C++ is more prominent and more highly regarded, I'm not sure where to go. Thanks for the advice so far though :)
It depends a lot on what you want to do.

If you're interested in implementing the guts of the game, you might consider learning C++, just because that's what most of the engines themselves will be written in these days. (Whether that's a good or bad thing I'll leave for another thread, as I happen to have strong opinions on that matter.)

On the flip side, if you just want to make cool games, pick up an existing engine and learn C# or Lua or Python or whatever else it uses for scripting. You'll be hugely more productive in terms of putting out games, and the learning curve will be substantially less exhausting than learning C++.

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

I agree with Apoch. Too many people around here still think you need C++ to make a game, which is absolutely false. You'll be far more productive if you stick with the language you already know. If you really want to learn a different language, you'll still be more productive with C# or Python (or almost anything else) than with C++. Eventually you'll want to make decisions based on what you want to develop (games or engines or something else) and for what platform. But right now I think the most important thing is to just get something finished. Having even a simple, but finished, game will give a huge boost to your confidence and drive. And it will make it far easier for you to join a team if you ever want to do that.

This topic is closed to new replies.

Advertisement