I have personally been responsible for optimizing unity games you haven't heard issues like this about ;)
This write-up really points the finger at not solving occlusion culling or having good LOD discipline.
Give a person a dedicated optimization mandate and you can avoid most of this. One of the first things I do when I'm profiling is to sort assets by tris count and scan for excess. I wonder if they had somebody go through and strategically disable shadowcasting on things like those teeth? I am guessing that they made optimization "everybody's responsibility" but nobody had it as their only responsibility.
Yeah I mean regardless of any of Unity’s limitations, this is entirely upon the developer.
However, I also find the suggestion that because there are other high profile examples of unity projects with performance issues, it must be a problem with unity.
You don’t hear that about Unreal Engine, despite the fact that there are poorly optimized UE games.
There is definitely a lot of public bias amongst the two engines. UE4 couldn't solve this problem either (UE5 might, but Nanite isn't quite as "it just works" as you'd expect as of 5.1).
It definiitely has much to do with how UE's PR constantly shows off and ships new and exciting features that blend in the engine. Meanwhile, Unity has been criticized for some 6+ years minimum for its package management and lack of cohesion.
Occlusion culling and LOD should be handled by the engine, not the game logic, so the write-up really points to the problem being Unity's new and very incomplete rendering pipeline for ECS.
There are tons of answers to this! I'm going to say that in projects I've worked on, LODs have been hand made about 60% of the time.
There are tools for creating automatic LODs that come with their own pro's and con's. A bad LOD chain can express itself as really obvious pop-in while you're playing the game. There's also these things called imposters that are basically flipbook images of an object from multiple angles that can be used in place of the true 3d geometry at a distance. Those are created automatically. They tend to be like 4 triangles but can eat more vram because of the flipbook sizes.
Unreal engine has nanite, which is a really fancy way to side step needing LOD chains with something akin to tessellation, as I understand it. Tech like that is likely the future, but it is not accurate to describe it as the "way most games are made today"
This write-up really points the finger at not solving occlusion culling or having good LOD discipline.
Give a person a dedicated optimization mandate and you can avoid most of this. One of the first things I do when I'm profiling is to sort assets by tris count and scan for excess. I wonder if they had somebody go through and strategically disable shadowcasting on things like those teeth? I am guessing that they made optimization "everybody's responsibility" but nobody had it as their only responsibility.