From what I remember reading, Godot is multithreaded in a few key areas. Sound, Rendering, and Physics (I believe) are all multithreaded through the various “Servers” they use. This is why you can only use the direct physics state in _physics_process
, modify and play sounds through AudioStreamPlayer nodes (or the AudioServer directly), and so on.
From a performance perspective, using Kinematic bodies should be okay, as the physics should run on its own thread. I do not know if networking is on its own thread or not though.
That said, if you are really curious, you probably should ask someone like Reduz, who would have a much better idea on how multi threading workings in Godot :smile: