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?
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!
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 :)
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