나는 다음 타이머 클래스있다 :타이머 클래스의 속도 요소 설정?
//Create a timer and lock at 60fps
Timer timer(60.0f);
while()
{
float delta;
float velocity = 4.0f;
timer.Update();
delta = timer.GetDelta();
sprite.SetPosition(sprite.GetVector() + Vector2(0.0,velocity * delta));
sprite.Draw();
}
을하지만 큰 문제가있다 : 그리고 나는이처럼
class Timer
{
private:
unsigned int curr,prev;
float factor;
float delta;
public:
Timer(float FrameLockFactor)
{
factor = FrameLockFactor;
}
~Timer()
{
}
void Update()
{
curr = SDL_GetTicks();
delta = (curr - prev) * (1000.f/factor);
prev = curr;
}
float GetDelta()
{
return delta;
}
};
를 사용하여 내 게임에 예상되는 프로그램에 대한 너무 느리게 실행 초당 60 프레임으로 실행되며 프레임 독립적 인 동작을 사용하지 않을 때 동일한 테스트 코드가 원활하게 실행되므로 코드에 문제가있을 수 있습니다.
어떤 도움이 필요합니까?
감사합니다. 몇 가지 연구를 한 후에 프레임 독립적 인 게임에서 고정 된 프레임 속도를 갖는 것이 실제로 더 나은 것으로 나타났습니다. – user1010005