比较好的游戏循环
F = Performance counter frequency
O = Old time
L = Logic fps step
T = Time
D = Frame delta
U = Logic update counter
-------------------------------------------------------------
F = QueryPerformanceFrequency
O = QueryPerformanceCounter
L = 1.0 / 30
while True {
T = QueryPerformanceCounter
D = ( T - O ) / F
static U = 0
U += D
while ( U >= L ) {
U -= L
ProcessLogic(L)
}
DrawFrame(D)
O = T
}
O = Old time
L = Logic fps step
T = Time
D = Frame delta
U = Logic update counter
-------------------------------------------------------------
F = QueryPerformanceFrequency
O = QueryPerformanceCounter
L = 1.0 / 30
while True {
T = QueryPerformanceCounter
D = ( T - O ) / F
static U = 0
U += D
while ( U >= L ) {
U -= L
ProcessLogic(L)
}
DrawFrame(D)
O = T
}
