Communitygithub.com

AHMADALIPARR/game-animation-frames

Guide approfondi pour les actifs d'ANIMATION de jeu : cycles de mouvement, keyframes d'action, séquences d'effets et feuilles de sprites d'animation — construit autour d'un pipeline vidéo d'abord. Dans ce bac à sable de construction d'applications, exécutez via les compétences video2dsprite / generate2dsprite (magenta + scripts), pas avec ffmpeg ad-hoc. À utiliser chaque fois que vous générez quelque chose qui bouge : cycles de marche/course, attaques, repos, effets, drapeaux, feu, feuilles d'animation. Complète game-asset-core.

Qu'est-ce que game-animation-frames ?

Cette compétence, nommée `AHMADALIPARR/game-animation-frames`, est une doctrine complète dédiée à la production d'actifs d'animation pour les jeux vidéo. Elle est conçue pour être utilisée dans un bac à sable de construction d'applications (app-builder) et s'intègre étroitement avec les compétences `video2dsprite` et `generate2dsprite`. Le principe fondamental est de privilégier un pipeline vidéo : comme les générateurs vidéo comprennent naturellement le mouvement (alternance des jambes, continuité des arcs, dynamique des tissus et du feu), on génère d'abord une base animée via `imagine_image_to_video`, puis on en extrait les frames réelles. La compétence dicte des lois de mouvement à vérifier (cycles, continuité, physique, énergie) et un test de boucle (flip test) pour garantir la qualité des animations. Le pipeline par défaut utilise un fond magenta (`#FF00FF`) obligatoire pour le chroma keying, et l'exécution doit passer par les scripts dédiés (`video2dsprite` ou `generate2dsprite`), jamais par des commandes `ffmpeg` libres. Elle est utile à tout développeur ou utilisateur d'agent IA générant des sprites animés pour jeux, car elle fournit des règles claires et un workflow reproductible pour obtenir des boucles parfaites et des feuilles de sprites prêtes à l'emploi. Les plateformes cibles sont les environnements de type app-builder (comme Grok) et les pipelines de génération d'actifs 2D.

Compatible avec✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AHMADALIPARR/skill-inventory/tree/HEAD/skills/sovereign/opengrok/game-animation-frames

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Animation Frames — vidéo d'abord

Le générateur d'images dessine des poses ; le générateur VIDÉO comprend le mouvement — l'alternance des jambes, la continuité des arcs, la dynamique des tissus et du feu viennent gratuitement parce que la vidéo doit les animer. Ne demandez donc pas au modèle d'image d'imaginer des poses en plein mouvement : animez la base et récoltez les frames réelles.

Exécution dans le constructeur d'applications (lire en premier)

Cette compétence est doctrine (lois du mouvement, QC de boucle, quand utiliser la vidéo). Dans le bac à sable du constructeur d'applications, ne lancez pas une récolte libre avec ffmpeg ni n'inventez un fond #hex aléatoire.

ÉtapeCe qu'il faut faire
Sprites de production / grilles fixesgenerate2dsprite — feuilles magenta solides #FF00FF + scripts chroma
Locomotion plus dense à partir de la vidéovideo2dsprite — image de base sur #FF00FF → imagine_image_to_video → scripts de compétence (ffmpeg + chroma)
Fond incrustableToujours #FF00FF avec l'un ou l'autre pipeline (requis pour le chroma)
Cette compétenceBoucle / test de retournement / lois du mouvement ci-dessous — appliquer après l'exécution du pipeline

Ouvrez .grok/skills/video2dsprite/SKILL.md ou .grok/skills/generate2dsprite/SKILL.md et suivez leurs workflows pour la génération et le post-traitement. Appliquez ensuite les lois et le test de retournement ici avant d'exporter les frames dans le jeu.

Pipeline par défaut (intention)

  1. Image de base. Sujet en pose neutre/départ, mots de style complets, vue de côté / adaptée au jeu, fond #FF00FF solide (incrustation chroma du constructeur d'applications). Les valeurs par défaut de game-asset-core s'appliquent.
  2. Animer. imagine_image_to_video à partir de la base : un mouvement clair, sur place, caméra statique ("le chevalier marche sur place, vue de côté, caméra verrouillée", 6s). Gardez la prise simple — un sujet, un mouvement. Préférez passer par video2dsprite pour que la récolte et le chroma soient cohérents.
  3. Récolter + nettoyer. Utilisez les scripts de video2dsprite (pas ffmpeg -i … fps=12 seul). Le remplissage magenta / désencrage vit là ; ne re-incrustez pas avec un #hex plat différent à moins de quitter le pipeline magenta entièrement.
  4. Sélectionner. Choisissez les frames qui (a) capturent les phases distinctes du mouvement et (b) BOUCLENT — la fin de la séquence doit revenir à son début. Ne forcez pas un nombre : si le mouvement est le mieux rendu avec 8, 10 ou 12 frames, livrez-en autant (plus de frames = plus fluide dans le moteur). Pour un cycle, sélectionnez une période complète à l'aide de repères de mouvement (contacts des pieds, extrêmes des ailes, pics de flamme).
  5. Empaqueter. Livrez les frames dans l'ordre de jeu (noms à zéros initiaux) et/ou une feuille selon les règles de game-asset-core (cellules uniformes, sans séparateurs) — ou les bandes/grilles transparentes émises par video2dsprite / generate2dsprite. Indiquez le fps prévu.

Revenez à des keyframes image par image avec imagine_text_to_image (toujours sur #FF00FF lors du post-traitement avec les scripts de sprites) uniquement lorsque la vidéo échoue pour le mouvement (rare : poses très stylisées, keyframes dramatiques uniques) — et planifiez alors les phases vous-même et respectez les lois ci-dessous. Préférez generate2dsprite pour les grilles multi-images nettes de production.

Lois du mouvement (vérifier ces lois, quel que soit le pipeline)

  • Les cycles bouclent ; les allures alternées passent la moitié de la période en miroir.
  • Continuité : les membres, accessoires, anatomie, effets se déplacent sur des trajectoires continues — rien ne téléporte, ne disparaît ni ne se duplique entre des frames adjacentes.
  • La physique se lit dans les images fixes : en l'air montre l'air, l'anticipation se comprime, le suivi dépasse ; les effets restent ancrés à leur origine sauf si la demande les déplace.
  • L'énergie correspond à la demande : repos/subtil signifie frames à peine différentes.

Vérifier — le test de retournement

Visualisez les frames finales strictement dans l'ordre et racontez le mouvement ; vérifiez la fermeture de la boucle explicitement (dernière→première). Une hésitation dans votre narration est un frame échoué. Le pipeline vidéo réussit généralement ce test du premier coup — c'est pourquoi il est le pipeline par défaut.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Skills associés