我现在 想实现 从a 模型发射一条射线 检测在a 模型前方的 所有能碰撞到的 b 模型,
我是这样写的,但是 没有效果.检测不到
模型上是有碰撞组件的
我自己的问题
我记得api有设置射线的起点和角度的向量,你可以去看看
大佬能否分享一个模型发出射线的完整代码?
没有实现,我是 硬写的 ,没有射线检测
嗯嗯,我试出来了。待会分享给你。
往自己的正前方发射200长度的射线。写的比较简陋。geometry.ray前三参数为发射起点,后三参数为发射方向。
let ray = new geometry.ray(this.node.position.x, this.node.position.y, this.node.position.z,
this.node.forward.x, this.node.forward.y, this.node.forward.z);
if (PhysicsSystem.instance.raycast(ray, 0xffffffff, 200)) {
const r = PhysicsSystem.instance.raycastResults;
console.log(r); // 返回值为检测到的collider的数组
}
用过了感觉还行,准备放在update里面试试性能。
我之前也试成功了,但是 会穿,比如 相同方向的 检测到后面的了
看论坛帖子好像有这个问题。
所以 我就没用,查询要检测的列表,先查a 模型 对着的 方向,然后筛选出最近的距离
搜嘎,学习了。
mark一下,射线的使用