Rotate my player in the direction of my controls

I am building a mario galaxy like game and I can now walk on objects and the player keeps orientated the right way. Now I want my player to face towards the direction that I input with the left stick of my controler, how ever all the things I tried have failed. Here is a video that shows what I mean, in the first part of the video you can see the player moving in the ingame view. The cube sticking out of the player is the players front. In the second part you can see the scene view where a ray represents the direction that my left joystick is pointed towards.

This code is for the orientation of the player

		Vector3 newRight = Vector3.Cross(-normalDir.normalized, player.forward);
		Quaternion newForward = Quaternion.LookRotation(Vector3.Cross(newRight, -normalDir), -normalDir);
		player.rotation = Quaternion.Slerp(player.rotation,newForward, Time.deltaTime * 40);

And I tried to replace the player.forward of the newRight with player.rotation * Controls.LeftStick(1) but that doesn’t work. I have a feeling that I need to do somthing with the forward of the newRight cross but I don’t exactly know what.


Controls.LeftStick(1) is a vector 3 that represents the direction of my left stick.

You should be able to just do something simple since the movement is already done like


I don’t know specifically how you are doing your movement but if you know the point that you are moving towards, try doing what I wrote above and replaced destinationPosition with whatever that point you are moving towards is.