gpt4 book ai didi

c++ - Sprite 表动画期间闪烁

转载 作者:太空宇宙 更新时间:2023-11-04 11:33:06 26 4
gpt4 key购买 nike

我正在为我的 Sprite 制作动画,看起来像这样:

enter image description here

我创建了一个变量,每次按 W 时它都会递增 64,因为每个 Sprite 都是 64 x 64,它可以工作但是有闪烁,这是我的代码。顺便说一句,它在draw方法中。

if (sf::Keyboard::isKeyPressed(sf::Keyboard::W)){
animator += 64;
}
else{
animator = 0;
}


if (animator > 512){
animator = 0;
}
playerSprite.setTextureRect(sf::IntRect(0, animator, 64, 64));
window.draw(playerSprite);

如有任何帮助,我们将不胜感激。

最佳答案

你不应该以这种方式实现帧的变化:这里的变化取决于帧率而不是耗时。

您应该有一个计时器并在每个 [FRAME_DELAY] 时间更改帧。例如,每 200 毫秒。

关于c++ - Sprite 表动画期间闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23849368/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com