提问者:唠叨忆草丛
2023-12-20 11:47:51答
共1条用户回答ue4检测物体有没有被遮挡可以使用物体的包围盒传入到GPU进行遮挡测试,如果测试发现所有像素都被遮挡,说明这个物体是被遮挡的物体。
可以通过CheckIsTargetInSightCone函数,检测注册了可被视觉感知的目标是否在Cone范围内(实时检测)。如果在扇形范围,则发射一条射线,如射线命中目标,则判定为看到目标。
1、如下图所示,下方的Pawn为AI,上方的Pawn为玩家。
2、在上下差距极大的情况下,下方的AI依旧可以看到玩家,所以我们可以得知玩家只要在NPC的扇形范围内,且从NPC点发射的射线击中玩家,NPC即可看到玩家。
3、由此,UE4中AI视线感知的具体检测范围为下图所示图形的,无限拉高后的几何体:
4、只要玩家出现在这个几何体内,并玩家位置未被物体阻挡,即可被检测到。
文章整理自网络,仅供学习参考,版权归属原作所有
活力忘芒果
2023-12-22 05:30:56相关课程
ONLINE COURSES