Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





SetRenderCallback

Iniciado por melkor, 20 de Noviembre de 2006, 07:20:42 PM

« anterior - próximo »

melkor

He estado modificando un poco los ejemplos y me ha surgido una interrogante.
Cuando realizo el blit del fondo fuera de la funcion RenderGraphics obtengo un rendimiento de alrededor 300 fps. Sin embargo cuando tengo en esta funcion el fondo y sprites los fps bajan hasta alrededor de 160.
Alguna explicacion?

TheAzazel

Bienvenido Melkor :)

ponme codigo para concretar pero asi a voz de pronto se me ocurre que esa dif en rendimiento es porque estas dibujando el fondo con tu blit fuera de RenderGraphics() a velocidad logica y normal que asi vaya mas rapido :), digamos que no estas volcando el fondo siempre.

Si no es eso, ponme codigo y te digo vale?

Saludos!

melkor

El codigo es parecido a los ejemplos. Sencillamente paso el fondo hacia fuera de RenderGraphics().
Mis pregunta son:
1- Afecta esto la ejecucion del programa?. Aparentemente logra mas fps y no veo diferencias con respecto a los ejemplos publicados.
2- Lo que esta dentro de la funcion RenderGraphics() se dibuja a velocidad logica o no?

PD: Gracias por contestar tan pronto  :)

TheAzazel

Si, si que afecta... lo que pasa es que a esas velocidades no te das cuenta (entre 160 y 300 habria que tener un cerebro con 4 cores o mas jeje).
Lo que esta dentro de RenderGraphics() que activas con SetRenderCallback() se ejecutara a velocidad del render grafico y lo que tengas en tu bucle dentro de CRM32Pro.Update() sera ejecutado a velocidad logica... luego si pones alli algun blit, este se hara x veces por segundo(tu velocidad logica) en lugar de la grafica y si estuviera funcionando a velocidades de digamos 20-30 fps seguro que verias cosas muy extrañas, parpadeos y demas...

Tengo pendiente un esquema para Sipox y asi documento este aspecto, asi que no te preocupes si tienes mas dudas, tu pregunta pregunta :P






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.