### Godot version

4.0 RC1

### System information

Any

### Issue description

RootMotionView does not process rotations correctly. 

This problem was pointed out in #58061 and #66510 in the past, but was closed with some fixes and a recommendation to solve it by keeping the current rotation on the script side.

However, for RootMotionView, that work around is not available since it cannot detect the firing of the animation and therefore the current rotation cannot be retained.

As a result, if a moving to forward animation is played after a rotation animation, the moving direction will be strange.

https://user-images.githubusercontent.com/61938263/217674951-16148b54-2667-4506-a5df-644d4ad64e5d.mp4


### Steps to reproduce

A moving to forward animation is played after a rotation animation.

### Minimal reproduction project

[rootrot2.zip](https://github.com/godotengine/godot/files/10690681/rootrot2.zip)

type = Animation::TYPE_ANIMATION;
		}
	};
	HashMap<NodePath, TrackCache *> track_cache;
	HashSet<TrackCache *> playing_caches;
	Vector<Node *> playing_audio_stream_players;
	Ref<AnimationNode> root;
	NodePath advance_expression_base_node = NodePath(String("."));
	AnimationProcessCallback process_callback = ANIMATION_PROCESS_IDLE;
	bool active = false;
	NodePath animation_player;
	int audio_max_polyphony = 32;
	AnimationNode::State state;
	bool cache_valid = false;
	void _node_removed(Node *p_node);
	void _setup_animation_player();
	void _animation_player_changed();
	void _clear_caches();
	void _clear_playing_caches();
	void _clear_audio_streams();
	bool _update_caches(AnimationPlayer *player);
	void _process_graph(double p_delta);
	uint64_t setup_pass = 1;
	uint64_t process_pass = 1;
	bool started = true;
	NodePath root_motion_track;