Unity坦克炮台永远看向鼠标

Unity坦克炮台永远看向鼠标

原理:射线检测

从屏幕上鼠标的位置,垂直向内发射一条射线,得到射线交互点的坐标,炮台一直看向交互点即可。

代码

public GameObject 炮台;
private Ray MouseRay;
private RaycastHit MouseRaycastHit;
void Update()
{
  //1. 从屏幕位置发射射线
   MouseRay = Camera.main.ScreenPointToRay(Input.mousePosition);
  //2. 射线检测
  if (Physics.Raycast(MouseRay, out MouseRaycastHit))
    {
      炮台.transform.LookAt(new Vector3(MouseRaycastHit.point.x, 炮台.transform.position.y, MouseRaycastHit.point.z));
    }
}

你可能感兴趣的:(unity,游戏引擎)