Unity3D/2D

Let’s discuss why Unity is such shit.

My views:
Object oriented and hidden customizable things
Complicated UI that doesn’t fit anyones preferences
Code that I don’t trust is doing simplistic things
Really high level code floods the space
Horrible style of code

Don’t shout too loud…you forgot that Basingstoke is being developed in Unity. (Though princec may have something to say about this) ;D

Your post left out a lot of description and had a mixed message. Not sure what you are trying to say.

I’ve been working with Unity3D for the last 3 years or so.

Coming from a Java background and had written my own engine in it, I would agree that some of the things Unity3D does is less than optimal, however this is a problem that plagues most Game Engines anyway.

In the end though, none of it matters. What matters is to get a project out the door in a good time, afterwards you can invest time and energy optimizing the project to run silky smooth. This is something that you will have to do with most projects anyway, regardless which language/library you used to write them.

One thing that is excellent wit Unity is how easy it is to extend it for your own needs. I’ve got no less than 12 different libraries I’ve written to help me with the various projects that I’m working on ranging from one-click UI template creators to mesh optimization tools to automated testing of code. You’ll find that again, this is something you’ll have to do regardless which engine/framework/library you use. One of the more recent fun extensions was a tool which allows me to import LibGDX’s G3DJ and G3DB file formats which are downloaded and displayed at runtime.

Less bashing, more writing!

Sorry, I got ahead of myself: http://www.puppygames.net/

To contribute to this thread: in my limited use of Unity, I didn’t find it too bad. There were some weird quirks that I had to work around, but in the end, it did its job: to increase the speed of game development. I can’t imagine how long it would take me to create an engine that achieved the limited functionality of Unity that I experienced.

[quote]Sorry, I got ahead of myself: http://www.puppygames.net/
[/quote]
I googled the name that you said. It has no hype lol.

[quote]What matters is to get a project out the door in a good time
[/quote]

[quote]regardless which language/library you used to write them.
[/quote]

[quote]how easy it is to extend it for your own needs
[/quote]
You stated that for a rushed project or a project you just want to create without worrying about it being any sort of extendable (and in my case fun to make), you should use Unity. It is extendable for it’s own needs.

I googled the name that you said. It has no hype lol.
[/quote]
It got featured on rock paper shotgun and destructoid, I wouldnt call that “no hype” :o

My experience with unity has been rotten shit so far, I also really dont like the mono develop and many of the internal workings as well as design philosophies of… which is basically an elaborate general purpose game maker for prototyping.
To this date I dont know of many “any” AAA games that run smoothly and use Unity, one big one is Dreamfall Chapters, which runs like ass.

But of course I realize that MOST of the issue are because of who and how these tools are used, not the tools itself. The unity assets store, the easy access… people have no idea how to code, develop, test and publish… having zero idea about low level stuff
it results in the shitfest we call unity games, usually laughed at by the internet specially by Sterling

However, most people of course that I talk to and reveal that I make games or… anything really with Java, you also get that attitude, even in 2016, “everything done in java is shit, slow, resource hog” and so on and so forth.
And after so many years of experience, you know WHY these people say that, and you cant really defend it… you know its not true, but a lot of works desktop apps done with java show some of these behaviors, and its down the fact that people who coded it had no idea what they were doing / gave no shit, or both.

So its just the same deal with Unity.I f you really really understand unity to the core, you probably can make a something beyond a prototype and do it well.
Of course I might argue that you may as well invest time into learning Unreal Engine instead, and that time better spend… but hey~

The reason this type of things happens with these languages and tools more, is because they are easier and they let you get away with more. If you screw around like that and dont care about memory management and clean ups and all that, your C++ app is gonna crash on you, no mercy.

TL;DR its not that unity sucks so infinitely hard, its barrier to entry is low and making games is popular that it invites all these morons and lets them get away with shoddy work. That being said I still hated my time working with unity. maybe if I could use java and eclipse it would be more bearable

Your points have not been overlooked, Cero. I strongly see what you are talking about. In my time developing in Unity, I was never satisfied on the level I was working on. I want to communicate directly with the graphics card, not have some game maker do it for me. Idk what it is doing. Since learning OpenGL/AL, I’ve been happy knowing that all my stuff isn’t shotty. Although, I need to understand OpenAL more becasue I am going to implement a shit ton of sound file formats loader library for Java. Then strongly ask for it to be featured with LWJGL’s repository. There isn’t any such good thing out there in Java for sound.

Kerbal Space Program is made in Unity. Nuff said.

The number of games that run well and are made with unity, that I know of, just raised to 1 x)
Like I said you need people that know what they do.

Hearthstone in fact is done with Unity, obviously not because Unity is so good but because they wanted to have in on phones and tablets immediately.
You might call its AAA but its 2D, a card game… AND it does actually not perform too well for being a freaking card game. But yeah when someone like Blizzard uses it, I wouldnt worry of course

Cities: Skylines

wow
thats actually a pretty intensive game, thats amazing

Unity is amazing. The only thing holding it back really (for me) is that it runs atop Mono.

We’ve had a very useful and instructive time developing Basingstoke in Unity. Myself, I’ve only done a little bit of it, but I’ve been watching development closely (and pseudomanaging it).
I’m terribly disappointed that JavaFX isn’t even remotely able to compete.

Cas :slight_smile:

Well so far my unity experience has been, Crash crash crash. On different phones and targets it doesn’t really work that well for us. And well i can’t fix anything under the hood. After talking to others, this seems to be par for the course.

Otherwise the idea and concepts seem fine. I don’t need high performance i just need it to work. But most importantly i need it to work across targets reasonably flawlessly, since i can’t afford a room full of tech support and people just uninstall and get their refund.

The UI that works across screens and resolutions is fairly good in unity. But you do end up using a lot of 3rd party plugins.

Some games made with Unity

Hearthstone
RUST
Cities: Skylines
Kerbal Space Program
Homeworld Deserts of Kharak
Eve: Valkyrie

I’ve played all but the last two. Cities: Skylines performs better than EA’s newest Sim City (which ran like a dog and played like a dog).

Any game will suck and run like a dog if the developer doesn’t spend the time and resources optimizing the code, regardless what technology is used.

Eve: Valkyrie is awesome. Shows what a rift can be good for.

But they currently use 100% custom and controlled hardware for it. How well does it deploy across targets. Like just different PCs?

[quote]Unity is such shit.
[/quote]
Unity is a tool.
When you have a good tool, the quality of the final product is only limited by the user of the tool.
If a tool can create a single good product, then it means that is a good tool.
And as evidenced earlier in the thread with such games as KSP and Cities: Skylines, Unity is a good tool.

However, like all tools, Unity has a usecase. Different people have different preferences.
Just because your usecase and your preferences do not align with those which Unity was built with in mind, does not make it shit.
It may not be the right tool for you, or for me, or many other people on JGO, but to dismiss it as shit is incredibly naïve.

One thousand, or even one million, bad products does not evidence a bad tool. It simply means that there are one thousand, or one million, people without the knowledge to sufficiently use the tool.

Your points on why it isn’t shit are ineffective. Just because you define it as a good tool based on your own definition doesn’t make it a good tool. We are talking about the functionality for extendability and redundancy.

Find another thread to mislead. It’s actually a good thread here until the last 2 people posting, including this one.

As much as I’d love to hate on Unity, it does what it’s supposed to do, and does it fairly well.

As a fun exercise, let’s apply all of these to Java: