What are the downsides to using Unity?

Started by
24 comments, last by Daaark 11 years, 8 months ago
I'm a brand new programmer, I've spent some time in classes learning Java, SQL, PHP, HTML, and VBnet. I've been interested in making video games since I was a wee lad, and after spending about a week or so trollin around the forums I've noticed a lot of recommendations to using Unity for beginner developers. I don't feel confident developing a game standalone at this point, and quite frankly don't know where to start.

My questions:

What are the downsides to using Unity?

What would you recommend as an alternative?

Where should I start?

Edit: I should mention I'm interested in a pretty basic 2d game similar to Pokemon. Not for profit, just for fun to get my feet wet. I'll brainstorm with my buddy when the time comes, but for now we just want to develop something for private use, and to expand our knowledge of programming.

Thanks in advance.
Advertisement
The main downsides are:
* It is a harder to make 2D games with compared to other options such as GameMaker.
* The free version is quite restricted when it comes to "advanced" graphics effects. and the Pro version has a relativly high up-front cost compared to some of the competitors.

Thats about it really,
[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!
* It is a harder to make 2D games with compared to other options such as GameMaker.[/quote]

I agree. Not that it´s harder to learn, but 2D games made with Unity tend to have a worst performance. Unless you do a fake 2D game (with 3D flat geometry). This takes to the point I think is the main downside not only about Unity but with most engines out there: if you want to avoid problems you have to do everything the way the engine want´s you to do, which is a considerable downside in my opinion when you have to solve problems thinking out of the box. I guess you will have to do a pros/cons list and take your priorities in consideration. Of course there are huge advantages such as portability: with a relative low cost you can put your game on android/iOS with Unity.
I don't think it's a fair criticism. It's not meant to be a 2D engine. You don't criticize a hammer for not working like a wrench. You use a wrench instead!

My biggest downsides are crappy 3D asset importing, and the whole way that project files are handled. Unity wants me to work out of a folder they manage, and it becomes a pain in the ass to manage files that are constantly changing, because I can't risk saving the only copy in the Unity folder in case it gets accidentally nuked.

If Unity doesn't like something about one of the FBX files I try to import, it will break the existing imported version of that model instead of just telling me what's wrong with the file so I can fix it. If the FBX just flat out fails, the console tells you nothing.

It's hard to get the models in the correct orientation, and then there doesn't seem to be a way to normalize that rotation so it becomes the identity rotation. This causes me tons of problems.

The direct .blend import just makes a big mess of your data. If you change your blend enough, you just get copies of copies of copies of copies of the mesh data under your object.

I tried talking about some of these issues a few times on the official forums. The result was message deletion, and me being flagged as someone whose posts have to be cleared by a moderator before they go through.
I'm leaning more and more to GameMaker for my 2d development it sounds like. Any other suggestions for an infant developer?
I use Cocos2D-x it's really nice, and simple to work with. I used Unity for a game before that but I didn't really like. IMO it's animation tools don't work too well (maybe I was using them wrong though, it could be my fault). And if you want the advanced graphics features you're gonna have to pay 1500 bucks for the pro version. And an extra 400 for iOS and Android if you want to release on them.
Everybody should only need about 4 things to make games with...Windows, directX, Microsoft visual studio c++ express, and pair of BALLS.
Seriously, Just grow a pair get started. Any one who has told you it will takes you years to make game engine is an idiot.
@Estabon: While you are correct that you can just plunge in with those tools and achieve something, I'd like to point out a few things:

  • If you want to compete with the graphics and physics of high end games, realistically it can take years.
  • While usually more suited to the purpose, a custom-written engine can be less robust.
  • If you are interested in creating gameplay rather than an engine, starting with an engine can be a fiendish waste of time.
  • There's little purpose in attacking someone's tools without justifications. The language/platform/API/tool wars have been raging for many years on many forums without any "winner".
I wouldn't say there's anything "wrong" with Unity. Personally I just didn't like it. And jefferytitan has a good point.

The language/platform/API/tool wars have been raging for many years on many forums without any "winner".

I've been building an engine from scratch with DirectX 11, but I've been doing it as a learning experience. I've been using other engines for my actual game projects. XNA Game Studio is pretty easy to work with, you might want to try the platform game starter kit.
Currently I use Flash, HTML5 and Unity. None of them is my favorite, those are just tools that I choose depending on which platforms I want to target. I have also programmed in Objective C and Java, and created a nice 2D engine for iOS and Android, but I prefer using Unity to gain development speed. And I'm using Flash less to today in favor HTML5 which is more compatible, if Flash "magically" become more compatible in the future I'd return. I try to keep informed about new engines, and each time I find I read all the specs.

This topic is closed to new replies.

Advertisement