Engine nozzle does not always glow while burning

beik

Member
Messages
24
Reaction score
20

Game Version​

KSA 2026.11.10.5801

Operating System​

Confirmed on Windows and macOS*
(* not supported, I know...)

What Happened​

When a rocket have a CoreServiceModuleA, the engine nozzle does not glow while burning.

​

Reproduction Rate​

Always

Additional Info​

Community/AI notes while exploring this issue:
  1. Engines on vessels with a CoreServiceModuleA service module get a NaN temperature (KSA 2026.11.10.5801)In 5801, every size of the CoreServiceModuleA service module (SetA1SingleA to SetA4QuadA in CoreServiceModuleAGameData.xml) has <Habitat Key="ServiceBay" /> with no StorageVolume. The bay's storage moles, Food(s) and LiOH(s), get ContainerVolume = 0, so Mole.FilledFraction returns 0/0 = NaN.For parts without tanks, such as engines, FxTemperature.UpdateModules averages every mole's FilledFraction on the vessel.

    That puts the NaN into EmissivityFraction. Math.Clamp passes it through and ExponentialMovingAverage never clears it, so the engines' temperature stays NaN for the whole game.

    What it does:
    • Linux (and Windows, presumably): MeshIndirect.frag's inTemperature > 0 and < 0 both fail, so these engines never show heat glow or frost, even during a burn.
    • Apple GPUs (the macOS port): the GPU turns a NaN passed between shader stages into a large positive number, so the engines glow white-hot all the time, firing or not.
    It shows on the starter vehicles in orbit, Gemini7 and Rocket.
  2. Possible fixes:
    Give the ServiceBay habitats a storage volume, or skip containers with zero volume in that average (or guard FilledFraction against zero volume). Separately, the instance's Temperature, TfiThickness and Wetness could be passed flat from MeshIndirect.vert to .frag, since they're the same for the whole part.
i can confirm this on Windows with KSA 2026.11.10.5801.
On a vehicle with a CoreServiceModuleA the engine nozzle does not glow while burning.

On three vehicles with a service module (Test Vehicle 1, Hover 1, Luna 1) in a 500 km orbit, FxTemperatureState.EmissivityFraction of every engine part without its own tank is NaN, both while coasting and during a 10 s full-throttle burn.Tank parts on the same vehicles stay at 0. Each vehicle has two ServiceBay moles with vol=0, mass=0 and FilledFraction=NaN.if I set ContainerVolume = 1 on the zero-volume moles before the first sim step, no part has NaN anymore, on all three vehicles.

It seems like Mole.FilledFraction divides by ContainerVolume, and FxTemperature.UpdateModules averages it over all moles of the vehicle for parts without tanks. Math.Clamp passes NaN through.
 
Upvote 0
Back
Top