当前位置:   article > 正文

UE4 Actor平滑移动的实现

UE4 Actor平滑移动的实现

众所周知,SetActorLocationAndRotation及其类似的接口可以设置Actor在游戏中的位置
,但它不是平滑的,而是跳变的,也就是说游戏下一帧会直接把Actor绘制到目标位置,跟瞬移一样。

那么如何要让它平滑地,smoothly移动到目标位置,就像摇臂摄像机一样呢?

实现方法(目前我只知道一种):
一、在 Tick 函数中计算插值并设置。

方法一

1. 实现

在这里插入图片描述

只需要确定几样东西:

  • Tick 函数
  • 待移动的 Actor(上图中的 ActorToTick)
  • 目标变换(上图中的 m_TargetTransform)

2. 原理

FMath::VInterpToFMath::RInterpTo 计算出变换和旋转的插值(一个很小的步进值。对,就算再丝滑它的每次移动也是离散的!不是游戏引擎欺骗了你,而是硅片晶振太无能,只能发出离散的脉冲!)。然后调用刚刚提到的 SetActorLocationAndRotation。每次Tick都会移动一点,在高帧率的条件下看上去就会无比丝滑。

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/662327
推荐阅读
相关标签
  

闽ICP备14008679号