void InverseRotateCamera() { Quaternion quat = Quaternion.Inverse(Camera.main.transform.localRotation); quat = quat * initialRotation; // adding is done with multiply transform.localRotation = quat; }