• Cethin@lemmy.zip
    link
    fedilink
    English
    arrow-up
    3
    ·
    10 hours ago

    I haven’t tried it, but yeah, at small scales KSP (which is just using floating point numbers) is pretty accurate. It’s at large scales where it fucks up, which it does have to deal with too, being a game about traveling between planets.

    I assume it probably would work though. The Apollo computers, as I’m sure you know, weren’t super complex. They basically just assisted the pilot. I’m not exactly sure what math they did, but it probably just had to do with descent rate/time to impact and stuff like that. Again, this is all just guessing. I don’t remember it.

    • bl4ckp1xx13@lemmy.dbzer0.com
      link
      fedilink
      arrow-up
      2
      ·
      10 hours ago

      That makes sense, floating-point precision falls apart with large numbers but is pretty good with small numbers.

      Perhaps there’s a mod that can swap out the position system to use doubles instead of floats? But I’m pretty sure that’s a Unity thing with its Transform positioning system so that’d be quite a challenge to change.

      • Cethin@lemmy.zip
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        3 hours ago

        Yeah, there’s no way to do that. You can use doubles yourself to track things, but the engine is always going to use floats. When you send data to the engine, it has to be in float form.

        IIRC, UE5 actually switched to using doubles for everything. Floating point math is faster to perform, but computers are fast enough now they decided it was worth it. It can now accurately store positions much further away without losing as much precision.

        KSA is also using doubles I think, on their custom engine. They can do a cool thing where they can render multiple vehicle views at once, in totally different locations. KSP couldn’t do this because of floating point error.