Live data from Hacker News

Why Cities: Skylines 2 performs poorly

blog.paavo.me

581–590 of 593 posts

Re: Why Cities: Skylines 2 performs poorly

#581

Unity is a clown engine. I remember some guy benchmarked DOTS, against plain old C++ code with OpenGL, just like your dad used to write, and it was no contest, DOTS couldn't keep up. You have to remember, Unity usually sets the bar very low for themselves, comparing their ancient Mono implementation (they still use the Boehm GC, written in the 1980s!), and when a shiny new performance 'fix' like Burst/DOTS drops, the…

[deleted]

Re: Why Cities: Skylines 2 performs poorly

#582

Earlier quoted context omitted.

EA were the culprit for those delays by forcing bioware to use frostbite. Blame rests solidly with some synergies savings suitsuperman.

Going by the allegations in the reports, it wasn't just frostbite. Bioware chose to dump a lot of time into features like procedural generation (and having to use Frostbite exhasterbated this problem even more).

They defacto threw out a working pipeline for a beloved product for no other reason then cost savings and project expenses justification. It was a disaster that basically destroyed bioware.

The procedural stuff was just a " while we leap of the cliff with no plan" let's make the cost cutters happy who wail because there "abandon working system" for completely different system that's working for a completely different usecase did not work out. Honestly for decisions this clueless and value endangering a whole executive floor should have been let go.

Re: Why Cities: Skylines 2 performs poorly

#583
post #221
post #102

> This mesh of a pile of logs is similarly only used in the shadow rendering pass, and features over 100K vertices. But… why?

Because it is one of the 1,000,000 things to pay attention to in game development. Someone or some software probably just made a mistake in setting up its LOD. Or some dynamic LODding code didn't properly cull the LOD0 mesh. Or that code couldn't be finished in time. Or it was something else. It's completely normal in AAA games to have a few imperfect and in-optimal things. Budgets are always limiting, and developmen…

Nope. 15 years game industry veteran here. Good game engine engineers focus on performance from day one and will analyse everything top to bottom all the time to make sure the game runs smoothly. This is an example of a company that doesn't have competent engine devs working for them.

Re: Why Cities: Skylines 2 performs poorly

#584

Earlier quoted context omitted.

Their worst problem (compared to Epic) is that they don't finish projects. They'll want a new feature, for example new scriptable graphics pipelines which will allow them to modify the core rendering a lot easier. Ok that's fine, but then instead of implementing one they try to implement two, while at the same time completely ignoring the existing pipeline which everyone is currently using. The time to get the new pi…

They hired the TextMesh Pro dude Zoltran, what must have been six or so years ago, with the promise that he'd integrate TextMeshPro into the "new" UI system, which I was looking forward to. I was just recently reading Unity's web page about what's new in the UI system, which announced that TextMesh Pro is finally built in! That took a while. https://unity.com/features/ui-toolkit I really love TextMesh Pro and Zoltran…

Oof, yeah the new UI Toolkit is another example of something that's dragging along. Even in their official docs they still recommend that you use the older system.

Re: Why Cities: Skylines 2 performs poorly

#585
post #534

Earlier quoted context omitted.

> Unity is a clown engine. I remember some guy benchmarked DOTS, against plain old C++ code with OpenGL, just like your dad used to write, and it was no contest, DOTS couldn't keep up. I don't think it is necessarily a fair or useful comparison. I also wrote several toy 3d engine a few years back, and some where performing better than some "commercial" engine, but it is not hard to do when you don't have to handle cr…

I don't think we disagree on much. Unity has failed to stick the landing on most features developed in the past decade. If you make small to medium sized games, and treat it like 2015-era Unity, it still works decently, but progress since then has been slow going. All the new-ish features since then, like Scriptable Render Pipelines, Networking and DOTS had a rough development path, with constant bugs, breakages and…

I completely agree

Re: Why Cities: Skylines 2 performs poorly

#586

Earlier quoted context omitted.

Author here: I never bothered counting the total vertices used per frame because I couldn't figure out an easy way to do it in Renderdoc. However someone on Reddit measured the total vertex count with ReShade and it can apparently reach hundreds of millions and up to 1 billion vertices in closeups in large cities. Edit: Checked the vert & poly counts with Renderdoc. The example scene in the article processes 121 mill…

> The issues are luckily quite easy to fix, both by creating more LOD variants and by improving the culling system How many polygons are there with and without e.g. AutoLOD/InstaLOD? An LLM can probably be trained to simplify meshes and create LOD variants with e.g. UnityMeshSimplifier? Whinarn/UnityMeshSimplifier: https://github.com/Whinarn/UnityMeshSimplifier : > Mesh simplification for Unity. The project is deeply…

What are some other solutions to the cited problems?

Re: Why Cities: Skylines 2 performs poorly

#587
post #72

> A brief glance at the JS bundle reveals that they are using React and bundling using Webpack. While this is something that is guaranteed to make the average native development purist yell at clouds and complain that the darned kids should get off their lawn, When I first heard of this as being a thing, my initial reaction was indeed something like "wait what? HTML and CSS in a desktop PC game driving the UI? No, th…

I would not sing praises for Microsoft Flight Simulator 2020. First, the cockpit displays are rendered at lower framerate, because they take considerable chunk of frame time. Second... It may be fine to render display and UI using js, but if you dig in, you will also find the autopilot there on top of inheritance hell.

In the recent versions of the simulator, most cockpit displays render in less than 1ms per aircraft. Early versions were a mess; the cockpit displays were not only slow, but also entirety fictional. At some point Microsoft hired WorkingTitle, a studio of web developers with no C++ experience, to optimize and improve the cockpit displays. They also wrote that autopilot code you mention. It's not "the autopilot" however; the PID controllers that fly the plane are on C++ side, in JS are huge amounts of input related code to make it behave like a Garmin or Airbus system.

Re: Why Cities: Skylines 2 performs poorly

#588

Earlier quoted context omitted.

> Yes, but better that, in a shared environment with center-wide cooling and such, then each individual household needing to do that on their own. I don't think this actually tracks, unless the heat is actually being put to use. You don't need HVACs when you have the machines distributed.

Why don't you need distributed HVAC? A gaming desktop can use a kilowatt of power, which is what a small space heater might put out. It often will make the room uncomfortably hot. (Anecdotally, this is part of why I switched to Geforce Now, myself. My apartment got incredibly uncomfortable from the heat. It's an older unit with no air conditioning.) In data centers, sometimes (not always, and perhaps not often?) the…

The vast majority of machines are not using a kilowatt and the vast majority of users are not running anything to deal with the heat. You're an outlier here.

Re: Why Cities: Skylines 2 performs poorly

#589

Making a AAA game sounds horrible. And making one in Unity sounds doubly so. All of these things sound like fixable issues. They'll likely be fixed. Hopefully the developers made these oversights because they focused on what makes the game worth fixing to begin with: that the gameplay is fun. In many recent games I feel developers have focused on the wrong things and totally forgot the core, meaning if they fix the b…

> then it just shouldn't ship Part of the problem is that AAA is just (IMO) too big and expensive. Devs might actually have to ship a broken game around holiday time just to get enough sales to survive. And the other extreme can be dangerous too, like how Mass Effect Andromeda's development dragged on forever, and EA let it happen because its such a golden IP. I think the ultimate solution is to just scale down most…

Nobody is forcing anyone to sell unfinished product as if it were finished product at finished product prices.

Re: Why Cities: Skylines 2 performs poorly

#590

Earlier quoted context omitted.

It just uses natural resources to outfit and power data center stuff to create heat and noise somewhere further away. Netflix... is fairly efficient, though being on-demand, perhaps much less so than broadcast TV.

Yes, but better that, in a shared environment with center-wide cooling and such, then each individual household needing to do that on their own. Also way fewer cards needed this way, with users being able to share cards through the day instead of each needing their own. Basically mainframes all over again :)

I should have been more clear in retrospect. There are definitely efficiency advantages to be had from moving things to the cloud, and I'm not against people moving workloads to data centers in general. I meant to point out that moving this particular workload to a data center sort of sweeps it under the rug that Cities: Skylines 2 itself is unacceptably resource-hungry for what it is. It should neither be the home users problem nor nvidias problem that C:S2 was so poorly optimized.
Post reply on HN