Animando pixel art con las herramientas de aseprite
Primero llama a animation_workflow_guide con use_case="character", "idle" o "environment".
1. Decide el bucle
-
Anima en el archivo que el usuario tiene abierto. Si es demasiado pequeño o tiene muy pocos fotogramas, usa
resize_canvasyadd_framesen ese mismo archivo. Nunca crees un nuevo sprite, ni concreate_canvasni conSprite()en Lua (consulta el skill aseprite-live). -
Longitud y temporización. Duración = fotogramas × tiempo por fotograma. Las opciones comunes son 8 fotogramas × 120 ms (aproximadamente 1 s) para bucles ambientales, 4–6 fotogramas × 100–150 ms para idles, y 6–8 fotogramas para caminatas.
-
Duraciones. Usa
add_frames(count, duration_ms)y luegoset_frame_duration_all. -
Etiquetas. Nombra cada bucle con
set_tag(por ejemploidleowalk), para queexport_tagpueda exportarlo individualmente.
2. Capas estáticas primero
Primero termina el fotograma fijo; sigue el skill de pixel art. Luego llama a propagate_cels para copiar cada capa que no se mueve (fondo, mobiliario) a todos los fotogramas. Solo las capas en movimiento se redibujan después.
3. Mueve las cosas de la manera correcta
| Qué se mueve | Cómo |
|---|---|
| Personajes, criaturas | Pose a pose. Redibuja cada pose clave en su propio fotograma: anticipación, acción, seguimiento. Usa copy_frame, luego erase_region en la parte que se mueve y redibújala con draw_rows. Involucra todo el cuerpo. Los pies permanecen en una misma línea de suelo a menos que estén en el aire. |
| Cuerpos blandos (slime, gelatina) | Aplastamiento y estiramiento del 30–50%, con una forma cambiada en cada fotograma aéreo. |
| Objetos rígidos, movimiento secundario | Usa tween_cel_positions_eased, offset_cel_positions u oscillate_cel_positions (nubes, un icono flotante, un barco que se mece). |
| Partes giratorias (ventilador, molino) | Dibuja 2–4 poses y altera entre ellas con copy_cel. |
| Efectos ambientales (vapor, destellos, contenido de pantalla, LEDs parpadeantes) | Redibuja pequeños conjuntos de píxeles por fotograma. Deja que el alfa disminuya a medida que las partículas ascienden. |
Nunca uses una interpolación como movimiento principal de un ser vivo.
4. Haz que los bucles sean perfectos
- El último fotograma debe fluir hacia el primero. Para partículas, usa posiciones que sean
(frame + offset) % N. Para desplazamiento, muévete exactamente un período a lo largo del bucle. - Evita los saltos bruscos. Algo que se desvía 8 px y luego vuelve de repente se percibe como un fallo. Usa un vaivén de ida y vuelta, o muévelo a lo ancho de todo el lienzo para que salga y vuelva a entrar.
- Verifica la continuidad con
render_onion_skin. Usacompare_framesyget_boundspara confirmar qué se movió y cuánto.
5. Revisa y exporta
- Revisión. Llama a
view_sprite(frames="1-8")para ver cada fotograma lado a lado, yaudit_animationovalidate_scenepara encontrar celdas faltantes. - Exportación.
export_animation(output.gif, scale=4-8, background="#...")crea un GIF compartible; usaexport_tagpara un solo bucle. - En modo en vivo, el usuario también puede presionar Enter en Aseprite para reproducir la animación.