void FixedUpdate()
{
if (Input.GetMouseButton(0))
{
Vector3 aimPos = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, Camera.main.transform.position.y));//目标位置 .
Vector3 dir = (aimPos - transform.position).normalized; //方向.
Quaternion targetRotation = Quaternion.LookRotation(dir, Vector3.up);
Quaternion newRotation = Quaternion.Lerp(m_rigid.rotation, targetRotation, rotateSpeed * Time.deltaTime);
m_rigid.MoveRotation(newRotation);
if (Vector3.Distance(aimPos, transform.position) > 0.1f)
{
m_rigid.MovePosition(dir * Time.fixedDeltaTime * moveSpeed + transform.position);
}
}
}
Unity3D之物体跟随鼠标移动和旋转
最新推荐文章于 2024-07-17 19:50:36 发布