用射线检测方式,主相机想鼠标的位置发送射线
声明变量 private float camLeagth = 100;//射线的长度
//private LayerMask floorMask;//地面的层级数
private int floorMask;
获取地面层级,写在Start方法或Awake方法
floorMask = LayerMask.GetMask("Floor");//Layer的名字、获取层级
射线控制旋转
//从主摄像机的原点向鼠标的位置上发送一条射线
Ray camRay = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
//如果射线检测成功
if(Physics.Raycast(camRay,out hit,camLeagth,floorMask))
{
Debug.Log("射线");
//根据鼠标位置进行转向
Vector3 playerMouse = hit.point - transform.position;//向量计算
rb.MoveRotation(Quaternion.LookRotation(playerMouse));//旋转
//
//transform.LookAt(hit.point);
}