Jump to content

A Twitter thread on terrain rendering performance.


Chilkoot

Recommended Posts

  On 2/28/2023 at 6:31 PM, Bej Kerman said:

I didn't see anyone complaining too much about the fact Squad relied on 3rd parties for things as basic as dV readouts, so surely something like this is a relatively forgivable sin?

Expand  

Agreed, just venting. Something I feel the need to do more than ever recently.. 

 I expect people who do something for a job to actually be good at it. Especially if said job is the creation of a paid product. 

Link to comment
Share on other sites

  On 2/28/2023 at 6:34 PM, Majorjim! said:

I expect people who do something for a job to actually be good at it

Expand  

And they are - either way, you gotta concede they are doing a million times better than Squad who didn't understand the important of dV until more than half a decade into the development of their rocket science game.

Link to comment
Share on other sites

  On 2/28/2023 at 6:36 PM, Bej Kerman said:

And they are - either way, you gotta concede they are doing a million times better than Squad who didn't understand the important of dV until more than half a decade into the development of their rocket science game.

Expand  

No they fully understood why we wanted it and they said as much. They also made the decision at first that they preferred us to have to make the calculations ourselves. 

  On 2/28/2023 at 6:34 PM, regex said:

Devs in charge of that feature: "Yeah, we know, we have profilers too."

Expand  

Did they actually say this? Did they actually say we are fully aware of this issue with the game? 

Link to comment
Share on other sites

How much of this (terrain rendering) is new code, I wonder, and how much “adopted” from KSP1? Because it was ALWAYS a performance “hack” in KSP1 when launching frame-killing rockets to point the camera at the sky and gain 30 - 50% performance back. 

Link to comment
Share on other sites

  On 2/28/2023 at 7:39 PM, LameLefty said:

How much of this (terrain rendering) is new code, I wonder, and how much “adopted” from KSP1? Because it was ALWAYS a performance “hack” in KSP1 when launching frame-killing rockets to point the camera at the sky and gain 30 - 50% performance back. 

Expand  

Rendering terrain is always going to be expensive. That these two examples of rendering terrain are expensive is not much evidence that they are otherwise related.

Link to comment
Share on other sites

  On 2/28/2023 at 7:47 PM, 0111narwhalz said:

Rendering terrain is always going to be expensive. That these two examples of rendering terrain are expensive is not much evidence that they are otherwise related.

Expand  

Except in as much as both are Unity-based games named “Kerbal Space Program”, and KSP2 is already shown to have a rash of similar issues share with its predecessor, sure … 

Edited by LameLefty
Link to comment
Share on other sites

  On 2/28/2023 at 7:33 PM, Majorjim! said:

Did they actually say this? Did they actually say we are fully aware of this issue with the game? 

Expand  

No, no one said anything that I know of, although I'm positive they know what this issue is and likely how to fix it. It was probably considered for future optimization rather than an on-release thing in order to meet the release deadline. Naturally all this is just me speculating. Trade-offs obviously have to be made at times and a shader that is working (even one that isn't working well) is probably a lesser concern than other bugs given certain circumstances.

Link to comment
Share on other sites

  On 2/28/2023 at 7:39 PM, LameLefty said:

How much of this (terrain rendering) is new code, I wonder, and how much “adopted” from KSP1? Because it was ALWAYS a performance “hack” in KSP1 when launching frame-killing rockets to point the camera at the sky and gain 30 - 50% performance back. 

Expand  

From my 50 hours of gameplay, I am fairly certain that most of the game is KSP 1. It feels exactly like KSP 1 during its early access, with some obvious changes. However the core of the game plays the same. Same exact bugs that are circumvented in the same exact way. This tells me that the code is exactly the same. I dont know anything about making games and code, but I know when I am playing the same game that I played over a decade ago. This tells me that all the work they have been doing has been on something else entirely. What that is I have no idea. 

Link to comment
Share on other sites

  On 2/28/2023 at 7:51 PM, twich22 said:

From my 50 hours of gameplay, I am fairly certain that most of the game is KSP 1. It feels exactly like KSP 1 during its early access, with some obvious changes. However the core of the game plays the same. Same exact bugs that are circumvented in the same exact way. This tells me that the code is exactly the same. I dont know anything about making games and code, but I know when I am playing the same game that I played over a decade ago. This tells me that all the work they have been doing has been on something else entirely. What that is I have no idea. 

Expand  

360_F_349663494_E7AtVWVNqXpo7X9tPHmPdnSR

Link to comment
Share on other sites

they talk about this new terrian generation and what not, with new "LODS" pretty much, and it feels and seems the same as the old one

 

unless they didn't implement the new lod system, and is just using a "hack job" until its done...

 

but to completely render the entire planet regardless if you can actually see the other side is just ...

 

not among us.

Link to comment
Share on other sites

The discussion about KSP 1 design choices is pretty OT here. So I'll leave it at one point, because I thought the response to this one was honestly pretty rude:

  On 2/28/2023 at 7:51 PM, twich22 said:

From my 50 hours of gameplay, I am fairly certain that most of the game is KSP 1. It feels exactly like KSP 1 during its early access, with some obvious changes. However the core of the game plays the same. Same exact bugs that are circumvented in the same exact way. This tells me that the code is exactly the same. I dont know anything about making games and code, but I know when I am playing the same game that I played over a decade ago. This tells me that all the work they have been doing has been on something else entirely. What that is I have no idea. 

Expand  

This statement is wrong, but it is a very reasonable assumption to make for someone with little background of internal game working to do, and just posting a dismissive picture in response isn't ok.

Why do I think it is a reasonable assumption? We have a load of KSP 1 bugs return in pretty much the same form, basically from noodly rockets to buggy wheels. However, the reason is not that the devs copied the KSP 1 code base over, but that they use a slightly newer version of the same 3rd party game engine (Unity) which has a physics model, which both KSP 1 and KSP 2 use (for local physics, not for the orbital mechanics). While the team should have the level of access to modify that underlying engine code, it doesn't seem like they did so too any significant extent so far.

 

Now on the terrain rendering: I also expect the devs are able to use a profiler. But I have been surprised what kind of performance screw-ups just went by solid dev teams. The thing is if you work a long time on the same code at some point you have a hard time seeing it's flaw. I'd also point out that this remark from the devs (launch notes) points to other sources:
 

  Quote

As we push processes out of the main thread and continue to improve the efficiency of our physics, resource flow, VFX, and graphics systems, framerates should improve for all players.

Expand  

This wouldn't help much with the one complex shader. But to be completely fair, at least in the 2nd post on the system requirements also points toward the terrain render system as the culprit, so I would hope that the responsible part of the team is well aware :) 

  Quote

The current terrain implementation meets our main goal of displaying multiple octaves of detail at all altitudes, and across multiple biome types. We are now hard at work on a deep overhaul of this system that will not only further improve terrain fidelity and variety, but that will do so more efficiently.

Expand  

If anything this statement here is more worrying (emphasis mine):
 

  Quote

Fuel flow/Resource system optimization. Some of you may have noticed that adding a high number of engines noticeably impacts framerate. This has to do with CPU-intensive fuel flow and Delta-V update calculations that are exacerbated when multiple engines are pulling from a common fuel source. The current system is both working and stable, but there is clearly room for performance improvement. We are re-evaluating this system to improve its scalability.

Expand  

Simple because as we have seen the fuel source system is one of the most buggy parts of the game with crossfeed rules being disobeyed when certain parts like landing legs are attached to the tank. But then, who knows? Maybe this bug got added in a last minute attempt to improve this system. Not sure any of the pre-launch streamers had that bug and I don't have the time to check.

Link to comment
Share on other sites

  On 2/28/2023 at 7:51 PM, twich22 said:

From my 50 hours of gameplay, I am fairly certain that most of the game is KSP 1. It feels exactly like KSP 1 during its early access, with some obvious changes. However the core of the game plays the same. Same exact bugs that are circumvented in the same exact way. This tells me that the code is exactly the same. I dont know anything about making games and code, but I know when I am playing the same game that I played over a decade ago. This tells me that all the work they have been doing has been on something else entirely. What that is I have no idea. 

Expand  

There is strong evidence to the contrary.  See some discussion here: https://old.reddit.com/r/KerbalSpaceProgram/comments/11b8s6f/i_looked_into_ksp2_code_here_is_what_ive_found/j9wm3dd/

  On 2/28/2023 at 9:19 PM, MarcAbaddon said:

they use a slightly newer version of the same 3rd party game engine (Unity) which has a physics model, which both KSP 1 and KSP 2 use

Expand  

One of the guys that went through the code with DotPeek (see above link) noted that the rigid-body physics engine in KSP 2 appears to be custom from the ground up, and it does not use the Unity physics engine (which KSP 1 did use).  I haven't looked myself, just repeating his conclusions.

Edited by Chilkoot
Link to comment
Share on other sites

  On 2/28/2023 at 7:36 PM, Bej Kerman said:

So their decision making is worse than I suspected...

In what universe would having to do hand calculations benefit the gameplay?

Expand  

In some games it makes sense, but DC calculations are  indeed a bit out of reach for anyone that is not an engineer.

  On 3/1/2023 at 1:07 AM, Chilkoot said:

There is strong evidence to the contrary.  See some discussion here: https://old.reddit.com/r/KerbalSpaceProgram/comments/11b8s6f/i_looked_into_ksp2_code_here_is_what_ive_found/j9wm3dd/

One of the guys that went through the code with DotPeek (see above link) noted that the rigid-body physics engine in KSP 2 appears to be custom from the ground up, and it does not use the Unity physics engine (which KSP 1 did use).  I haven't looked myself, just repeating his conclusions.

Expand  

That in fact is a good sign, because they can  optmize something they control completely

  On 2/28/2023 at 7:47 PM, 0111narwhalz said:

Rendering terrain is always going to be expensive. That these two examples of rendering terrain are expensive is not much evidence that they are otherwise related.

Expand  

True, but  there is no excuse for KSP 2  have far worse performance rendering terrain than DCS (That has far far more details and far more complex simulation being performed against terrain.

Link to comment
Share on other sites

  On 2/28/2023 at 7:50 PM, regex said:

No, no one said anything that I know of, although I'm positive they know what this issue is and likely how to fix it. It was probably considered for future optimization rather than an on-release thing in order to meet the release deadline. Naturally all this is just me speculating. Trade-offs obviously have to be made at times and a shader that is working (even one that isn't working well) is probably a lesser concern than other bugs given certain circumstances.

Expand  

Most likely scenario. Probably something which just came with the fiasco after the T2 acquisition. No time to rework stupid methods, must make it presentable. Not the best decision still, I would argue, but after all this time they had to show something I guess. Too much pressure.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...