Are Quaternions Local? How to globally interpolate a rotation?

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By dezboyle

I’m trying to create a camera interpolation script that can smooth between multiple camera angles (camera angles are Node3Ds I placed in the scene)

I’m noticing that the rotations for objects NOT IN THE SAME PARENT get seemingly random results.

    temp = Transform;
	temp.basis = new Basis(startPos.Transform.basis.GetRotationQuaternion().Normalized().Slerp(endNode.Basis.GetRotationQuaternion().Normalized(), t));
	Transform = temp;

How can I globally lerp a rotation?

:bust_in_silhouette: Reply From: magicalogic

Already answered here. https://forum.godotengine.org/142366/interpolation-globally-interpolate-different-rotations