Hey I'm using Godot 4 and a CharacterBody2D, setting velocity to a Vector2 and then moving it with move_and_slide() and it works mostly fine if I'm moving on only one axis or if I'm moving NE or SW, but moving NW and SE, I noticed the character jitters - think it only moves on one direction some frames, or it skips some frame.
Is this a bug or is this not how you're supposed to use move_and_slide() in Godot 4?
In order to make sure I wasn't messing up, or it was an animation's fault, I just replicated the scene node with the following code:


extends CharacterBody2D

func _physics_process(_delta):
    set_velocity(Vector2(50, -50))
    move_and_slide()

And this is what it looks like:

Does the difference occur if the vectors' magnitudes (lengths) have the same value?
I.e.,
Vector2(1.0, -1.0).normalized() * 50.0 has the same magnitude as Vector2(50.0, 0.0) and Vector2(0.0, -50.0), but the magnitude of Vector2(50.0, -50.0) is 1.4 times greater.

    DaveTheCoder Indeed it does.

    In my main code I just normalize a direction vector and multiply it by the player speed:

    extends CharacterBody2D
    
    @export var speed : float = 100
    	
    
    func _physics_process(_delta):
    	var input_direction: = Vector2(Input.get_action_strength("right") - Input.get_action_strength("left"), 
    	Input.get_action_strength("down") - Input.get_action_strength("up"))
    		
    	input_direction = input_direction.normalized()
    	
    	velocity= input_direction * speed
    	move_and_slide()

    The movement is arguably less smooth than with the example I provided