Finding object rotation around local space axis

Godot Version

`4.3

Question

Using rotate() and global_rotate() around a set up_direction, I’ve been able to rotate the player (rigidbody3d) around a local space axis regardless of the other rotations affecting it–sort of how the Local Space Y axis (green) works in the editor. This all works fine, however I’m now trying to get the angle of that rotation and have hit a wall.

A number of potential solutions have given me the angle while the player was not rotated on another axis (showing degrees of rotation around the Y axis) however they all stop being useful when the player goes up a 90 degree incline for instance (and instead show only the global Y axis rotation, which is basically unchanging, even if the player is twisting locally left or right like a spinning top with its bottom now aligned with a wall rather than the floor).

I think my question is essentially: Is there a way to get the angle of rotation around a particular axis?

Thanks

You should read about Euler angles and 3D transforms here:

Then you can just use this Vector3 like this:

transform.basis.x
transform.basis.y
transform.basis.z

I hope that helps in some way.