Hello everyone.
I'm trying to learn the basics and right now I'm playing with raycasting. In documentation it's said that you should only use raycasting in _physics_process because space might be locked at other time. That's all good and fine but then I look at Godot 3D Navmesh Demo and I see them using raycasting in the _input which feels like a good time to do that because you do have to use raycast for getting user input. Even in documentation itself they use raycasting in the _input saying afterwards that during _input(), the space may be locked, so in practice this query should be run in _physics_process().
Do I really have to move all the raycasting into _physics_process?
What the best way to do that? Global bools to toggle raycasting in _physics_process?
Is it safe to call RayCast nodes outside of _physics_process?