I have a function that takes the command for an attack, as well as executes the attack. The attack involves player movement.
So here’s my dilemma: Should I call this function in Update() for the input responsiveness, or should I use it in FixedUpdate() for more consistent movement? Is the input responsiveness that Update() offers so negligible that it doesn’t even matter?
Note: This game relies heavily on quick input response time, as it involves fast-paced combat.
If your player movement uses physics (rigidbody attached), then definitely separate your player input to Update() and movement to FixedUpdate() for the best performance.
If there’s no rigidbody invloved do everything in Update().
Calling player input in FixedUpdate() is terrible, it can cause all sort of bugs, and doing physics in Update() is terrible for performance.
A general rule of thumb is if you are affecting a rigidbody through script, use FixedUpdate for everything else use Update.