UE4车辆Spline反向检测 与 AI跟玩家的夹角计算

UE4车辆Spline反向检测 与 AI跟玩家的夹角计算

最近在写汽车游戏,记录一下经验

车辆Spline反向检测

大部分赛车游戏中,都有反向检测的功能。
在UE4中,我的AI车辆是以spline为导航路线的,至于怎么导航,就是遍历spline上的点Location。

反向检测,也是基于spline的(谁叫它弯曲自如呢~)
基于玩家的Location,得到样条线上最近距离某点的Rotation,转换为ForwardVector
再得到玩家的ForwardVector,计算二者的向量点积,最终得到反余弦值(角度为单位)。
既然有可调用的函数,那我就不重复造轮子了…

大致是这样,接下来附上脚本与图解
UE4车辆Spline反向检测 与 AI跟玩家的夹角计算
UE4车辆Spline反向检测 与 AI跟玩家的夹角计算AI跟玩家的夹角计算
UE4车辆Spline反向检测 与 AI跟玩家的夹角计算UE4车辆Spline反向检测 与 AI跟玩家的夹角计算 经过我多次脑补测验,FindLookAtRotation确实是以Actor的绝对方向为起始方向的(就是把Actor拖入场景中最初始的X轴),嗯嗯~ o( ̄▽ ̄)o,应该没错吧!