숙제

Plyaer가 Space키를 누르면 총알이 앞으로 나가도록 구현해보세요.

Time

게임을 실행하는데 있어서 큰 문제점이 있습니다.

그건 바로 게임을  실행하는 컴퓨터에 사양에 따라서 프로그램 실행 속도가 다르다는 점입니다.

Untitled

사양이 좋은 컴퓨터라면 동일한 시간동안 해당 로직을 100번 반복하여 100미터 만큼 이동할것이고

사양이 좋지 않은 컴퓨터라면 동일한 시간동안 10미터 만큼밖에 이동하지 못할것 입니다.

그래서 우리는 컴퓨터 사양과 관계없이 동일하게 실행될수 있도록 해주어야 합니다.

30프레임 게임은 100 * 0.02 = 2 => 2 * 30 = 60

60프레임 게임은 100 * 0.01 = 1 => 1 * 60 = 60

이런식으로 차등 값을 곱해주어 결과값을 마추려고 합니다.

저기서 0.02, 0.01은 1프레임당 걸리는 시간 (DeletaTime) 이라고 합니다.

Delta Time

Deleta Time을 구하기 위해서는 2가지 윈도우 함수를 이용해야 합니다.

QueryPerformanceFrequency 함수는 초당 CPU의 고유 진동수를 가져옵니다.