Unity 3D - Worth Learning?

Started by
6 comments, last by EdenC 12 years, 10 months ago
Hi Guys!

If I am young and have a good grasp on Python (though I'll still be using it) and may move onto C# soon is it worth learning to use Unity? I would like to get into the Games Industry when I am older (preferably Indie :P) and assumed it was something that I shouldn't bother with as I should just focus on programming. However, I saw other people using it (eg, Garry Newmand and the people behind Desktop Dunguons) and am now reconsidering...

What do you guys think about this?

Thanks for any suggestions!

Eden
Advertisement
If you want to make and try to sell your own games then yes, Unity is the perfect tool for the job.
Pros of learning Unity3D:
- It's an excellent, well-designed, and flexible engine that does great 3D action games.
- It doesn't try to be a "drag-and-drop" affair: you still have all the power of C# code at your disposal.
- It's very well supported.
- It's being used across the game industry, for both development and prototyping.
- It works on most major platforms: PC (for free!), consoles, mobile, all at a reasonable price.
- If you want to build games, I strongly suggest Unity. I use it almost exclusively for prototyping, and a few times for production.

Cons of learning Unity3D:
- It's not great at 2D. You can do 2D, but it's harder than it needs to be.
- Asset management isn't perfect: if you work with a large (15+ person team) with Unity it will show some weaknesses when trying to merge everyone's stuff. Note that this is knowledge from version 2.6, it may have improved since then.
- If you want to specialize in the technical implementation of games (like graphics or physics coding), Unity already does that stuff for you. I consider this a plus (because I don't believe game developers should be spending their time writing shit that has already been written 10,000 times before) but some people consider that a negative because they want to learn how to reinvent the wheel.


My recommendation: "Is it worth taking the time to learn 'X'?" Yes, no matter what X is, if you have the time. Learning and trying new things is good. Spend a couple hours on Unity and if it interests you, keep going. If it doesn't interest you, think about why and find something that doesn't have that issue. A while back there was a guy who had a massive thread on this very thing: he probably spent 5+ hours reading and responding in that thread. At the end, I told him "you could have gone through the tutorial on how to build a 3D platformer in Unity in the time it took you to decide whether or not you wanted to try it". The moral of the story is don't overthink it, a few hours of hands-on time will answer more of your questions than any forum thread can.

Check out my new game Smash and Dash at:

http://www.smashanddashgame.com/

JBourrie has a nice list there so I'm not going to write a new one.

I recently started with Unity myself and I very much recommend it. What I really like about Unity is that you can just click the play button and it starts the current scene, allowing for very fast testing. You can also change variables during runtime, which is perfect if you're, for example, tweaking run speed etc.

They also have a site in the StackExchange network. Great if you need help.
"Rodimus and Unity" - My developer journal
I think it is, but first you should probably get used to learning one of the scripting languages. I think C# is the best, but that's because I came from the windows phone 7 environment. I heard JavaScript is easier to learn, any thoughts?

I think it is, but first you should probably get used to learning one of the scripting languages. I think C# is the best, but that's because I came from the windows phone 7 environment. I heard JavaScript is easier to learn, any thoughts?

Personally I avoid JavaScript in Unity like the plague. I find it harder to learn, easier to write bad code, and generally less powerful than using C#. Sure, there are a few places where C# code is slightly more complex than the JS counterparts, but overall I think it's alot better. Plus, C# is more widely adopted as a scripting standard, so moving from Unity to other engines you can take that knowledge with you.

Check out my new game Smash and Dash at:

http://www.smashanddashgame.com/

I just started using unity and I highly recommend it. Before I was using a mash of other libraries to make a game and it's a headache.

Unity is pretty easy to learn and makes things go faster.
Thanks for all your answers! I will go ahead with learning Unity and C# (with Python on the side).

Really appreciate all your time and effort!

Thanks!

This topic is closed to new replies.

Advertisement