Live data from Hacker News

What Unity Is Getting Wrong

garry.tv

71–80 of 306 posts

Re: What Unity Is Getting Wrong

#71
post #20

Earlier quoted context omitted.

There is another factor to consider which is that the 2017 gold rush when Valve opened up Steam to anyone with $100 is absolutely over. The median game launching on Steam now will make only $1,400 (5 year gross revenue): https://twitter.com/greyalien/status/1227557601786912769?lan... Unity's business model was selling $100 worth of starter assets to wannabe-developers then taking a 30% cut on that. Now, browse gamede…

Gold rush has been over every couple of years, when developers flock to a new platform, dumping a couple of remakes during the first waves. Game development is like any other art form, be prepared to jump from failure to failure and one day one might hit gold, or maybe not.

Lots of Unity games are what Flash games used to be as well, promotional games, advergames and other things that are part of a larger campaign or system that isn't one off. Most people making money with Unity are building games for shows, promotions, events and others that are marketing mostly.

You can still make money with indie games but more in terms of certain categories or niches.

To make it in games today it is quantity of quality, both are needed.

Unity is making that harder by doing breaking changes waaayy too often. They are making it harder for the smaller/medium game studios with all this technical debt offloaded.

Re: What Unity Is Getting Wrong

#72
post #17

Earlier quoted context omitted.

Looking at their market share across Switch games, first party support from Google, Nintendo and Microsoft for their gaming platforms and AR/VR devices, ongoing Hollywood adoption, I would say they are doing quite alright from business point of view.

I have no doubt they are doing "quite alright" but I always look at these types of posts as the canary in the coal mine. There are far fewer developers than players and the players don't care about Unity vs Unreal vs Insert other engine here . If developers are frustrated then it will take a long time to migrate off but once someone is burned they aren't often willing to take a chance on the same thing for their next…

I usually only see these type comments in forums like HN.

In game development communities, it is another universe.

Re: What Unity Is Getting Wrong

#73
post #45

Earlier quoted context omitted.

I'm not so sure that would have been impossible. Nothing fundamental seems to prevent the compiler+runtime from: - laying out instances of the same Component next to each other in memory - Burst.Compiling their Update() functions - adding backwards compatible APIs to do parallel loops etc over multiple components Given the culture of constant rewrites Unity has displayed (and I'm sure they have lots of techdebt to ma…

> Nothing fundamental seems to prevent the compiler+runtime from: - laying out instances of the same Component next to each other in memory - Burst.Compiling their Update() functions - adding backwards compatible APIs to do parallel loops etc over multiple components And if those Update functions reference other objects and do something with them? If the engine automatically realigns the order in which Update is call…

Of course you'd still have restrictions on the code if you want it magically optimized, just as with DOTS.

But you're right to be skeptical, this is not something I've thought through that thoroughly :)

Re: What Unity Is Getting Wrong

#74
post #27

Earlier quoted context omitted.

And yet Unreal has the nascent real-time in-camera VFX market completely locked in.

Agreed, I think Unreal Engine is much more suitable for VFX than Unity. Most people here on hn probably already seen the Mandalorian use of the engine. I have also recently watched this video [0] of an independent film maker using some of it's features for virtual production which I found truly mind boggling. [0] https://youtu.be/cOI-cjdULmk

Clicked expecting a Matt Workman video...was not disappointed :D

Re: What Unity Is Getting Wrong

#75
post #28

I support CI for my team's Unity builds. I don't know much about the engine itself, but I can tell you that the tooling for automating Unity builds really sucks. I had a long list of reasons why, but my impulse blocker cut me out. Oh well. Here's a much smaller list: - You have to jump through many hoops to run Unity in headless mode - I cannot separate out build processes into discrete stages - Linux version is behi…

> - License server is unreliable. It always goes down with a 500 error, every day for most of the evening (California time). That means I cannot easily elastically scale build servers.

This should be flooding their support center with open tickets. Completely unacceptable. The worst part is that it shouldn't be hard to fix. The longer it goes on the more the Unity folks look like clowns.

Re: What Unity Is Getting Wrong

#76
post #36

There are two main reasons to avoid Unity: 1) As your project grows, it becomes unmanageable because the resource pipeline is hidden and you want to be able to improve that. 2) Skin mesh animation, which is the main point of using Unity in the first place, uses a compute shader which means they send all meshes from the CPU to the GPU every frame! On the other hand Unreal takes 5 hours to compile and even Godot takes…

The problem with writing your own engine is cross platform support. The grunt work that goes into that is something only a big studio can afford.

That said It has been done, see Heaps[0].

[0]https://heaps.io

Re: What Unity Is Getting Wrong

#77

100% agree with this. Everything they’ve done in the last 5 years I’ve been using Unity has felt half baked. You’ll try any number of the things they’ve released recently (networking, 2d animation, and vector graphics are the ones that come to mind for me) and they’ll work fine for their demo case but then fall apart with so many cases that you need to actually ship a game. I think one of the bigger problems with the…

The message about eating their own dog food is spot on. I will say, though, that their new asset addressable system works very well and is quite a sane design. One of the better new things.

Re: What Unity Is Getting Wrong

#78
post #35

In my brief time trying out Unity (as a non-game-developer) I found the programming paradigm very frustrating. I wanted a more object oriented approach. But what I found was to get things to work in a performant way, you'd end up with very leaky abstractions. At the core, my thinking is it has to do with everyting coming down to handling on a per "tick" basis rather than as an event. Maybe I just did things wrong...…

You can use the built-in event system to achieve what you were trying to do. Its really straighforward to use

Re: What Unity Is Getting Wrong

#79
post #36

There are two main reasons to avoid Unity: 1) As your project grows, it becomes unmanageable because the resource pipeline is hidden and you want to be able to improve that. 2) Skin mesh animation, which is the main point of using Unity in the first place, uses a compute shader which means they send all meshes from the CPU to the GPU every frame! On the other hand Unreal takes 5 hours to compile and even Godot takes…

Why would using a compute shader mean mesh data is sent every frame? Compute skinning is mostly the same as doing it in the vertex shader but you don't have to skin again for the different passes, instead you store to some GPU memory (so up the tradeoff is extra memory bandwidth on the GPU). No extra CPU/GPU traffic should be used here.

Re: What Unity Is Getting Wrong

#80
post #36

There are two main reasons to avoid Unity: 1) As your project grows, it becomes unmanageable because the resource pipeline is hidden and you want to be able to improve that. 2) Skin mesh animation, which is the main point of using Unity in the first place, uses a compute shader which means they send all meshes from the CPU to the GPU every frame! On the other hand Unreal takes 5 hours to compile and even Godot takes…

The problem with writing your own engine is cross platform support. The grunt work that goes into that is something only a big studio can afford. That said It has been done, see Heaps[0]. [0] https://heaps.io

If you take a long-term perspective; console and mobile are going away, you can't have a computer that you cannot produce on.

That leaves Windows on Intel and Linux on ARM. That is two platforms to support, not that hard really!

And really long-term Windows on Intel is going to go away too because of energy prices.

Another thing to consider is that CPUs and GPUs are not improving that much, so the engine you build now will probably last very long, if it's made well probably forever!

Post reply on HN