[原创]unity3D学习【功能实现】之二:图片的旋转/2d物体的旋转

来源:互联网 发布:消防大数据平台 编辑:程序博客网 时间:2024/05/16 15:13
目标:鼠标点击后,图片朝向鼠标点击的地方
涉及到:Mathf.Atan2(反正是计算角度的),rotation,Quaternion.Slerp
思路:下面的图片是x轴对称的,所以这个旋转也是以图片箭头开始旋转的。(为什么?可能跟Atan2有关),根据鼠标点击的位置与图片的位置计算旋转角度,在Quaternion.Slerp进行旋转.


步骤:1,private Vector3moveDirection;//向量,
                                public float turnSpeed;//旋转速度
2:void Update()下面
          moveDirection=newPos-transform.position;
         moveDirection.z=0;//这个2d下,可能写不写无所谓
         moveDirection.Normalize();
3:float target = Mathf.Atan2(moveDirection.y,moveDirection.x)*Mathf.Rad2Deg;
4:transform.rotation=Quaternion.Slerp(transform.rotation,Quaternion.Euler(0,0,target),turnSpeed*Time.deltaTime);
结束:3,4都是update下面,这样接上
【功能实现】之一的教程,可以鼠标点击物体移动又能头部朝着点的方向前进了


0 0