Is Unity just waste of my time?

I don’t know if this is the right place to post something like this, but here you go anyway.
Recently, I have been having a lot of trouble with Unity, mainly just little things, but there are bugs I have encountered that I have found forum posts about from up to 12 years ago, with no fixes in sight. I feel like without downloading a bunch of plugins to fix Unity’s lackluster Animation tools, Shader-Graph, Terrain system, and egregious load times after changing a scripts, Unity is kind of terrible.

Trying to do something as simple as a Day-Night cycle with a moon light that casts shadows (as seen in countless other games) or just mass placing one specific kind of tree on a terrain rather than all the trees that you have added at once is so tedious. not to mention that with more complex scenes, it gets to the point where you are waiting up to 5 minutes after changing just a couple values in a script. I have seen games made with Unity URP that look great, but with the tools provided by Unity, it just takes forever to do anything. I have been using Unity for 5 years now, and despite all its shortcomings, would love to keep working with it in the future, but I just don’t know if I can anymore.

If anyone from Unity sees this and has any kind of control over updating Unity’s outdated systems, please do something. Otherwise I might just learn Unreal or Godot.

2 Likes

I briefly tried, dabbled or worked with at least 10 other engines before I came across Unity. Unity never was an universally best engine for every project - no. Most of them were usually less buggy, more performant and overall better than Unity – but – but for very specific kind of games they specialized in… and it was FPS for most of the time. Most of these engines died out since but some things haven’t changed:

  1. C/C++ code crashes to desktop. Scripting language code throws errors.
  2. Every engine contains bugs, missing/underdeveloped features and is prone to crashing sometimes. Publicity varies; often limited by social bubbles.
  3. Every engine made editor workflow assumptions that produced significant tradeoffs in what is slow or fast to create. You just don’t know them from afar.
  4. Every engine made technical assumptions that produced significant runtime tradeoffs in their tech making some things work slow and other fast. You just don’t know them from afar.
  5. Productivity is highest on project start, lowest on project finish. One can mitigate, influence slope and plan for but never eliminate this factor.
  6. Unity Editor still makes no assumption on kind of game you are making
  7. FPS Engines of the world (Unreal, CryEngine, etc.) are always ahead rendering/tooling-wise and feature-complete over Unity when it comes to creating FPS games.
  8. It’s easy to code Unity Editor tools.
  9. It’s hard to code Unreal Engine tools.
  10. Intermediate-level programming knowledge lets you ship all kinds and shapes of indie games with Unity.
  11. Intermediate-level programming knowledge lets you ship mostly FPS or TPP games using a FPS Engine.
  12. Epic is amazing at producing jaw-dropping tech demos, by devs with >20 years experience each, which most newbie devs will never be able to reproduce on their own but it won’t hold them a bit from assuming they surely will.

On Decline

Because Blender is winning lately on 3d authoring front one can reasonably suspect that Godot might eventually do the same in engine space and replace Unity in few years time. But this depends not only on what Unity Engine guys will/wont do but also what happens with Godot as well. Blender was open-source for something like 20 years and for most of that time it was, how to say that, “not the Blender we know and love today” - so keep in mind that open source projects can go off rail as well.

TL;DR:

  • Drop everything and switch to Unreal Engine now if you want to work on FPP and TPP AAA Console/PC games.
  • Try out Godot and other engines. Try making a game with Raylib “engine”- without an engine, basically. Let yourself develop your own opinions here.

I’d say unity is “good enough” , if you’re a beginner and you want quick results then yes it will fulfill your needs , you get cross platform builds and a huge community to help you along the way , and those are the biggest advantages imo.

But one bad thing about it is that it scales horribly with big projects , at some point you will hit an inflection point where (either due to asset count or scripts size or just some performance bottleneck) downtime will just become painful and honestly just make you dread opening the editor , and don’t get me started on build times …

I say this as someone who spent 3-ish years on single project (twice), it starts getting noticeably bad usually around the 1 year mark , and it’s just a pain-tolerance test from that point onwards.

My answer is no. Though Unity has it’s moments, I’d say, as a whole, Unity is a very reliable engine. I do not have much trouble with it, as a beginer, and I think it is very simple and easy to use. I know you mentioned that you have been using Unity for 5 years, but if you are open to learning more about it, I have a great Udemy course on Unity 3D. Teacher(s) are wonderful, easy and understandable, and fun. Here is the lnik, if you are intrested:
https://www.udemy.com/course/unitycourse2/?couponCode=ACCAGE0923

I have to agree with @PeasantProductions. Now, one thing I’ve noticed personally is that the newer versions seem worse. But overall Unity is a great engine, with strong capabilities. If they could boost performance a bit that would really help. Don’t give up on Unity yet!

OP, I picked up Unity after making my first game in XNA. It was barely acceptable at that time.

In the space between then and now, Unity has gotten progressively worse. They discarded a perfectly good netplay connectivity solution and replaced it with a sketchy paid server thing that gives Unity Corp another way to steal your money without needing to reach a minimum sales threshold.

They added always-on heuristic tracking that harvests the data from your PLAYER BASE. It can only be disabled if you have a pro subscription. This is totally unacceptable.

Unity’s plugin store has burned me with honeypot add-ons that the third-party developers unilaterally made significant modifications to after release, in ways that made their add-ons useless or otherwise predatory. And Unity Corp has, of course, adopted a caveat emptor policy and never refunded any of these purchases.

This is to speak not at all of the tiny problems that plague the engine, from erroneous importation of asset alignments to a total lack of native nearest-neighbor sprite scaling.

Unity’s greedy business decisions in 2023 forced my hand and I painstakingly converted my entire project to Godot, and it has recieved my scripts happily. Was there a significant amount of translation work? Yes. But it was doable.

There is no reason to use Unity in 2024. It is a sinking ship disaster of a game engine. If you dream of a 3D game, Unreal has you covered. If 2D is more your speed, Godot is the greatest framework I’ve used to date.