Unity2D关于物体旋转方向(起始方向向右)
程序员文章站
2024-03-16 17:49:46
...
private void RotateIntoMoveDirection()
{
// 1
Vector2 newDirection = new Vector2(_hor , _ver);
// 2
float x = newDirection.x;
float y = newDirection.y;
float rotationAngle = Mathf.Atan2(y, x) * 180 / Mathf.PI;
// 3
GameObject sprite = gameObject;
sprite.transform.rotation = Quaternion.AngleAxis(rotationAngle, Vector3.forward);
}
newDirection为物体移动的方向,该方向也可通过目标点减起始点获得。
通过方向的x y值进行计算得到角度rotationAngle,然后通过Quaternion.AngleAxis方法来改变物体的rotation的值即可。
注意:物体起始方向为右,根据此来调节图片的方向
上一篇: cocos-2d 游戏开发
下一篇: 项目中前后端的md5加密