Project

General

Profile

Bug #26155

A large number of kerbals greatly affects FPS.

Added by Nicky21 over 3 years ago. Updated about 3 years ago.

Status:
Confirmed
Severity:
Low
Assignee:
-
Category:
Gameplay
Target version:
-
Start date:
09/30/2020
% Done:

10%

Version:
Platform:
Windows
Expansion:
Breaking Ground, Core Game, Making History
Language:
English (US)
Mod Related:
No
Votes:
Arrow u r green
Arrow d r red

Description

As the title says, having a lot of kerbals on a ships greatly affects your fps. Not in the good way. I only noticed this because I have a fairly weak system.

I have tested this on a ship with 100 or so parts with 2 kerbals. I get 16 fps. The same ship stuffed with 21 kerbals: 8fps; barely playable. I am using lots of mods.

I have tested this on a different ship. It's definitely the number of kerbals that are generating the low fps.

I have confirmed this with other users on a facebook forum, one of them playing without any mods. He obviously has a different computer, i assume more powerful. He tried launching a large number of kerbals and got unplayable fps. He gave up and launched the same ship with just a few kerbals, and the game was totally fine.

Displaying or not the kerbal faces in the bottom right corner has no impact on the fps. I assume the game is rendering all of them anyway, thus consuming processing power.

History

#1 Updated by Anonymous over 3 years ago

  • Status changed from New to Confirmed
  • % Done changed from 0 to 10

#2 Updated by gotmachine over 3 years ago

Profiler confirmation :

Likely caused by KSP.UI.Screens.Flight.KerbalPortrait.OnEnable() starting the "static effect" coroutine for all portraits (one per kerbal) when re-enabling the UI gameobjects on returning from map view, regardless of the visibility of the portrait.
Since the normal "portrait is becoming visible" chain of code was never triggered for all the hidden portraits, the (quite CPU intensive) "static effect" coroutines never end for them.
If you cycle through every portrait, the normal portrait rendering code is triggered and the coroutines are stopped, restoring performance.

Also available in: Atom PDF