Communitygithub.com

Master motion sans coupe sèche

Transforme les planches en un master motion continu calé sur la musique de la personne. Pas de coupe sèche, des accélérations liquides, et des mp4 muets dans le dépôt pour juger le fini avant de poser la piste.

Qu'est-ce que Master motion sans coupe sèche ?

MotionKit rend un film motion premium, sans coupe sèche, dans HyperFrames à partir des planches et d'une piste fournie. Caméra, continuité et fini sont écrits. La README lie des démos muettes entières, dont a-ember-lumen.mp4, b-morph-nook.mp4, c-neon-aura.mp4 et d-saas-tally.mp4, plus des aperçus webp.

Compatible avec✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/DyneStein/motionkit/tree/main/skill

Demander à votre IA préférée

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

Documentation

MotionKit

Racine du kit : le dossier parent de ce skill, un niveau au-dessus (appelez-le $KIT ; si le skill a été lié symboliquement, résolvez le lien — par ex. ~/.claude/skills/motionkit → <clone>/skill, donc $KIT = <clone>). Il est distillé à partir de 60 vidéos de référence sélectionnées par l'utilisateur ; suivez-le plutôt que les réglages génériques par défaut.

Non-négociables (préférences permanentes de l'utilisateur)

  1. Pas de coupures soudaines. Chaque changement de scène est porté par quelque chose des deux côtés de la couture ($KIT/grammar/01-continuity.md). Maximum ⅓ des jonctions peuvent être des coupures franches, et seulement sur un temps fort.
  2. Liquide, fluide, arrondi. Easing de sortie longue traîne, squash/stretch au contact, changements de matériau avant la forme, flou comme colle (02-motion-easing.md).
  3. Ne jamais générer ou synthétiser de musique. Utilisez la piste de l'utilisateur. Si aucune n'est fournie, demandez-en une. Le kit ne contient pas de musique.
  4. Caméra décidée par le contenu (tours 3–4) : planifiez un parcours varié (jamais la même direction deux fois de suite : camion G/D, piédestal haut/bas, diagonales, poussées, tirages, arrêts) et alternez les temps de caméra avec les temps d'éléments où des éléments finis interagissent sous une caméra fixe ; synchronisez les événements avec la musique (sync_check.py seuil ≥ ×1.35 ; beatSync() pour les pistes ambiantes, grille de temps pour les pistes rythmiques). Films guidés par le texte → caméra suiveuse qui GLISSE (spline e:"glide" à travers les cibles de mots, easing en cloche entre les régions — jamais de sauts par mot) ; films guidés par les éléments → caméra quasi fixe avec uniquement des mouvements motivés et ensemencés (camSeed, seed) — jamais de déplacement pour lui-même, jamais de motif répété. Règle précédente, toujours valable pour les films textuels : (tour 2 : "c'est juste la perspective, la caméra ne bouge pas") : caméra suiveuse sur le mot actif/protagoniste à travers un monde plus grand que le cadre, voyage porte-drapeau entre les stations pour les histoires d'objet unique, couche de référence parallaxe toujours ($KIT/grammar/08-camera.md § v3, $KIT/research/camera-notes.md, primitives §19–20). Aussi : (l'utilisateur a qualifié son absence de "DÉFAUT MAJEUR MAJEUR MAJEUR MAJEUR") : construisez chaque film comme un monde 3D vu à travers camera-rig.js ; caméra en mouvement ≥ 65 % des images (références : médiane 77 %, mesurée avec research/camera_motion.py) ; les légendes chevauchent le monde, les pauses continuent de voyager, rythme pause-et-balayage, ≥ 3 couches de profondeur avec parallaxe, profondeur de champ, dérive stabilisée, flou de mouvement sur les balayages ($KIT/grammar/08-camera.md).
  5. Niveau de finition ($KIT/grammar/09-polish-bar.md) : lueurs serrées uniquement (pas de halos, jamais d'échelle sur un élément lumineux, pas de grands filtres de flou SVG — dégradés + grain) ; les morphs de conteneurs sont en géométrie SVG pour que les coins restent arrondis à chaque image (pas de révélations par clip-path) ; l'interface textuelle arrive depuis la profondeur/le flou doux — pas de pop à l'échelle, pas de mise en page autocollante inclinée ; chaque objet plat reçoit ombre + lueur de bord + ombre de contact.
  6. Éléments et polices professionnels : construisez les pièces UI/3D à partir de $KIT/elements/ (voir elements/showcase/ et research/element-notes.md) ; typographie à partir de $KIT/fonts/FONTS.md — jamais de polices génériques par défaut.
  7. Finition professionnelle : un accent par ligne, emphase en italique-serif ou saut de poids, chaque image a ≤ 3 éléments focaux, une constante persistante (toile, titre, horizon ou brouillard) à travers le film.
  8. Reels d'abord sauf indication contraire : 1080×1920, texte dans la bande 168–1330 px, ≤ 5 mots par ligne, rien en dessous de 28 px, l'image 0 est l'accroche (jamais noir, jamais un logo).
  9. Soyez efficace en tokens : un fichier de scène par chapitre (ou un seul pour un morph continu entier), ne prenez en instantané que les changements d'état.

Flux de travail

  1. Brief (court). Sujet/marque, message, format, durée, le fichier musical. Ne demandez que ce qui manque ; un tour.
  2. Choisissez un style depuis $KIT/styles/STYLES.md (le tableau en bas fait correspondre les briefs → styles). Lisez cette fiche complètement ; ouvrez 1–2 de ses notes de référence dans $KIT/research/video-notes/ pour les détails.
  3. Analysez la musique : npx hyperframes audio <piste> --only kind,bpm,beats,downbeats,sections,onsets --json. Rythmique → grille de temps (beat(n), bar(k), primitives §1). Ambiante → chapitres sur les limites de section, événements héroïques sur les attaques les plus fortes (--threshold 0.3).
  4. Planifiez dans un tableau : chapitres × (fenêtre temporelle, porteur vers le suivant, état de l'objet, légende, mouvement de caméra). Nommez le porteur et le mouvement de caméra pour chaque couture ; si vous ne pouvez pas, reconcevez la couture. Disposez les chapitres comme des lieux dans un seul monde 3D.
  5. Construisez avec HyperFrames (chargez d'abord /hyperframes pour le contrat). Commencez par l'échantillon le plus proche (v2 = avec caméra) : $KIT/samples/a-ember-lumen (S1), b-morph-nook (S2), c-neon-aura (S3), d-saas-tally (S4) — cp -R le vers le nouveau projet, puis réécrivez. Utilisez les blocs de $KIT/primitives/PRIMITIVES.md. Placez la palette + polices dans les variables racine data-composition-variables.
  6. Vérifiez : npx hyperframes check --json 2>/dev/null (stderr est bruité) → corrigez les erreurs, pesez les avertissements → npx hyperframes snapshot --at <chaque changement d'état + mi-balayage> -o .snap/x → lisez la feuille de contact → corrigez (zoomez sur les coins et les lueurs : snapshot --zoom). Passez en revue 07-engineering-pitfalls.md et la liste de contrôle 09-polish-bar.md. Après le rendu, mesurez le mouvement de la caméra : python3 $KIT/research/camera_motion.py <dossier-avec-mp4> out.json — objectif moving_frac ≥ 0.65 (quartile inférieur des références ; médiane 0.77).
  7. Rendu : npx hyperframes render -o <sortie>.mp4. Ouvrez l'aperçu Studio avant un rendu de livraison lorsque l'utilisateur révise.

Références rapides

  • Porteurs (choisissez 3–5 par film) : élément-devient-monde · zoom-à-travers · morph de forme · objet guide · une carte plusieurs états · iris · inondation de couleur · fouet de flou · caméra de monde continu · mot ancré · rime de forme · porter-à-travers · dissolution de particules · fondu moyen.
  • Palette d'easing : arrivée expo.out/power4.out 0.5–0.9 s · sortie power3.in (40–50 % de l'entrée) · caméra/morph power2.inOut · ressort premium back.out(1.4) · linéaire uniquement pour orbite/rotation/progression.
  • Typographie : flou à l'entrée par mot (pas de translation) · lecture gris→encre · machine à mots · pilule de surbrillance de mot-clé · accent italique-serif · icône en ligne dans la phrase.
  • Formes narratives : problème(sombre)→révélation→caractéristiques→CTA · chaos→ordre · un protagoniste plusieurs états · invite→résultat · manifeste avec mot ancré · micro-boucle.

Développer le kit

Lorsque l'utilisateur ajoute de nouvelles vidéos de référence : réalisez des feuilles de contact (horodatées, échantillonnage 0.33–1 s) + bandes à 10 ips sur les transitions, écrivez une note par vidéo dans research/video-notes/, ajoutez des lignes à research/INDEX.md, et intégrez les nouveaux schémas dans les fichiers de grammaire/style. Lorsqu'une construction enseigne un nouveau bug ou primitive, ajoutez-le à 07-engineering-pitfalls.md / PRIMITIVES.md.

Skills associés