trsh said:
I think the only way of solving this is cheating? Updating only what' seen by player(s)?
Why do you think this is “cheating?” Video games are more akin to magic shows than full simulations. Trickery is a normal part of optimization. ?
My approach to this would be to have objects internal to the starship in an entirely different physics space. Nothing outside the ship can really affect them, right? Why would you need to simulate them at the world level? Never mind the CPU usage required to sync them up with the parent every frame, the floating point inaccuracies as the starship got farther from the origin would start to add up (unless you're using fixed point for positioning) and there would be all kinds of problems resulting from that.
Simulate them at their own, local level, where the only things they need to interact with are each other and the hull of the starship. And definitely don't even bother updating them if they aren't in the player's field of view, unless they're actually moving within their physics space.