[UE4]GetWorld()->GetDeltaSeconds()方法

void AAvatar::Yaw(float amount)
{
    if (Controller && amount)
    {
        // AddControllerYawInput()函数用于改变控制器的Yaw变量,即增加纵向轴旋转量。
        // GetWorld()函数取得世界指针UWorld*,通过世界指针调用GetDeltaSeconds()取得每帧耗费的时间。
        // 之所以要乘以每帧耗费的时间,是为了使得每一【秒】都增加200.0f * amount的改变量。
        // 如果不乘以每帧耗费的时间,那么每一【帧】都会增加200.0f * amount的改变量。(注意由于每秒渲染量不同,所以每秒的帧数不一定是固定的。)
        // 通过帧数来控制变量,那么游戏看起来就不那么流畅。试想,机子性能好的时候游戏角色动作就迅速,机子性能差的时候游戏角色动作就慢,这对于玩家公平吗?
        AddControllerYawInput(200.f * amount * GetWorld()->GetDeltaSeconds());
    }
}

 

posted on 2018-03-26 14:51  一粒沙  阅读(4309)  评论(0编辑  收藏  举报