射线的意义:射线从原始的“触摸”碰撞检测到物体,开始转向“视野”碰撞,以此检测到某个物体,在这个视野(射线)范围内的物体,我都可以拿到他的碰撞器Collider,以此拿到“看到”的物体;拿到物体碰撞器用结构 RaycastHit 类型的变量存储。这个信息可包含Transform组件,以此可以获得碰撞到的物体的所有属性组件。
RaycastHit 光线投射碰撞
Struct
Structure used to get information back from a raycast.
用来获取从raycast函数中得到的信息反馈的结构。
1.如何创建射线
Ray ray=new Ray(new vector3(0,0,0),new vector3(0,0,0));参数为射线方向,射线发射点
2.投射法线
void Update()
{
if (Input.GetMouseButtonDown(0))//点击鼠标左键
{
Ray rays = Camera.main.ScreenPointToRay(Input.mousePosition);//创建一条射线,参数是摄像机即将发射到的坐标点
RaycastHit info;//声明光线投射碰撞,用来获取从raycast函数中得到的信息反馈的结构。
if (Physics.Raycast(rays, out info))//返回值是bool,射线是否碰到某个碰撞器,并返回输出所碰到的碰撞器信息
{