C# 旋转对象使其面向某一点,但仅在一个轴上旋转

C# 旋转对象使其面向某一点,但仅在一个轴上旋转,c#,unity3d,quaternions,euler-angles,C#,Unity3d,Quaternions,Euler Angles,我有一些对象希望朝碰撞点旋转,但仅在Y轴上旋转。我的意思是: 箭头表示球击中销的方向。 对象绕其Y轴旋转以面向碰撞点。 我想我需要的是将碰撞点的矢量3转换为旋转角度,然后插入对象的Y轴。我不知道该怎么做,也不知道这是否可能。有人能帮我吗?为什么不简单地使用Unity的函数如下: transform.LookAt(new Vector3(Target.position.x, transform.position.y, Target.position.z)); Light.transform.

我有一些对象希望朝碰撞点旋转,但仅在Y轴上旋转。我的意思是:

  • 箭头表示球击中销的方向。
  • 对象绕其Y轴旋转以面向碰撞点。

  • 我想我需要的是将碰撞点的矢量3转换为旋转角度,然后插入对象的Y轴。我不知道该怎么做,也不知道这是否可能。有人能帮我吗?

    为什么不简单地使用Unity的函数如下:

    transform.LookAt(new Vector3(Target.position.x, transform.position.y, Target.position.z));
    

    Light.transform.LookAt(新向量3(0,点.y,0))