Theta, Phi to Quaternion rotation Unity3D C#

Theta, Phi to Quaternion rotation Unity3D C#

我正在尝试沿给定角度的方向旋转对象,我有 Theta 和 Phi 值。 这在使用

之类的东西时如何应用
Vector3 rayRotate = new Vector3 (theta, phi, 0);
beamContainer.transform.rotation = Quaternion.Euler(rayRotate);

theta 和 phi 应该直接用于 X/Y 还是我需要 运行 一个 Sin/Cos 公式?

我一直在尝试各种组合和变体,但我无法得到 beamContainer 指向该方向并使其与应指向该方向的对象对齐,

我能够解决我的问题并通过以下方式将 beamContainer 旋转到所需的方向:

beamContainer.transform.rotation = Quaternion.Euler(-90 + phi, -theta, 0f);