您当前的位置: 首页 >  动画

开发游戏的老王

暂无认证

  • 1浏览

    0关注

    803博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

[玩转UE5动画系统>基础篇] 之 什么是射线检测 续 HitResult参数小结

开发游戏的老王 发布时间:2021-06-06 20:30:42 ,浏览量:1

好消息!好消息!上次更新还是UE4时代,转眼间UE5已经君临天下。正如老王预言的那样,UE5是UE4的大版本升级,所以这个[玩转UE4动画系统]可以直接无缝更名为[玩转UE5动画系统]啦!

前言

在[玩转UE4动画系统>基础篇] 之 什么是射线检测一文中已经介绍了射线检测的重要性并简单介绍了Trace节点(函数)常用的返回值。本文将逐个解释一下HitResult结构体的各个分量的意义。

HitResult

在这里插入图片描述

Blocking Hit

是否发生了碰撞

Initial Overlap

是否发生了初始重叠,所谓初始重叠指的就是射线在初始位置,是否已经发生了碰撞

当Initial Overlap为true时,也就意味着Distance的值为零。

在这里插入图片描述 如果碰撞形状非Line,那么如下图所示

在这里插入图片描述

在ALS V4的CapsuleHasRoomCheck方法中,作者就借助这个值来判断一个空间是否有足够的位置容纳角色的胶囊体。

Time

碰撞时间,值的范围是(0~1),当发生了初始重叠时 Time为0,当未发生碰撞时 Time为1(即无穷远)

Distance

射线起点到碰撞点之间的距离。注意:当Distance为0时可能有两种情况,发生初始重叠或未发生碰撞,需要通过Initial Overlap来判断。

Location、Impact Point、Normal、Impact Normal

Location和Impact Point

前者是碰撞时射线形状的位置,后者是实际碰撞点的位置

在这里插入图片描述

Normal和Impact Normal

Impact Normal就是被碰撞表面的法线方向

很多时候Normal就等于Impact Normal,我实验了几种情况没有发现它们的区别,此处如有错误敬请指正!

Phys Mat

被射线碰撞对象的物理材质

Hit Actor

被射线碰撞的Actor

Hit Component

被射线碰撞的Primitive Component

Hit Bone Name

如果被射线碰撞对象是一个Skeletal Mesh,那么将会返回被碰撞的骨头名称

Hit Item

被碰撞的Primitive索引

Element Index

如果一个Primitive是由多个部分组成的,那么这里返回被碰撞元素的索引

Face Index

面索引

Trace Start、Trace End

射线的起点和终点

在这里插入图片描述

关注
打赏
1656935939
查看更多评论
立即登录/注册

微信扫码登录

0.0379s