当前位置:   article > 正文

Unity使用图片实现transform.LookAt功能_unity lookat y轴

unity lookat y轴

效果如图 使物体Y轴始终朝向目标物体 用于实现2D版子弹跟踪功能
这里写图片描述

实现方法:

    public GameObject target;

    void Update()
    {
        transform.eulerAngles = LookTargetAngle(transform, target.transform.position);
    }

    Vector3 LookTargetAngle(Transform playerTrans, Vector3 targetPos)
    {
        float dx = targetPos.x - playerTrans.transform.position.x;
        float dy = targetPos.y - playerTrans.transform.position.y;
        float rotationZ = Mathf.Atan2(dy, dx) * 180 / Mathf.PI;
        //得到最终的角度并且确保在 [0, 360) 这个区间内
        rotationZ -= 90;
        //获取增加的角度
        float originRotationZ = playerTrans.eulerAngles.z;
        float addRotationZ = rotationZ - originRotationZ;
        //超过 180 度需要修改为负方向的角度
        if (addRotationZ > 180)
        {
            addRotationZ -= 360;
        }
        //应用旋转
        return new Vector3(0, 0, playerTrans.eulerAngles.z + addRotationZ);
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

借鉴自: http://www.bubuko.com/infodetail-1243233.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/134021
推荐阅读
相关标签
  

闽ICP备14008679号