首页 > 学院 > 开发设计 > 正文

Unity使用图片实现transform.LookAt功能

2019-11-09 15:50:54
字体:
来源:转载
供稿:网友

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

实现方法:

public Transform _collider_2; void Update() { transform.eulerAngles = LookTargetAngle(transform.position,_collider_2.position); } Vector3 LookTargetAngle(Vector3 playerPos, Vector3 targetPos) { float dx = targetPos.x - playerPos.x; float dy = targetPos.y - playerPos.y; float rotationZ = Mathf.Atan2(dy, dx) * 180 / Mathf.PI; //得到最终的角度并且确保在 [0, 360) 这个区间内 rotationZ -= 90; //获取增加的角度 float originRotationZ = this.transform.eulerAngles.z; float addRotationZ = rotationZ - originRotationZ; //超过 180 度需要修改为负方向的角度 if (addRotationZ > 180) { addRotationZ -= 360; } //应用旋转 return new Vector3(0, 0, this.transform.eulerAngles.z + addRotationZ); }

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


上一篇:transient

下一篇:Notification的基本使用

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表