Unity Satisfaction: Am I the only one dissatisfied?

I’ve been working with Unity for a long time now, but the last two years have been a big headache.

Trying to work alone in a Indie Game Development has been almost impossible. My game has less than 150mb, and still I get Errors in XCODE like “Loading.PreloadManager (35): EXC_RESOURCE (RESOURCE_TYPE_MEMORY: high watermark memory limit exceeded) (limit=1450 MB)”

Before updating my Unity, everything was working fine. Update to 2022.2.3f and problems arise.
I go back to my previous working backup (using 2021.3.19f) and everything is still broken.
I have no idea how can I move back to a working project, and it breaks without any changes made to it.
It worked 5 minutes ago!

Unity Documentation is quite poorly. Anyone who tried to read the “Player” Docs Section will know what I mean. 70% of the Options in the project settings are NOT documented, nor detailed on what their functions are.

Some bugs come out of nowhere.
Imagine I have a Bike:
I try to change the Height of the Bike bench, and what happens is the Wheels get bigger.
I try to change the color of my Bike, and now it’s upside down.
Well, that’s not right, let’s Undo these; Command+Z. Now my Bike is gone, nowhere to be seen. Unity stole it.

It makes me wonder… Are all Game Engines like that?
At least in my experience as a programmer, I have never had this kind of Issues.

Unity’s plan seems to be making a Tool which can do anything, but fails to do the most simple basic things.
With news of the future business plans of Unity, things seem even more frustrating. So many employees were let go, and this in my view is not good at all.
Apparently a good part of Unity’s profits come from the Asset Store, but also many of these assets are a one way to get your Project destroyed.
There are no checks for the code’s security, nor if it follows best practices.You buy an asset? Well, you won’t know it’s quality until you open it’s code and see how terrible it is. By this point, getting a refund is almost impossible.

Many Assets are now having one year only updates. So for me who bought one asset, and sees one month later this asset has been updated and to get this new update, you have to rebuy it? Nahhhh

I was also extremely optimistic with ECS. When I saw the first demo of it around 2015, I though: This is the future. 8 years later and it still seems it’s on an Alpha. Still no information about what to do with ALL my assets I have bought before in the Store, which are not ECS based. Guess that’s money thrown in the trash.

I want to know what others think. It’s a big decision to continue trying to build experience and expertise in Unity, when from the Business perspective, there are so many questions unanswered.
One year later of development, things just break without any apparent reason is in my view a long lost time.

Just use version control and your issue will be resolved.

Also cleanup library directory, specially when you downgrade, but also upgrade.

I tend to keep copy of a project before upgrading. So I can always switch rapidly between, previous and new version after the upgrade, just in case.

Assuming assets are maintained to work with version of Unity that you are using, nothing changes there. You can use them as normal. If they scripted based, most of assets will be using MonoBehaviour. That is up to a assets vendors of course. And MB stays. So nothing changes in that regards to DOTS. And btw, DOTS is released now as 1.0.

It is up to vendors of the assets. You can buy cheaply assets, but assets devs need also make sense to make, or maintain them. So it makes sense to pay price for updated version. Consider yourself in the position, where you make asset, sell it cheaply and customers asking you to maintain and develop indefinatelly. Would you do that?

You probably leave in the bubble, where you believe, things should be one time paid and get updates forever. But that exact issue lead to the subscription model. Many software are either on subscription model, with constant updates. Or per specific version, but you can use it forever, however no update after typically a year of release. With some exceptions.

This… sounds like BS honestly. Or embellishing. Or you’re using some messed up editor tool. There’s no way changing the colour on a material would mess up an objects orientation unless you’d coded something monstrously broken.

Also, are you even using version control?

There are a million reasons why this could come up including your own code due to recursive method calls or memory leaks you’ve introduced into the codebase. Use the Memory Graph Debugger in Xcode to identify areas of high memory usage.

As the project grows and Unity advances, the memory requirements slowly creep up. If you’re on an older device, perhaps you’re hitting those memory limits now. Try closing some background apps, updating Xcode and if all else fails, consider upgrading your device. But do delete the Library folder before doing all this as Antypodish suggested.

If you’d use source control, this would be a non-issue. Also, if downgrading doesn’t help, then Unity upgrade is unlikely to be the issue. Do clear that Library folder though, perhaps that’ll help.

As far as I can tell, everything from Player and Project settings is sufficiently documented.

Undo can be very fiddly, that’s true, but these mostly sound like user error. Perhaps you hit Command+X by mistake. And changing color does not impact the transform. If changing color actually rotates/displaces transforms, report a bug to Unity.

If you don’t use source control and blame the engine for user created errors then all engines are like that.

Unity has over 5k employees, which is still too many sales people and middle management for my liking.

No, Asset Store is very tiny part of their total income.

That’s why you read reviews both positive and negative and look for ones that don’t just praise the product. It’s a bit of a shot in the dark but assets are pretty cheap all things considered.

Because Asset development is not sustainable otherwise unless you’re in like top 5% of assets. It’s also entirely up the asset developer.

I’m not sure what you’re saying here. ECS is not replacing GameObjects/Monobehaviour, it doesn’t impact any of your previously bought assets, you can keep using them like usual.

Which questions are unanswered?

Things break for a reason, you can figure out why via standard debugging processes. So it’s either user error or engine bug in which case your report a bug with a minimal reproduction project so Unity can fix it.

Or you’ve been VERY lucky, and are an exception to the rule.

I’ve seen far worse than this guy is describing, in my own projects when “updating Unity”, and far, far worse in those of bigger scales worked on by teams.

Each update is a risk of fixing a few things and breaking many more, and ever more interesting and new responses to changes, too.

There is, for example, no reliable version of Unity for Apple Silicon, at all. Not even remotely close to stable. You don’t know how bad things can be until they are.

I use a M1 for Development, and I can testify.
It gets messy really fast and easy.

I’ve deleted all my Libraries and cache. Only thing that changed in the end was, I’ve updated my MacOS.
That alone shouldn’t be enough to break my project, but it did. :eyes:

Thanks for this… there’s that little point update nagging me on Mac, for the last week or so… and I’ve been tempted. But you’ve reminded me why I’m trepidatious. Will hold off until the corresponding Unity “update” matches the MacOS version. Being on 2022.LTS version dot 1 is ok at the moment, and scared to goto dot 2 or dot 3… wanna get some work done first and attack and “update” when I’m somewhat beyond doing anything else.

In all senses, I sympathise. We seem to be on similar journeys. All the best to you!

I’ve started using Unity around the 5.61f.
I remember, it was one of the first Windows versions. Until then, Unity was available only on Mac.

Times have changed.

Choice of computer has nothing to do with it. I have an M1 too and none of what you’re describing here has been happening to me nor would I expect it to as things only become sloppy if you approach things in a sloppy manner.

Whilst version control provides rollbacks, it doesn’t account for the problems. Which are real.

Glad you’re not having them.

Can’t remember in my whole life to have had a windows update breaking a software.
The heck is Apple doing?

The fact you said “imagine” here makes it seem like this is a hypothetical you’re clearly exaggerating for effect.

Clearly not using any audio software. Windows updates break almost every single DAW, every single time, in a multitude of ways.

Further, this isn’t on Apple. They’ve been telegraphing what they’re doing with both security and timing sensitive systems for nearly a decade. Yamaha and Unity are two outliers that seem to want to pretend that these things aren’t happening, or that it’s on Apple to fix their systems when they conflict with these endeavours. It’s not.

Another piece of software Window Update breaks all the time is Windows itself.

I can. Windows 10 commited suicide on my machine couple of times by updating itself. The most amusing scenario was when an update broke windows calcualtor and it wouldn’t launch.

However, that’s a bit offtopic, no?

Kind of on topic: Norton’s Ghost is to Windows Users as Version Control is to Software Developers :wink:

Regarding “Loading.PreloadManager (35): EXC_RESOURCE (RESOURCE_TYPE_MEMORY: high watermark memory limit exceeded)”, I have finally resolved the problem.

It seems Unity generates the files below if the mobile URP config is not available.

  • Assets/URPDefaultResources/Default_Forward_Renderer.asset
  • Assets/URPDefaultResources/Mobile.asset

Unfortunately, the above config is too high for my iPhone. I have just created a new blank project and copied the default mobile configurations from the new project to the existing project locations below.

  • Assets/URPDefaultResources/Settings2/Mobile_Renderer.asset
  • Assets/URPDefaultResources/Settings2/Mobile_RPAsset.asset
  1. In “Mobile_RPAsset.asset” file, if the renderer list is empty after copying, choose “Mobile_Renderer” manually.
  2. Go to menu “Edit” > “Project Settings” > “Quality” > “Mobile”, and change the “Render Pipeline Asset” from “Mobile” to “Mobile_RPAsset”.
  3. Rebuild, and it should work.