Red de conocimiento informático - Consumibles informáticos - (Programación de juegos C) ¿Cómo limitar con precisión la velocidad de fotogramas?

(Programación de juegos C) ¿Cómo limitar con precisión la velocidad de fotogramas?

Bueno, no hay juego, pero tu pregunta es qué enlace tardó 14 ms al final del ciclo.

Copié tu programa y vi que en realidad es solo 21 fps.

Pero reemplaza

time start = getTickCount();//restablecer la hora de inicio

en lugar de

time start = 33; / /33 es 1000/fps.

Es preciso fps=30.

De todos modos, después del cambio,

int Game_Main(){

static int time start = getTickCount() //Asignar valor cuando se llama a la función. por primera vez.

while(getTickCount()-time start lt; 33)

time start = 33

Devuelve 1; /p>

Hablando de la realidad, hablemos de comer más de 10 MS.

while(gettickcount())-time start

Obviamente, el valor obtenido al llamar a GetTickCount() después de esto es más de 10 ms mayor que timeStart 33.

Tampoco uses división, no es necesario. Después de todo, los fps son 30 o 60, por lo que usar su propia constante es, por supuesto, más rápido.

Por fin. Apoyo lo que dijo un chico antes, no consumas demasiada CPU. En cuanto al método, si no quieres dormir solo, piénsalo más. Para ser honesto, no tengo idea de un bucle de 33 ms. ...