ShootRayA();
ShootRayB();
}
private void ShootRayA()
{
//实例化射线,参数1 开始位置, 参数2 结束位置
Ray ray = new Ray(Vector3.zero, transform.position);
RaycastHit hit;
//发射一个长度为10的射线,如果没有碰撞到物体,则射线不显示,碰撞到目标则显示出一条直线
if (Physics.Raycast(ray, out hit, 10))
{
print("击中目标");
//射线的起点和终点
Debug.DrawLine(ray.origin, hit.point);
//print("起点 " + ray.origin + " 终点 " + ray.GetPoint(10));
}
private void ShootRayB()
{
//实例射线, Input.mousePosition为屏幕坐标
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit222;
if (Physics.Raycast(ray222, out hit))
{
print("击中目标");}
}
//Physics.Raycast(ray, out hit, 10)
//向射线方向发射一条射线,无限长
//该方法来创建一条由摄像机向鼠标当前位置发射的射线,然后使用Physics.Raycast()判断这条射线是否与某游戏对象相交,如果该方法返回true则表示相交,返回false则表示未相交