Unity实现发射射线,检测到物体,物体销毁
void Update()
{
//当点击鼠标左键时发射一条射线 0是左键 1是右键 2是滚轮
if (Input.GetMouseButton(0))
{
//生成射线
//从主相机上的某一点 发射一条射线 (鼠标位置的那个点)
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
//射线-物理系统
//碰撞
RaycastHit hit;
//碰撞检测
if (Physics.Raycast(ray, out hit))
{
//绘制射线 开始点 结束点 颜色是绿色
Debug.DrawLine(ray.origin, hit.point, Color.green);
//销毁 碰撞信息中碰到的物体
if (hit.collider.gameObject.name == "Plane")//当碰到平面时,不执行。(Plane为地板的名字)
{
return;
}
Destroy(hit.collider.gameObject);
}
}
}
本文介绍如何使用Unity通过鼠标点击发射射线,并检测射线是否击中物体。若射线击中目标,则销毁该物体,但会排除名为“Plane”的地板物体。文中提供了一个具体的Unity脚本示例。
6988

被折叠的 条评论
为什么被折叠?



