- 虚幻版本:4.26.1
总览
下面是拆分理解
第一步 创建射线
1. 设置触发射线按键和定义射线长度
- 获取场景位置节点:获取到FirstPersonCamera(摄像机)当前的位置及射线出发点
- 获取向前向量:获取到向量的方向 (或者说是确定向量方向)
- 通过 * (相乘浮点) 节点,设置射线能检测到的最终位置及射线的长度
- 最后再通过 +(向量相加) 节点,获取到射线的最终位置 (起始点+结束点)
2. 引入射线
- Start:射线起始点
- End:射线终止点
- Trace Channel:射线通道检测,设置检测到的物体中有此属性的物体
- Draw Debug Type:调试射线时,射线显示类型
- Trace Color:射线颜色
- Trace Hit Color:射线检测到物体后呈现的颜色
- Draw Time:射线存在的时间
第二步 制作射线需要的检测属性接口
1. 建议在内容浏览器里创建一个新的文件夹来存放需要检测的物品
2. 创建后在文件夹内空白处右键 创建蓝图接口 再取一个好听的名字,我这里用的是 ‘pickup_interface’
3. 点击新增一个函数,再取一个好听的名字,我这里用的是 ‘pickup’,这里新增的函数是用于判断射线检测后是否需要做出下一步行动的依据的
4. 再在当前目录下创建一个Actor蓝图类(这就是射线需要检测到的Actor)如下图,组件添加就不做赘述了~
5. 考虑到蓝图的可读性,新建一个图表,取一个名字,然后点击 类设置,并且实现刚刚创建的蓝图类接口,记得点编译!
6. 再在这个图表里新建一个在蓝图类接口里新建的函数的节点,如图,特别注意:该节点在 添加事件 下
7. 拾取销毁,添加后再连上一个 销毁Actor 节点即可
8. 双击新建的Actor蓝图类 点击视口 再在右边的细节里进行如图设置
9. 完成!