我试图动画图像。如何为图像制作动画并调整动画速度?
每个我的整个渲染场景时,其周期动画中的下一个图像的时间。
我需要放慢/速度下来/到任意值。
什么是这样做的通常的程序是什么?
这是我到目前为止已经试过:
FrameTime.h
static class FrameTime
{
public:
FrameTime();
static int current;
static int max;
static int step;
static void Update();
};
FrameTime.cpp
int FrameTime::current = 0;
int FrameTime::max = 100;
int FrameTime::step = 1;
void FrameTime::Update()
{
if(current >= max)
{
current = 0;
}
else
{
current += step;
}
}
更新功能如何调用:
// Game Render function starts
...
FrameTime::Update();
// Game Render function ends
我如何工作了,如果我的球员动画应该更新:
void PlayerStateFlying::Update()
{
if(FrameTime::current % 2)
{
current = sequence[ index ];
if(index == (sequenceAmount - 1))
{
index = 0;
}
else
{
index++;
}
}
}
的问题是,上面的代码不会让我有float精度速度。
感谢的人,我试着这样做,但现在你把它如此简单..嘘Yaka酒店空间Shann ..让我implementareeno – Jimmyt1988
@詹姆斯动画效果由增量时间是迄今为止最简单的方法。你希望你的动画独立于框架,因为模型/纹理的FPS将不同于游戏。所以你可以说,我有10张图片,让我们一次玩1秒。使用增量时间,就像显示带有增量时间的计数器的帧一样简单。 – 2014-01-09 01:46:32
这是否意味着我会在某些情况下跳过一些动画序列? – Jimmyt1988