sf.Clock para manejar el tiempo en animacion?

Consulte acerca de programas, técnicas, algoritmos etc.

sf.Clock para manejar el tiempo en animacion?

Notapor shackra » Jue Feb 03, 2011 4:25 am

hola! :D

sucede que estoy atascado con esto de la animación de sprites, no veo como pueda manejar el tiempo que existe entre un frame y otro, en especial cuando el personaje camina. Parece que algunos programadores de por acá usan Timers o algo similar en SDL o similares, yo encontre en PySFML que es posible usar un objeto llamado sf.Clock para manejar el tiempo entre la ultima llamada a Reset (clock.GetElapsedTime()) y es posible resetear el tiempo del objeto de tipo sf.Clock, aun así, quiero escuchar opiniones y/o técnicas de manejo del tiempo orientado a la animacion de sprites, explicados en lenguaje natural o en pseudocódigo de ser posible.

este tema tiene que ver con el sexto ejemplo que esta en el repositorio de ejemplos de PySFML (https://bitbucket.org/shackra/ejemplos-pysfml) ya que aun no sé como lograr una animación menos "redbull" y mas "suave".

gracias! :D
Avatar de Usuario
shackra
 
Mensajes: 308
Registrado: Lun Jun 15, 2009 4:10 pm
Ubicación: Costa Rica

Re: sf.Clock para manejar el tiempo en animacion?

Notapor Juanxo » Jue Feb 03, 2011 12:29 pm

se puede hacer con sf.Clock como dices, pero el programador de SFML ya tuvo esto en cuenta. Si te fijas, en la clase window, tienes un método que es GetElapsedTime que te devuelve el número de segundos que han pasado desde el frame anterior. Este tiempo debes hacerselo llegar a las animaciones.

Por lo general la mayoría de las animaciones se toman a 30 o 60 frames, por lo que deberás cambiar de frame cada 1/30 o 1/60 segundos

Nota: lo de las velocidades de las animaciones es sobretodo en 3D, no se como será en el 2D
Avatar de Usuario
Juanxo
 
Mensajes: 437
Registrado: Sab Ene 31, 2009 2:34 am
Ubicación: Madrid(España)

Re: sf.Clock para manejar el tiempo en animacion?

Notapor shackra » Jue Feb 03, 2011 7:22 pm

ah, ya veo, SFML Rulez! xD
asi que debo de cambiar de frame cada 1/30... segundo? o sea, 0.0333333333333333 segundos existen entre frame y frame, eso claro, suponiendo que el framerate sea de 30 o 60.

vale, comprendo, investigare un poco mas, subo resultados (si son satisfactorios) y posteo por acá :D
Avatar de Usuario
shackra
 
Mensajes: 308
Registrado: Lun Jun 15, 2009 4:10 pm
Ubicación: Costa Rica

Re: sf.Clock para manejar el tiempo en animacion?

Notapor Juanxo » Jue Feb 03, 2011 9:09 pm

es que lo de 30 o 60 es porque en 3D cuando se guarda una animación se guarda una "pose" cada 1/30 segundos o 1/60 segundos, pero no se si en 2D también valdrá este ajuste
Avatar de Usuario
Juanxo
 
Mensajes: 437
Registrado: Sab Ene 31, 2009 2:34 am
Ubicación: Madrid(España)


Volver a General

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados

cron