1. Kerbal Space Program 2
  2. News

Kerbal Space Program 2 News

v0.1.1.0 Patch Notes

[h3]🚀 [/h3]

[h2]Bug Fixes[/h2]

[h3]Flight & Map[/h3]
  • 🚀 Fixed disappearance of orbital trajectories after loading a saved game
  • 🚀 Fixed trajectory intercept patch not showing when captured by a Celestial Body
  • 🚀 Fixed issue where some parts remain connected to/follow vessel after detachment
  • 🚀 Fixed stack decouplers staying connected to the vessel when staged with certain engines that have fairings enabled
  • 🚀 Fixed physics impulse occurring when an engine runs out of fuel
  • 🚀 Fixed dV incorrectly using reinforced joint part connections for fuel flow calculations
  • 🚀 Fix for engine thrust being deflected at too high of a value when a part obstructs an engine’s exhaust (the Kraken Drive bug)
  • 🚀 Fixed loss of vehicle control after undocking
  • 🚀 Fixed bug for probe cores spinning when losing Commnet connection
  • 🚀 Fixed stack decouplers operating as if crossfeed is active even when PAM entry shows crossfeed disabled
  • 🚀 Fixed issue that could cause some environment objects to spawn on top of the active vessel, causing KSC and other objects to move to the origin
  • Fixed orbital velocity being shown when looking at the context menu of a landed vessel in Map view
  • Fixed maneuver burn timer countdown lights activating incorrectly
  • Fixed context menu opening when panning the camera with right mouse button while zoomed in to a celestial body in Map mode
  • Added camera collision with terrain and other colliders while in Flight view
  • Added visual indicator when a marker is hovered and pinned in Map view
  • Fixed offset of radially-attached parts when player switches away from and back to Flight view
  • Fixed the sim-side Center of Mass not being correctly updated by view-side rigidbodies
  • Fixed physics-less parts adding the mass of their host part to Center of Mass calculations
  • Fixed orbit/rigidbody synchronization issues when transitioning to/from physics and on-rails
  • Made debris targetable
  • Fixed dV calculation breaking when new empty stages are added while building a vessel in the VAB
  • Fixed dV amounts appearing on the wrong stage when rearranging stages in the staging stack
  • Fixed outboard elements of compound wings exhibiting reversed control surface reaction to pitch inputs
  • Fixed issue with orbital marker not properly resetting its state when collapsed
  • Fixed orbital markers not being pinnable while manipulating a maneuver and not staying pinned upon maneuver gizmo activation
  • Fixed navball/controls getting stuck after accelerating in timewarp
  • Fixed persistence of active vessel’s timewarp restrictions when returning to KSC from Flight
  • Fixed pitch, yaw, roll, and throttle adjustment being possible while in hibernation mode
  • Fixed planned trajectories changing when switching between Flight view and Map view while engine is firing
  • Fixed dV calculations for stages with multiple engines with different burn durations and propellant rates
  • Fixed resource system processing when request needs are only partially met
  • Improved buoyancy calculations to reduce vessel spinning when splashing down in the ocean
  • Fixed burn duration displays 0 until it is time to start the burn
  • Fixed ETA to maneuver display to show a value for “days”
  • Fixed dV calculations with cross feed in active stage of flying vessel
  • Fixed dV changing to zero when fuel crossfeed is disabled on Docking Ports
  • Fixed a bug where debris trajectories were not immediately shown in Map view
  • Fixed a bug with thrust limiters missing for solid fuel booster engines
  • Removed incorrect fuel transferability for solid fuel parts in the Resource Manager in Flight view
  • Single part vessels now come to a stop on low gravity celestial bodies after a crash
  • Fixed intercept nodes being in wrong positions during timewarp
  • Updated detection arguments for recognizing when an aircraft is landed
  • Fixed an issue with Stability Assist that could cause the loss of Prograde and Retrograde targets on the launchpad
  • Fixed vessel not restoring correctly when reverting to launch from the runway
  • Fixed Chase Camera mode to make selected zoom state persist
  • Fixed part action groups breaking when an invalid action is included
  • Fixed errors on Game Shutdown during TimeWarp
  • Fixed destroy command not destroying vessels in the Tracking Station
  • Fixed some instances where the action group manager would not trigger correctly when additional part actions are added to reserved action groups

[h3]Optimizations[/h3]
  • Optimizations in the engine part module to reduce per-update “not out of fuel” messaging
  • Optimized engine exhaust damage calculations to reduce CPU impact of high engine counts
  • Optimized ThrottleVFXManager to reduce CPU impact of per-frame material property updates
  • Optimizations on EVA code
  • Optimized Center of Thrust and Center of Mass marker code and fixed null shortcut failure states
  • Optimized Kerbal hair compression scripts
  • Optimized loading times in PQS code
  • Optimization of unneeded cameras during loading
  • Optimizations on EVA code
  • Optimized loading times for the main menu
  • Loading optimization for scatter meshes
  • Optimized fuel flow calculations to cut processing by up to 3x and reduce garbage by half
  • Optimized runway light meshes
  • Fixed various texture and mesh memory leaks
  • Updated Training Center to use texture streaming
  • Fixed performance-impacting error state triggered by Kerbin’s clouds after returning to Kerbal Space Center from another celestial body
  • Removed unnecessary log entries to improve performance
  • Removed unnecessary logs when loading a saved game
  • Reduced light source count for multi-nozzle engine parts

[h3]Saving & Loading[/h3]
  • 🚀 Added feature: game autosaves when landing on a celestial body, when entering an SOI, and when entering or exiting an atmosphere
  • 🚀 Fixed an issue that prevented loading of a saved game within an existing Campaign, caused workspaces not to load properly, and prevented saving the game
  • Fixed issue where reloading a save made at KSC results in reloading to active vessel in flight
  • Fixed string in the Save Workspace menu
  • Fixed an issue that could prevent new workspace saves being created when a control part was removed
  • Fixed an issue that can prevent workspace saves from appearing in the load menu

[h3]Parts & Stock Vessels[/h3]
  • 🚀 Fixed R.A.P.I.E.R. engine mode-changing issues
  • 🚀 Set all reinforced joint connections to grandparent
  • 🚀 Improved joint strength for engine plate floating stack attach nodes
  • 🚀 Performed wheel balance pass, including adjustment of all steering and torque curves
  • 🚀 Increased range and brightness for vehicle lights
  • Re-tuned fairing and cargo part mass
  • Tuned mass for structural parts, trusses, nosecones and tail sections
  • Tuned crash tolerance for external Grumble Seat
  • Re-tuned electrical systems, including adjustments to xenon engine electrical draw, xenon engine thrust, reactor fuel burn rate, and RTG lifetime
  • Tuned crash tolerance for landing gear
  • Tuned docking reacquisition ranges
  • Updated Hammer solid fuel booster model to match with other parts in the same size category
  • Adjusted mass for HECS2 probe
  • Updated emissive texture and material for the MK3 “Skybus”
  • Fixed frustum culling for the Bobus mobility enhancer (ladder disappeared when base at edge of screen)
  • Updated geometry and textures for the MK1 “Peregrine”
  • Updates to textures and geometry for the Mk1 “Raven”
  • Fixed texture seams on the R.A.P.I.E.R. engine
  • Fixed RCS not working on the Mk3-5 command pod
  • Minor bug fix on the Kerbal K2 stock vessel to fix issues with decoupling
  • Updated collider for MK1 Tin Can to improve surface attachment behavior for radially-attached parts
  • Updated default orientation for some adapter parts
  • Updated default orientation for small square trusses
  • Updated part placement rules for the HS-500 Heat Shield
  • Updated models for decouplers and separators to match other parts in their size categories
  • Updated geometry for LV-N “NERV” engine
  • Updated team colors masks for the SP-XL "Gigantor" and SP-XXL "Colossus" solar panels
  • Updated team color masks for decouplers
  • Updated team color mask on engine endcaps
  • Added Crew Light module to Skybus cab
  • Fixed the Symmetry mirror direction and rotation for the Grumble Seat
  • Fixed wheel motor resource usage being too low
  • Adjusted default orientation of the MK3 Cargo Ramp
  • Fixed fuel-containing aerodynamic parts (Mk1 Divertless Supersonic Intake, Engine Nacelle, or Engine Precooler) not showing resource slider in the Part Action Manager
  • Tuning changes made to reaction wheels in command modules
  • Adjusted the surface attach node to be on the ventral surface of Mk2 parts
  • Fixed a bug preventing lights from consuming resources
  • Fixed a bug preventing the Blink option from working on lights
  • Fixed a bug with the heading orientation of the Sparrow default craft

[h3]UI/UX[/h3]
  • 🚀 UI performance improvements, including elimination of unnecessary redraw for unchanged bar elements and removal of pixel perfect on main gameplay canvas
  • 🚀 Added a graphical representation for probe cores in Kerbal Flight portraits
  • 🚀 Updated Map iconography, including orbital markers, trajectory colors, maneuver gizmo, focus item, and scrub handle
  • 🚀 Fixed error where clicking on “Exit” in Main Menu produces warning modal that has no accept or cancel buttons
  • 🚀 Fixed graphics quality settings conflicting with one another after resetting settings
  • 🚀 Removed “Apply” button from settings menus, updating settings when changed, settings now apply immediately
  • Fixed parts bin UI height in Staging Stack
  • Performed color and consistency pass on the staging stack and launch button UI
  • UI improvements to avoid overlap of intercept nodes in map view
  • Fixed info panel UI element remaining active when panel is hidden in the Tracking Station
  • Updated UI indicators in some tutorials and first-time user experience information
  • Updated Resource Manager UI to match new resource gauges in Staging Stack
  • Improved ESC menu user experience
  • Fixed dark box getting stuck in the VAB when dragging the dialog window
  • Fixed Kerbal Manager portraits appearing empty
  • Fixed non-stock vessel thumbnails not appearing in launchpad menu
  • Minor updates to improve building selection experience at Kerbal Space Center view
  • Updated the executable icon
  • Updated background image for vessel thumbnails in the launchpad load menu
  • Updated saved vessel thumbnail design
  • Updated styling on the action button inside the Part Action Manager
  • Updated the game credits
  • Updated game splashscreens
  • Updated titles in the Resource Manager
  • Updated dialog windows to accommodate longer text
  • Updated close button on the Part Manager
  • Updated missing text on the launchpad menu
  • Added notification for inactive vessel entering a new SOI
  • Fixed runway 1 and 2 having the same name when hovering over them in the KSC
  • Fixed tooltips for Trigger Action Groups 2-10 being numbered incorrectly within the input settings menu
  • Fixed Center Camera in VAB being in the wrong section in the input settings
  • Added warning when rebinding the same key twice in input settings
  • Fixed difficulty settings being saved from one save file's difficulty settings and being applied to every normal difficulty game save made afterwards
  • Fixed difficulty options showing in the main menu settings
  • Fixed failure of difficulty settings to apply when changed inside a campaign
  • Fixed shader compiler error when switching graphics settings to Low Quality
  • Added laptop audio mode to settings
  • Fixed a bug where the “hold to quickload” setting was not applied correctly
  • Added audio keyboard shortcuts to input settings menu
  • Fixed escape menu freezing vessel controls in last-held state
  • Fixed dialog being non-clickable when recovering a vessel with ESC menu deployed
  • Fixed overlapping text in the flag removal dialog
  • Fixed throttle visuals not updating when throttle adjusted
  • Updated Tracking Station control text
  • Minor updates to global header information
  • Fixed Recover Vessel button in the ESC menu pushing elements off screen
  • Fixed notifications using real world time instead of UT
  • Fixed input lock problems when the ESC menu is visible
  • Removed placeholder image that appears when no parts are favorited
  • Updated Center of Mass, Thrust, and Pressure/Lift indicators in the Vehicle Assembly Building to make them translucent
  • Fixed text overruns in the Training Center
  • Alt+Enter toggles fullscreen
  • Fixed a bug blocking some agency flags from being selected when starting a new game
  • Added additional loading screens
  • Fixed missing physical characteristics in the info panel inside the Tracking Station
  • Fixed issues with the toggles for Map and Tracking Station displaying an incorrect state, or being hidden unintentionally
  • Fixed all CBs are described as "Terrestrial planets" when viewed in the tracking station
  • Updated the text string displayed for engine disabling/enabling in the Part Manager
  • Updated text for lights in the Part Manager

[h3]Construction[/h3]
  • 🚀 Middle mouse button pans in the Z axis when in horizontal workspace mode
  • 🚀 Fixed fairing sides getting deleted after building a procedural fairing and attaching it to a launch assembly
  • 🚀 Fixed errors related to procedural wings preventing launch from VAB
  • 🚀 Fixed issue where pressing M in the VAB opens the Map view
  • Fixed description for Kerbol capture and Kerbosationary orbit trip stages in trip planner
  • Fixed engineer’s report warning vessels cannot generate electricity when vessels are equipped with generators
  • Adjusted default VAB camera angle for horizontal workspace mode
  • Fixed hit area for the launchpad selection button in the VAB
  • Confirmation prompt added when saving over workspaces
  • Fixed assembly anchor error alert persisting onscreen and blocking the user from placing additional parts after the tool is deselected in the VAB
  • Fixed Center of Thrust appearing on the ground of the VAB and not updating when launch assembly is changed
  • Fixed display issues in the text on the orientation cube in the VAB
  • Updated favorites panel information in the Vehicle Assembly Building Favorites category
  • Fixed a bug where surface attach nodes were misaligned on some engine parts

[h3]Environments[/h3]
  • 🚀 Fixed an issue where ground textures were projected onto vehicles at the margins of the KSC grounds
  • 🚀 Fixed Kerbin atmosphere disappearing when viewed from Mun’s SOI
  • 🚀 Fixed collision at bottom of Mohole
  • Fixed terrain decal normals not rendering correctly
  • Reduced scatter meshes floating above terrain
  • Updates to terrain texture matching for some points of interest
  • Updated placement, coloration, and collision for various celestial body landmarks
  • Updated colliders and stretched textures in the parking garage at KSC
  • Scatter adjustments around KSC mountains
  • Updated material on VAB elevators
  • Fixed VAB gantry crane geometry
  • Updated material on VAB doors
  • Adjusted atmosphere settings for main menu background planet
  • Fixed atmosphere not showing in cubemaps under some circumstances
  • Improved atmosphere clipping issues while in Map view
  • Fixed Laythe’s atmosphere rendering incorrectly in Map view
  • Fix a bug that caused lighting to darken on vessels when reentering atmospheres
  • Updated clouds on Jool
  • Minor road line placement adjustments at Kerbal Space Center
  • Fixed collision and updated materials for some points of interest
  • Updated local space shader to restore missing normals in some biomes
  • Updated KSC Training Center roof and Tracking Station dish to fix gaps in geometry
  • Updated colliders around launchpads
  • Updated Kerbin foliage
  • Fixed invisible water above ground to east of KSC lakes
  • Fixed scaled space clouds not displaying in map view
  • Fixed cloud transition dithering issues
  • Improved cloud masking to clean up edges of clouds seen behind vehicle
  • Fixed clouds in Map view not lighting from the correct sun direction for all planets
  • Fixed warnings in cloud-related code
  • Fixed decals sliding and floating on planets
  • Fixed decals getting culled incorrectly after transitioning to low orbit
  • Fixed Laythe's Ocean appearing jagged, pixelated, and jittery after splashing down
  • Fixed ocean shoreline fade out transition at some camera angles
  • Improved LOD transitions for KSC trees
  • Fixed mismatch between high-detail KSC and far-distance LOD material
  • Fixed shadow system to switch to surface shadow mode in KSC view

[h3]EVA[/h3]
  • 🚀 Fixed issue with game saves made after vehicle destruction, in which reloading causes EVA camera mode switch and missing flight information/flight report
  • 🚀 Fixed Kerbals floating when idle while in EVA
  • 🚀 Fixed Kerbals getting stuck when swimming
  • 🚀 Fixed Kerbals getting stuck inside the Mk1 Command Pod when it's on a flat surface other than the launchpad
  • 🚀 Improved Kerbal run/walk animation transitions
  • Fixed Kerbal surface velocity resetting when disabling RCS in EVA mode
  • Updated EVA code to remove frame-related discrepancy between collision result values and character state values
  • Fixed ground and step detection being one frame late for Kerbals while in EVA
  • Fixed EVA tooltip remaining active when the HUD is hidden during gameplay
  • Fixed inability to recover Kerbals when on EVA
  • Fixed a bug preventing EVA jetpack from firing even when it has enough fuel
  • Kerbals now require 1x timewarp when transitioning to EVA
  • Fixed Kerbals being able walk on the sides of objects with collision
  • Fixed climb action not being present for Kelus Long ladder and Bobus Extra Long Telescopic Mobility Enhancer
  • Fixed errors when toggling Jetpack while TimeWarp is active

[h3]FX & Audio[/h3]
  • 🚀 Improved Kerbol flare/bloom effects
  • 🚀 Fixed post process FX lighting transition in low orbit
  • 🚀 Fixed an issue where contrails jump positions during universe reference point transitions
  • Fixed ground blast effect occurring at invalid location for the first few seconds of launch
  • Fixed SFX for Panther in afterburning mode
  • Fixed errors on explosion VFX for hydrogen tanks
  • Fixed VFX not showing on RCS thrusters when precision mode is activated
  • Minor updates for non-explosive water impact VFX
  • Launch VFX updates
  • Updated R.A.P.I.E.R. engine VFX
  • Updated launch smoke material
  • Updated explosion materials
  • Fixed audio timing for several animations
  • Game audio balance pass
  • Fixed a bug where audio was muted when entering numpad values in text entry bars on some menus
  • Added maneuver alert and end sounds
  • Added drag and drop staging sounds
  • Added hydrogen and xenon tank destruction sounds
  • Fixed launchpad music not playing when loading a save

[h3]Tutorials[/h3]
  • 🚀 Fixed issue where flight report appears when the user crashes a vessel inside a tutorial
  • 🚀 Added “Enter” as keyboard input to advance tutorial dialogs
  • 🚀 Fixed a bug that could cause the first-time user experience windows to remain open on the main menu
  • Text adjustments in tutorials
  • Text adjustments to subtitles for video tutorials
  • Fixed soft lock error when restarting Tutorial 2.2
  • Fixed some audio elements on Tutorial 2.4
  • Fixed tooltips not displaying in the Tutorial pause menu during tutorial videos
  • Adding scroll bar indicator to the booster selection step in the “Missing the Ground” tutorial
  • Added fail stage when deleting the engine in the “Space is the Place” tutorial
  • Fixed tutorial orientation video getting stuck when clicking at the end of the video progress bar
  • Fixed subtitles in several languages for the video tutorial on the “Space is the place” tutorial
  • Fixed file paths in tutorial saves
  • Minor gameplay updates to the “Missing the Ground” tutorial
  • Updated text in the VAB First Time User Experience
  • Updated first-time user experience: “Out of Electricity” linked to electricity level instead of production rate
  • Fixed a bug with videos not closing at appropriate times

[h3]Localization[/h3]
  • Fixed title text overlapping at the Training Center when localized
  • Fixed unlocalized tooltips in the Timewarp bar
  • Added missing localization terms for stockvessels
  • Localization reformatted for new game creation
  • Adjustments to text sizing and placement in the launchpad selection in some languages
  • Fixed crash when returning to main menu from VAB
  • Font updates for special characters in certain languages
Added new translations to:
  • KSC Menu
  • Flight HUD
  • VAB
  • Training Center
  • Launchpad Menu
  • Part Manager
  • Tracking Station
  • Settings
  • ESC Menu
  • Dialog Titles
  • Notifications
  • Action Group Manager
  • Campaign Load Screen
  • Part Action Manager
  • Time Warp UI
  • Tutorial Pause
  • Wing Editor
  • Map View
  • Part Info Tooltip
  • Video tutorials
  • Passive notifications
  • Merging Workspace Tutorial

[h2]Known Issues[/h2]
KSC Runway Lights LOD Visual Regression
Description: Players can see runway lights up close, but they are not visible from far away. This was a result of a major optimization fix for the lights.

Status: We are aware of this issue and will be looking to address this in a future patch.

[h2]Submitting Bug Reports and Feedback[/h2]
If you'd like to provide feedback about this build, there are many different ways to do so: Submit Feedback through the Game Launcher Suggest a Change on the KSP Forums Join us on Discord to discuss potential changes

Bug reports should be shared to either: Private Division Customer Support Dedicated Bug Reports on the KSP Subforum

Kerbal Space Program 2 is getting a performance patch this week, plus a fix for the "Kraken drive" bug

You don't need a degree in rocket science to know that Kerbal Space Program 2 didn't exactly launch in the best of states last month. From its astronomically high PC requirements to the numerous bugs identified in our early access review, it's been a rough ride for developers Intercept Games, but hope is on the horizon. In a new development update, creative director Nate Simpson has announced the first major patch will be arriving on Thursday March 16th, primarily focusing on "performance improvements and bug squashing".


Read more

Approaching Patch One



Good afternoon, fellow Kerbonauts!

We continue to make good headway on performance improvements and bug squashing. In fact, we managed to sneak a few additional fixes into the first patch, including a fairly high-impact resource flow optimization. We also fixed the "Kraken drive" bug that created insane reverse thrust when an engine’s nozzle was obstructed - so if you’re working on a Kraken ship, the "unique" physics on which it depends are about to go away forever. We may not in fact have killed the Kraken yet, but we have definitely stubbed its tentacle.

As to the timing of Patch One... QA is thoroughly testing the build right now, and as soon as they give us a thumbs-up, we’ll release it. Right now, our goal is to release that patch next Thursday (March 16th). Provided QA does not uncover any show-stopping bugs over the next few days, that date should hold. If they do run into something unexpected that needs to be fixed, that date will slip. We have done a fair amount of hand-wringing around whether we should announce the target date for this patch when there is a non-zero chance of a delay, but we know this topic is very important to you all, so we're doing our best to keep you all in the loop. We’ve also already completed a nice queue of fixes to go into the second patch, but we’ll talk more about that after we’ve got the first one out the door.

To help tide you over until then, we’ve got a new performance-focused dev blog post from Mortoc, our senior graphics engineer. If you’ve been wondering how we test performance and what we’re doing to improve it, this one’s definitely worth a read.

Finally, I just wanted to give a holler of support to the many people who have undertaken the weekly challenges - last week’s air-launched rocket challenge was a sight to behold, and we’re on the edges of our seats to see what mayhem will take place during this week’s Minmus challenge. If you want to take part (or just bask in the ingenuity and/or madness of our community), check out the Weekly Challenge Discord channel. Our Community Team has also picked out a few choice gems from the last week and added them to a Community Highlights post here. Yes, the shopping cart is in there. The shopping cart that flies.

Developer Insights #18 - Graphics of Early Access KSP2

Hi y'all,

I'm Mortoc, the new graphics programmer on the team. I wanted to take some time to chat about KSP2's graphics and performance-where we are today and what our process is and what the team's goals are.

As many of you have noticed, KSP2's performance isn't amazing at the start of Early Access. In a game as complex as KSP2, there are a dizzying number of areas that we could spend our efforts on and the feedback we're receiving is invaluable for us to focus our time on the issues that affect the players the most.

There are different reasons that the framerate can suffer. If the CPU is asked to do too much during simulation or if the CPU is asked to send too much data to the GPU in an organized fashion, it can make the framerate drop without maxing out the GPU. In most cases the performance in KSP2 is bottlenecked by the GPU, and since I'm a graphics engineer, that's what we're going to investigate in this article. Other engineers are working hard on CPU-facing improvements that you'll see reflected in upcoming updates.

[h3]Deep Dive Warning: Numbers Ahead[/h3]
Before we dig into the numbers, let's start with a primer on what we're looking for here. Game developers tend to think of framerate in terms of milliseconds rather than FPS because it's easier to budget out your frame time that way. Converting from FPS to ms is simple, you just use the formula 1,000 / FPS = ms (for example: 100FPS means it takes 10ms per frame, 1,000 / 100 = 10). This way we're talking about how long a system takes to run directly. We want to measure how many milliseconds each system in the game takes in order to figure out which are taking too much time and dropping the framerate.

We use a tool called RenderDoc for our automated performance testing (among other tools). RenderDoc allows us to get the ground-truth timings for every single command sent to the GPU. Our tooling can then pull out the slowest GPU events for us to investigate.

The machine I'm using here for performance analysis is a laptop with i7-8650U CPU, Mobile Nvidia GTX 1060 6GB GPU and 16GB RAM. It has a slower GPU than our current min spec, so we're not expecting it to make a playable framerate yet.

KSC Landing Screen - 11FPS

In this scene, eight of the ten worst-offenders are related to PQS+. PQS stands for Procedural Quad System and it's the algorithm used to generate planet terrains. KSP2 uses a modified version of PQS from KSP1, generally referred to as PQS+ after all the modifications made to it for KSP2.

That table starts with a draw call to PQSRENDERTEMP, which emits 229,248 vertices. Each other draw call that uses that specific number is doing some work on the PQS mesh. The two draw calls not related to PQS in that table are the ones with a 6 in the name and are related to the cloud system. From this report we can see that the terrain clearly takes the most GPU time in this scene; 29.94ms in total.

Let's try another vantage point.

LKO - Low Graphics - 8FPS

As you travel away from any Celestial Body, we swap out the complex Local shader with a Scaled version that's much more efficient. This scene is from Low Kerbin Orbit, but still close enough to the planet to be using the Local version of the shader. PQS+ is again 8 out of the top 10 worst calls (the line Dispatch(12, 240,1) which is Draw Call #1 is from at the start of the frame when we kick off a compute shader to generate the terrain mesh). That first PQS+ call that took over 10ms is especially dirty.

[h3]Staying Grounded[/h3]
Clearly the PQS System and related shaders are a big performance problem. Let's talk about that, but first dig into some background. A core philosophy for the early part of KSP2's EA cycle is to make sure "it still feels like a KSP game". This means that for each feature we build, we want to start with what KSP1 did and then build a similar system that improves on it.



Following that goal, the team started with the PQS design from KSP1 and added modern graphics features for KSP2's PQS+. As development progressed on KSP2, more and more features were added to PQS+ to keep pushing the artistic envelope.

I might be biased, but from orbit, Kerbol's planets look incredible. Our art team did a fantastic job. From the surface the game is still quite pretty, but the terrain itself just doesn't have the consistent visual quality we want yet. While trying to build that ground up to our visual ambitions, we added more features than the previous PQS architecture can support. It wasn't until the ramp up to EA that it became understood just how far past the limits of the tech we had reached.



[h3]Future Trajectory[/h3]
OK, so, clearly there's a problem, what are we going to do about it? A few things are being done simultaneously. First, we're prioritizing performance optimizations for this system over the next couple of patches. Particularly for when graphics settings are "LOW", we want this system to be eating far less GPU time. This takes two forms: one is pure engineering optimization that doesn't affect final graphics, the other is to disable certain visual features when the graphics are set to "LOW" or "MEDIUM". That first category, engineering-only fixes, was taken about as far as it could be with PQS+. Our short-term plans are currently focused on the second category, turning off features that don't provide enough bang for the buck.



Here's an example of an optimization that affects the visuals. Coming soon in a patch, we will be able to turn off the Anti-Tile system in the terrain. In a bunch of places, the effect is negligible, but you can see the Eve surface has a repetitive texture artifact without it. This visual polish comes at the cost of accessing each texture a few more times, putting strain on the memory bandwidth of the GPU. Disabling this effect can have a small-to-medium sized effect on the framerate, depending on the GPU in question.

Optimizations like that one are happening now and will arrive in the next few updates. The rest of this article deals with systems that are in progress, so we cannot make specific promises about timelines or features until further along in development. But here's where we're heading:

In the medium term, my first major project on this team is to design and build a next-generation terrain system - what we're calling the CBT system (it uses a Concurrent Binary Tree data structure, but it could also stand for Celestial Body Terrain). PQS+ has served us well, but nowadays video cards are much more flexible and there are more modern approaches that will give us better results in terms of performance and visual quality. Exciting new earth-shaking architectures are possible. The next-gen CBT system will be the topic of a future dev blog which will contain a much more detailed look at what we're building. While it's too early to share any details, I will say that I'm excited about the artistic expressiveness, potential terrain variety, and performance of the CBT system.

Another area that will see a major shift in visual quality and performance is bringing the game up to Unity's modern renderer, HDRP (read more about HDRP here if you're curious, it rocks). The main benefits we get from HDRP are a more optimized render engine, which means faster framerates, and a more flexible shader model, which means more effective dev team efforts. It'll also make it easier for visual mods to be built. As a sidenote, despite how much we love you modders, this change will definitely break most visual mods (sorry modders, sometimes we must hurt the ones we love).

These in-progress changes will allow us to build more scientifically grounded yet fantastical worlds for the Kerbals to explore for years to come.

--
Keep up with all things Kerbal Space Program:
KSP Forums KSP Website Facebook Twitter Instagram Intercept Games Discord KSP YouTube

Take-Two confirm layoffs affecting Private Division, despite "exponential growth in recent years"


Grand Theft Auto publisher Take-Two have confirmed layoffs at the company, primarily affecting their corporate and publishing efforts. The news originally spilled yesterday via a Tweet from Bloomberg’s Jason Schreier, who claimed the cuts would impact Private Division - the publishing label behind The Outer Worlds and Kerbal Space Program 2 - and other unnamed divisions. Take-Two later confirmed the news in a statement to PC Gamer, saying the layoffs would affect “corporate operations and label publishing.” Take-Two haven’t clarified the number of employees that have been laid off, but the cuts to development teams would be “minimal.”


Read more