Soy nuevo en C Sharp, y estoy escribiendo un juego con XNA Framework. Creé un proyecto que es una versión muy modificada del kit de inicio XNA "Plataforma".XNA Platformer (2D) - Frameraterate/FPS fluctuations
Estoy viendo (aparentemente) fluctuaciones aleatorias con la velocidad de fotogramas. Algunas veces funcionará a 60 FPS todo el tiempo, a veces comenzará a 60 FPS luego caerá a 49-52, y otras veces bajará a 49-52 inmediatamente. Usar Fraps para mostrar la velocidad de fotogramas (no grabar video en el disco).
La naturaleza única de este juego requiere que funcione a 60 FPS consistentemente.
Parece que alguna condición de carrera o factor aleatorio está causando una diferencia entre ejecuciones individuales del ejecutable. Numerosas reconstrucciones no hacen la diferencia.
Esta fluctuación se produce tanto en mi escritorio y portátiles con exactamente la misma frecuencia, así que no es un problema w/hardware, antivirus, etc.
He buscado sobre cómo bloquear una tasa de fotogramas en XNA, y mi código parece estar haciendo mucho de lo que necesita hacer, incluido un intento de fijar a 60 FPS (usando IsFixedTimeStep, SynchronizeWithVerticalRetrace).
El juego es absolutamente capaz de 60 FPS de principio a fin, lo veo todo el tiempo. Cuando se está ejecutando a 60 FPS no grava CPU, RAM o cualquier otro recurso por lo que puedo decir.
¿Alguien más ha experimentado esto?
Gracias, - S
¿Puede reunir más datos utilizando la configuración Frametimes de FRAPS? Además: si está utilizando V-sync, y suelta un cuadro, su velocidad de fotogramas se reducirá a la mitad de manera instantánea. Si lo hace durante una fracción de segundo, la velocidad de fotogramas reportada para ese segundo será de entre 30 y 60 FPS. –
"La naturaleza única de este juego requiere que funcione a 60 FPS constantemente". De Verdad? Tengo curiosidad por esta razón. – Justin