Flujos creativos prácticos
Duración de fotogramas de sprites: comprueba el GIF guardado

Cuatro fotogramas no tienen por qué durar lo mismo. Una linterna que parpadea debería permanecer abierta más tiempo que a medio cerrar; intervalos iguales pueden convertir un parpadeo breve en un pulso lento.
Creamos en Ciyo una linterna ficticia de cuatro fotogramas y comprobamos el GIF descargado. Los estados abierto, medio, cerrado y medio duran 600, 100, 200 y 100 milisegundos. El ciclo completo dura un segundo. Es un ejemplo de temporización generado por código, no una comparación de modelos de vídeo.
Separa el orden de los fotogramas de su duración
Anota juntos el orden y las duraciones. Una tira PNG puede mostrar visualmente el orden, pero no demuestra cuánto tiempo aparecerá cada fotograma. Conserva una lista de tiempos junto al dibujo al pasar de una herramienta a otra.
Nuestra secuencia repite intencionadamente el estado a medio cerrar. Ambos estados tienen el mismo aspecto, pero ocupan posiciones diferentes. Conserva ese orden al inspeccionar el archivo codificado.
| Fotograma | Estado | Duración | Final acumulado |
|---|---|---|---|
| 0 | Abierto | 600 ms | 600 ms |
| 1 | Medio | 100 ms | 700 ms |
| 2 | Cerrado | 200 ms | 900 ms |
| 3 | Medio | 100 ms | 1,000 ms |
Crea un bucle nativo y una copia para verlo
En un proyecto nuevo de Ciyo, pide un GIF de 32×32, una tira de cuatro fotogramas de 128×32 y una vista ampliada de 256×256 con vecino más cercano. Mantén coherentes la paleta y el anclaje geométrico. La ampliación permite inspeccionar píxeles; no debería sustituir silenciosamente al recurso nativo del juego.
Pide al agente que vuelva a abrir el GIF después de guardarlo e informe del número de fotogramas codificados, sus duraciones y el ajuste de repetición. Esto detecta efectos de la exportación que una tira visualmente correcta no puede revelar.

Usa solo código para crear una animación ficticia de una linterna pixel art transparente de 32x32 y 4 fotogramas. Mantén el anclaje geométrico y la misma paleta; los estados son abierto, medio, cerrado, medio. Las duraciones son [600,100,200,100] milisegundos y el bucle se repite indefinidamente, con un ciclo total de 1000ms. Entrega el GIF nativo, una tira PNG de 4 fotogramas y un GIF de vista previa ampliado 8x mediante vecino más cercano. Añade la tira y la vista previa al lienzo, proporciona enlaces de descarga y repite el manifiesto de tiempos en la respuesta. Comprueba las duraciones codificadas por fotograma después de guardar el GIF, sus dimensiones, loop=0 y la suma del ciclo; no deduzcas los tiempos de una tira estática. No uses generación de imágenes o vídeo de pago. Es un ejemplo ilustrativo generado por código en Ciyo real, no una evaluación de calidad de modelos.Comprueba la exportación, no solo el número de dibujos
El resultado real de Ciyo incluye la tira, el GIF nativo y el GIF ampliado. Descargamos los GIF originales y los volvimos a abrir de forma independiente. Cada uno contiene cuatro fotogramas con duraciones codificadas [600,100,200,100], un total de 1,000 ms y loop=0.
El archivo nativo mide 32×32; la copia de inspección, 256×256. Son mediciones de estos dos archivos. No demuestran precisión de reproducción en un navegador, temporización de un motor ni calidad de animación en cualquier destino.

Conserva los tiempos al cambiar de formato
La documentación de GIF de Pillow ofrece opciones de duración por fotograma y repetición, que usamos para inspeccionar este ejemplo. Otros formatos o importadores pueden representar los tiempos de otra manera. Entrega la lista de duraciones en lugar de suponer que una hoja de sprites las contiene automáticamente.
Aplica las pausas en el sistema de animación de destino
Si tu motor importa solo imágenes, aplica allí las cuatro duraciones. Si un importador combina fotogramas idénticos o remuestrea a una frecuencia fija, compara el ciclo resultante con el ritmo previsto de un segundo. No modifiques el dibujo para compensar una pérdida de tiempos sin explicar.

Revisa un ciclo al tamaño de visualización previsto
Mira la animación donde vayas a usarla. Confirma que sigan siendo legibles la pausa abierta larga y las transiciones cortas. Usa la ampliación para revisar el anclaje y la coherencia de los píxeles, y vuelve al tamaño nativo para juzgar el ritmo.
En acciones de juego, los tiempos también deciden cuándo ocurren sonidos, efectos o cambios de colisión. Este parpadeo no tiene lógica de ataque ni de daño. Mantén esos eventos en una línea temporal explícita e independiente y pruébalos en el motor.
Preguntas prácticas
¿Puedo deducir la duración de la tira PNG?
No. La tira muestra el dibujo y su orden. Lee el manifiesto de tiempos o inspecciona la animación codificada.
¿loop=0 significa que la animación está detenida?
En los GIF de este ejemplo, loop=0 solicita repetición indefinida.
¿Un ciclo codificado de un segundo garantiza reproducción exacta en todas partes?
No. Comprueba la reproducción en el navegador, aplicación o motor donde se vaya a usar.
Conserva los tiempos junto a los fotogramas del sprite
Empieza con un ejemplo verificado en Ciyo. Conserva el original y revisa el resultado exportado antes de usarlo en tu proyecto.