The Godot 3.1 documentation tells us we should use call_deferred() for :
. disabling collisionshapes (Godot doc)
. switching scenes (Godot doc)
. (probably a bunch of other things)
... because :
. the collision engine might be busy processing things
. the scene code might still be doing stuff
. (???)
So : should we use call_deferred() everywhere instead of just calling the method ? What are the rules ???
Edit : maybe I should rephrase my question a bit ... : When is NOT using call_deferred() going to cause problems in my exported game (for pc) ?