正确旋转2D世界空间中的3D对象

时间:2016-06-12 04:33:57

标签: unity3d

enter image description here

我试图将3D物体放入2D世界。

就像左图所示,我写了一个旋转' Pillar'跟踪' LookAt'在2D相机模式下。

[ExecuteInEditMode]
public class test : MonoBehaviour
{
    public Transform RotRoot = null;
    public Transform LookAt = null;

    void Update()
    {

        Vector2 pillarPos = new Vector2(this.transform.localPosition.x, this.transform.localPosition.y);
        Vector2 lookAtPos = new Vector2(LookAt.localPosition.x, LookAt.localPosition.y);
        Vector2 dir = lookAtPos - pillarPos;
        float angle = Vector2.Angle(dir, Vector2.down);

        RotRoot.localEulerAngles = new Vector3(0.0f, angle, 0.0f);
        Debug.DrawLine(this.transform.position, LookAt.position, Color.red);

    }

但是,当我旋转一个支柱'对于X轴,如上图所示,问题已经出现。

我希望与Pillar' Pillar'和' Pillar-LookAt'连接线,如下图所示。

帮帮我。

0 个答案:

没有答案