Live data from Hacker News

Why Cities: Skylines 2 performs poorly

blog.paavo.me

311–320 of 593 posts

Re: Why Cities: Skylines 2 performs poorly

#311
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…

I get that you can leave a bunch of things unoptimized, as long as it works fine.

What I don't understand is - how did they not notice that the performances was horrible even high end hardware? How did they not decide to take the time to investigate the performances issues and find the causes we're talking about now?

Re: Why Cities: Skylines 2 performs poorly

#312
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…

You're right that this kind of stuff is sort of par for the course. As in other cases, it's indicative of (IMO) a bad development process that they didn't budget the time to polish before shipping. I save my games budget for stuff that is "done when it's done", not rushed out, mostly out of principle.

If you aggressively min-max development cost & time vs features, there are big external costs in terms of waste (poorly performing software carries an energy and hardware cost,) end-user frustration, stress on workers, etc., which is how I justify voting with my money against such things.

Re: Why Cities: Skylines 2 performs poorly

#313
post #77

It sounds like these issues are relatively fixable. It's a classic victim of the Unity engine's tech debt though. I use Unity myself and they desperately need to decide on how they want people to make video games in their engine. They can't have three rendering pipelines and two ways of adding game logic that have a complicated matrix of interactions and missing features. And not great documentation and a bad bug rep…

Honestly, automatic LOD generation would solve at least some of the performance issues: add the functionality, make it opt-out for those that don't need LODs and enjoy performance improvements in most projects, in addition to some folks getting a simpler workflow (e.g. using auto-generated models instead of having to create your own, which could at the very least have passable quality). Godot has this: https://docs.g…

I'm pretty sure unity already has that.

Re: Why Cities: Skylines 2 performs poorly

#315

Earlier quoted context omitted.

I wonder if releasing a widely anticipated game unfinished is sometimes actually strategically beneficial marketing wise. Perhaps it's a marketing dark pattern? It makes the game stay in people's minds longer because people keep coming back to it asking "is it good yet, have they fixed it yet?". It kind of feels it has worked like that for Cyberpunk. If it's a finished game on launch day people will quickly make up t…

I think Cyberpunk was only able to turn itself around because the studio got so famous with The Witcher and people were willing to give them another chance. If they hadn't been famous already, it'd just have been another rando shitty game on Steam, of which there are thousands... But then there are stories No Man's Sky too, which had a miraculous turnaround as well. So maybe it can happen sometimes...

The anime Cyberpunk: Edgerunners had a significant impact on getting people to look at the game again.

That's a black swan that can't easily be replicated.

Re: Why Cities: Skylines 2 performs poorly

#316

Earlier quoted context omitted.

Not sure what kind of projects you've worked on before, but the ones I've been involved in, you wouldn't spend time optimizing something taking Why on earth would they try to optimize how the UI renders when they're having big issues elsewhere?

Sorry, my initial comment probably come off quite differently. It's not that "using web UI" is the reason why this game has awful performance, that's more like a bellwether for the studio's priorities. It's absolutely not the most important, or even in the top 10 most important problems here, but it shows really illustratively how much they care about making a game which performs in an acceptable way. (which is: not…

>"These things should literally be banned."

Not "metaphorically", but "literally"? Or are you using "literally" in its non-literal sense? And "banned", not "discouraged", or simply "ridiculed" like you're trying to do?

That is literally (to use the term in its literal sense) an extremely brash statement, quite a lot to walk back in reverse into the shrubberies. Have you actually tried to develop a UI in Unity that approaches the quality you can easily (and cheaply and quickly and maintainably) implement in a web browser? And have you ever tried to find someone to hire who was qualified to do that (and then put them to work on the UI instead of the game itself), compared to trying to find someone to hire who can whip out a high quality performant web user interface in a snap, that you can also use on your web site?

Not to mention that you used web tech to call for the literal banning of web tech.

Re: Why Cities: Skylines 2 performs poorly

#317

Earlier quoted context omitted.

Dosent really count as it is not rendering on your machine... ofc its good there.

So? That's even better. Doesn't use my battery life or create noise & heat. Netflix isn't run on my machine either.

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.

Re: Why Cities: Skylines 2 performs poorly

#318
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…

[deleted]

Re: Why Cities: Skylines 2 performs poorly

#319
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…

Do MSFS menus use html as well? Because they are 100% the worst most laggy menus I've ever used.

Re: Why Cities: Skylines 2 performs poorly

#320

Earlier quoted context omitted.

I imagine lots of backend developers never really thought about what it actually takes to build complex, responsive, performant and visually appealing UIs and how the web platform just so happened to have matured for decades to make all of that as painless as possible. Last time I saw that reaction was someone learning about how SpaceX is using it for their flight controls in the Dragon capsule.

> I imagine lots of backend developers never really thought There is a lot of snobbery and arrogance from "pure" backend developers who think JavaScript is some limited toy language. If it is not C++ or Rust or even Go (...assuming they are ok with the GC) then to them it is not worth wasting a milliseconds time on while they go off and fetishise over their copy semantics for their CRUD website backend. Modern JavaSc…

So... Node?
Post reply on HN