Is it worth learning another language/tool for game dev if I already know Unity?

Started by
8 comments, last by Shatley123 9 years, 8 months ago

As you probably guess from the title, i'm up in arms about whether I should learn a new language/tool for game development. You see, i've been using unity for around 2 years, as I started when I was 13 or 14 for hobbyist projects and game jams. I didn't really have to much programming experience before I started, I read like half of a c++ book and attempted my way through various other programming tutorials, but when it comes to general programming I never spent that much time on it I guess, I just learned the stuff I needed to as I went along making games, and so far has worked for me nicely.

But i've been thinking about learning something more challenging then Unity. I did some C++ allegro tutorials a month or two ago, and even made nice breakout game. (lol, I know simple, but it was pretty challenging to make for me). I liked doing that and it wasn't as hard as I expected, but it didn't really seem that practical? You see, as of now i've just been doing hobbyist projects, but I plan on trying to makes some actual money soon. I have a mobile game i'm working on, which I think is very promising, and i'm eventually going to try to sell it on FGL. So my question is, is it worth learning some other method to make games anytime soon, or should I just stick to Unity and improve my skills (which are sort of in the intermediate area now, where I could pretty much make any type of game I want, it just might not be good). And if you think I should learn something else, what should it be? I've though about learning C++ and Cocos2dx, but there doesn't seem like there is much if anything I could do there that I couldn't do with Unity. And I also highly considered trying to make HTML5 games. I feel like that would be nice because I could do all the things I can with Unity (well, probably not 3d), and I could target web if I wanted to. And maybe learn how to make some simple websites in the process. But it also wouldn't be as much of a learning experience if I were to do something with C++. Right now, if I wanted to make any decent game with something other than Unity I could probably only do it with something like Flashpunk or Gamemaker. Which maybe is a bad thing. But then again there has even been large commercial games made with all of those. I hope some of you older developers can give me some advice (i'm 16). I couldn't find any answers here or anywhere else that answer this question.

Advertisement

If you don't feel challenged then find something to learn and do it. You are young, don't waste time wondering exactly how useful it will be in your future. By the time you are 26 or 36 everything you can learn today will be old and outdated. You should be learning how to think like a programer and a game designer or whatever it is that interests you. If you don't know exactly what interests you, or maybe everything does, then you should learn everything you can. Maybe this project will sell well, never hurt anyone to get rich at 16, but you have time.

Want a more specific suggestion? Continue with C++, you already started. Find another engine that uses it and learn that too. So what if you can do it in Unity?

Is it worth learning another language/tool


"Worth" is subjective. Only you can decide. FAQ 66: http://www.sloperama.com/advice/route66.htm

If you want to learn another, nobody else's opinion should deter you from pursuing it.
If you don't want to learn another, that's fine.

-- Tom Sloper -- sloperama.com

Are you primarily a programmer or artist, the industry is so role specific now that you generally are a GUI, Network, Graphics, AI, Scripting programmer or a modeller, animator, level designer, sound engineer etc..

Or if your an Indie a game engine or smaller engine with basic tools, maybe flash art or vector art, probably a 2D platform game. So it's generally very specialised.

I can't see the harm of learning C++ you should be able to learn another language by default if you do learn C++. Maybe do half Unity half C++ a week for 6 months and see how you get on.

I would say don't waste any time, don't hum and haw, if you put in quality time into learning C++ say over a 2 year period then you will have those skills for lie hopefully.


And I also highly considered trying to make HTML5 games. I feel like that would be nice because I could do all the things I can with Unity (well, probably not 3d)

HTML5 has WebGL, which is a 3D API...

My advice: never stop learning new things - everything you learn will come in handy sooner or later. However, if you're just looking for a way to make a game (and money) fast, then Unity is the way to do it.

Yes yes yes.
Learning a new skill is always worth it weather its a new programming language, a new art package or even sheet metal fabrication or joinery. If you've considered it then it means you have a slight interest in doing it...so just do it.

If you want to know what to learn then C++ or HTML5 / Javascript would both be useful for developing games.

If you want a list of languages to learn to make yourself a well rounded programmer then here is my list:

A highish level language C#, Java

A lowish level language C++

A web language Javascript
A back end web language PHP,Ruby on Rails
An assembly language x86
A function language Haskel, Scala, erlang
A domain specific language R

Have a go at each of these. No need to become an expert but learn just enough to be able to hold a technical conversation about each of them.

You might also like to look more into .NET (C#) than just scripting Unity with it.

It might seem a step backwards but many Unity users do not know how to create a console application in C#.

Also, perhaps have a play with the System.Windows.Forms GUI classes provided by the normal Mono or Microsoft implementations of .NET.

Through this you will learn things like the application lifetime (something that is handled for you by Unity).

http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers :)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.

Thanks for all the advice! I wasn't expecting to get so much detailed and useful answers (this is my first time using this, defiantly going to use it more). I think I am going to spend some time on expanding my programming horizon.


as of now i've just been doing hobbyist projects, but I plan on trying to makes some actual money soon. I have a mobile game i'm working on, which I think is very promising, and i'm eventually going to try to sell it on FGL. So my question is, is it worth learning some other method to make games anytime soon, or should I just stick to Unity and improve my skills

begin with the end in mind.

the project determines the tools and skills required.

when the next project requires new skills or tools, its time to do some independent study.

right now, the mobile game sounds like your current project.

follow that project to its logical conclusion (IE publish or scrap).

then determine what your next project ought to be. if it calls for new tools or skills, learn them.

you might want to think ahead, and determine the next project while you finish the mobile game, and start learning any new skills or tools in your spare time. OTOH, such time might be better spent on completing the mobile game.

i keep a file with ideas for about 50 games, and usually have three in some stage of development, know what my next two or three releases will be, and what tools and skills i'll need to learn to complete them. for me, it looks like high performance shader based DX12 skinned mesh animation graphics are the next thing i'll need to learn. unless i can find an engine that can do 100 characters onscreen at once in a FPS/RPG type game (yes - i'm thinking about the pirates game!).

i try to work on my primary project (Caveman 3.0 at the moment). when i get burnt out on working on Caveman, but still have energy to work, i switch to one of the other games like SIMSpace or AIRSHIPS!, or i might do some research on some topic of potential use, such as component entity systems, multi-threading, etc.

and when i need a break from development, i do product evaluations of titles of interest. for example: Caveman is a paleoworld simulator that combines the open world FPS/RPG play found in Skyrim, with the actions and basic needs found in The SIMs, and is driven by random encounters as found in table top dungeons and dragons. so i spend time checking out skyrim and the sims.

and when i've had enough of product evaluations, i play games. stuff like skyrim, the sims, simcity, silent hunter, and total war. unfortunately, evaluating a game uses it up, so i can't really play for fun it if it doesn't have a lot of re-playabaility. for example, the world in skyrim is hard coded. so after playing one of every type of character to test all the questlines, i've used it up and can't just play it for fun.

and when i've pretty much used up all the games i have at the time, i watch stuff on hulu.com, with Faith, Iron Empress, Star Trek, UFO, and Green Acres as favorites. but even then Star Trek is more about "getting back into the swing of things" for working on SIMSpace. SIMSpace (formerly SIMTrek) was my first hit. it was the first star trek starship flight simulator ever made (my 15 minutes of fame <g>).

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php


then determine what your next project ought to be. if it calls for new tools or skills, learn them.
I defiantly agree. It's just I feel a little bit uncomfortable just knowing Unity. Though, I have some future ideas that might fair better on the UE4, which uses C++. So I think what i'm going to do is learn some more C++ with my extra time, so when I use UE4 (from what I've tried of it, it seems really awesome, and packed full of alot more features than vanilla Unity) I can understand all the ideas better.

This topic is closed to new replies.

Advertisement