Communitygithub.com

ice-motion

Motion Design für jeden Ice Motion Director-Film und -Schnitt: Bewegungsgrammatik, Timing und Easing, Nahtkontinuität, Kamerabewegungen und mehr. Wird von Ice Motion Director-Workflows aufgerufen.

Was ist ice-motion?

Ice Motion ist ein spezialisiertes Skill für KI-gesteuerte Bewegungsdesign-Agenten wie Claude Code. Es definiert, wie sich Dinge in Filmen und Schnitten bewegen, die mit dem Ice Motion Director erstellt werden. Das Skill erstellt einen vollständigen Bewegungsplan, der Bewegungsaufträge, Verben, Timing, Easing, Übergänge, Kamerabewegungen und vieles mehr umfasst. Es basiert auf einer umfangreichen Wissensbasis aus Referenzen (wie `references/motion-grammar.md`, `references/timing-and-easing.md` und `references/camera.md`), die systematisch konsultiert werden. Es gilt für eine Reihe von Film- und Edit-Typen, darunter Launch-Filme, Erklärfilme, UI-Demos und Lottie-Animationen, wobei die Regeln je nach Typ variieren können. Ein wesentliches Merkmal ist die Generierung eines maschinell prüfbaren Bewegungsvertrags für kommerzielle Arbeiten, der semantische IDs, wörtliche Mechanismen und Referenzen validiert. Das Skill ist nicht eigenständig ausführbar, sondern wird ausschließlich durch übergeordnete Ice-Workflows wie `ice-film` oder `ice-edit` aufgerufen.

Funktioniert mit~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/Omar-Tnzxo/ice-motion-director/tree/main/skills/ice-motion

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Ice Motion: Motion Craft

Dieses Skill entscheidet, wie sich Dinge bewegen. Es wird von einem Workflow (ice-film, ice-explainer, ice-remake, ice-edit, ice-lottie) aufgerufen, nachdem Brief und Richtung existieren. Es schreibt den Bewegungsplan; es erstellt oder rendert nie.

1. Was dieses Skill besitzt und worauf es verweist

BesitztVerweist auf
Bewegungsaufträge, Bewegungsverben, Ursache und WirkungKinetic Type, Untertitel, Lesedauer, Tippgeschwindigkeit von Display-Text: ice-type
Dauern, Easing, Staffelungen, Überlappungen, FedernMusik, SFX, Voiceover, Beat-Raster, Wort-Timing: ice-audio
Haltepolitik (lebendig, nur Kamera, echt still, kein Leerlauf)Tore, Nahtprüfung, Frame-Scans, Dichtemessung: ice-qa
Schnitt- und Übergangskatalog, ÜbergangspolitikEngine-Syntax, Render, Shutter-Capture, Plattform-Sicherheitszonen: ice-engines
Nähte, Tragen, Vektorgesetz, ÜbergabenKunst- und Zeichenstile, Charakter-Rigs, Erzählgrammatiken: ice-styles
Kamera, Komposition, Heldengröße, Inszenierungslicht, die Richness-MaßePalette, Type-Paarung, Anti-Gleichheit-Fingerabdrücke, Entscheidungslogbuch: ice-direction
2D-, 2.5D- und 3D-Bewegung; Physik; Morphing; LoopsArabische und rechts-nach-links-Ligaturen und -Richtungen: ice-arabic
Cursor- und UI-Demonstrationsbewegungen in FilmenApp- und Site-UI-Bewegung, Lottie, Logo-Vektor-Vorbereitung: ice-lottie
Bewegungsdeck, atomare Bewegungen, Shot-BlaupausenAsset-Truth, echtes UI-Capture, Logos: ice-assets

Auf andere Skills beim Namen verweisen; deren Regeln niemals wiederholen.

2. Vorgehen beim Aufruf

  1. Lies die Brief-Slots (Film- oder Edit-Typ, Plattform, Seitenverhältnis, Dauer, Sprache, Register, Markenwörter) und das Richtungslogbuch. Wenn der Typ fehlt, frage den Workflow, rate nicht.
  2. Öffne references/motion-language-by-type.md und setze die Bewegungssprache des Films: Haltepolitik, Übergangspolitik, Kamerapolitik, Überschwingerpolitik, Takt- und Unschärfegrammatik, Tempo. Wende die Branchen- und Markenpersönlichkeits-Voreinstellungen nur an, wo der Brief schweigt.
  3. Schreibe die Bewegungspersönlichkeit: eine Metapher plus 3-5 Regeln (references/motion-grammar.md Abschnitt 8). Dort gibt es mehrere unterschiedliche Beispiele; kopiere niemals eines.
  4. Teile die Bewegungspalette aus: 3 Kernbewegungen, höchstens 2 Akzente, höchstens 1 Signatur, vermeide die Kernbewegungen des vorherigen Films (references/move-deck.md, references/anti-slideshow-and-density.md Abschnitt 6).
  5. Schreibe für jeden Beat dessen Bewegungsauftrag und -verb, Timing und Ease sowie dessen Wichtigkeitsstufe (references/motion-grammar.md, references/timing-and-easing.md, references/measured-motion.md).
  6. Schreibe für jede Grenze eine Nahtzeile mit Träger, Ausgangs- und Eingangsvektoren und Begründung (references/seams-and-carry.md, references/transition-policy.md, references/cut-catalog.md).
  7. Schreibe für jede Kamerabewegung deren Grund und Fenster (references/camera.md).
  8. Überprüfe den Plan anhand der Anti-Slideshow-Regeln und der Dichtevorgaben für den Typ (references/anti-slideshow-and-density.md) und anhand der visuellen Richness-Mindestanforderung: lies die Mindestzahlen aus der „Richness Floor“-Tabelle des Filmtyps (der ice-film-Workflow references/film-types/<type>.md) und die Maße und Korrekturen in references/composition-and-staging.md Abschnitt 7. Ein Shot unterhalb der Mindestanforderung wird vor dem Bauen nachinszeniert.
  9. Schreibe für Werbespots, Produktreisen und textgeführte Filme ohne Voiceover auch den maschinell prüfbaren Bewegungsvertrag (Form: assets/motion-contract.example.json; Doktrin: references/continuous-journey.md) und führe python scripts/validate_motion_contract.py ice/plan/motion-contract.json --project-root . aus, bis es PASS ausgibt. Übergib den Plan an den Workflow; ice-qa überprüft das Rendering. Drei Dinge, die der Validator buchstäblich prüft:
    • Referenzen: drei rollenspezifische Referenzen mit Zerlegungsnotizen. Wenn die datierte Recherche keine Referenz fand, die du tatsächlich ansehen konntest, schreibe "references": [] (oder die, die du hast) plus "referencesWaiver": {"reason": "<was gesucht wurde, warum keine ansehbar>", "researchNote": "ice/research/<note>.md"}; verweise niemals mit einer Referenz auf eine Notiz, die einen Film beschreibt, den du nicht gesehen hast.
    • Abstammung: über jede Grenze hinweg vergleicht es IDs, nicht Bilder: transition.semanticId der ausgehenden Szene muss gleich entry.semanticId der nächsten Szene sein, also gib dem getragenen Objekt auf beiden Seiten dieselbe semanticId. Dass das Bild wirklich trägt, wird beim Rendern von ice-qa und dem Reviewer beurteilt.
    • Generische Verben (slide, grow, scale, float und der Rest seiner Liste) schlagen fehl, es sei denn, das Objekt ist buchstäblich dieser Mechanismus; füge dann "literalMechanism": "<der wirkliche Mechanismus in einem Satz>" zu dieser primaryMotion oder Texteinheit hinzu.
  10. Protokolliere jede Bewegungsentscheidung mit Grund und Quelle über ice-direction (ice/DIRECTION.md).

3. Universelle Gesetze (gelten in jedem Typ)

  1. Jede Bewegung erfüllt einen Zweck (Aufmerksamkeit lenken, Kontinuität tragen, Veränderung zeigen, Charakter ausdrücken) oder sie wird entfernt.
  2. Bewegung folgt Bedeutung: Flüsse fließen, Bauten montieren, Countdowns ticken, Routen zeichnen in ihrer Richtung, Zahlen zählen während ihre Ursache sich ändert.
  3. Eine fokale Bewegung gleichzeitig; unterstützende Elemente warten, die fokale wartet nie.
  4. Eintritte verlangsamen, Austritte beschleunigen, Onscreen-Bewegungen erleichtern ein- und aus, Aufpraller beschleunigen in den Kontakt; niemals linear für räumliche Bewegungen, es sei denn mechanisch; niemals ein Ease auf allem (mindestens 3 Ease-Charaktere pro Film).
  5. Austritte sind schneller als Eintritte; Eintritte verwenden 2-3 abklingende Kanäle, niemals nur Deckkraft; niemals aus Null wachsen.
  6. Staffelungen bleiben unter etwa 0,5 s pro Gruppe, unregelmäßig, in der Reihenfolge der Wichtigkeit; Offsets kürzer als die Bewegungen, die sie versetzen.
  7. Kontrast ist die Botschaft: variiere Geschwindigkeit (langsamste Szene etwa 3x die schnellste), Shottlänge, Dichte und Stille; setze Maßstab, Effekte und Akzente einmal ein.
  8. Etwas überquert jede Grenze: ein getragenes Objekt, ein passender Vektor, die Stimme oder der Beat; der Ausgang von Szene A bestimmt den Eingang von Szene B (gleiche Achse, Richtung, Geschwindigkeit).
  9. Die Kamera ist Satzzeichen: sie bewegt sich aus einem benannten Grund, langsam für Übergänge, schnell nur für Akzente, niemals drei Einwärtsschübe hintereinander.
  10. Haltezustände sind Entscheidungen: die Haltepolitik des Films wird nach Typ gewählt und überall angewendet; eine Szene, deren Inhalt ausgeht, wird gekürzt oder bekommt eine Geschichte, niemals wackeln.
  11. Jeder Frame ist eine reine Funktion der Zeit: geschlossene Federn, gesetzter Zufall, keine Echtzeituhr, keine zustandsbehafteten Löser.
  12. Effekte kompensieren niemals schwaches Layout, schwache Posen oder fehlende Beweise.

4. Konflikte nach Gültigkeitsbereich gelöst (Zusammenfassung)

FrageAntwort nach TypDatei
Was bewegt sich während eines Halts?Lebendig (Launch, App Ad, Social, Hype), nur Kamera (Erklärfilm, Talking-Head, Daten, Longform), echt still als Satzzeichen (Marke, Kunstpausen, Kinetikpausen, Komödie), kein Leerlauf (UI-Walkthrough, nacherzählter Launch)references/holds-and-stillness.md
Überblendungen?Verboten zwischen Szenen in Launch, App Ad, Hype, Kinetic, Collage, Music-led, Social; erlaubt als „dies geht weiter“ in ruhiger Marke, Kunst, Longform, Podcast, Chart-zu-Chartreferences/transition-policy.md
Harte Schnitte?Etwa 95 Prozent der Wechsel in geschnittenem Filmmaterial, Erklärfilmen und Collage; in Kamera-ist-der-Editor-Filmen nur auf einem Downbeat, höchstens zweimalreferences/transition-policy.md
Überschwinger?Keine für Daten, Finanzen, Gesundheit, Luxus, Kamera, Text; winzig für Launch und UI; eine Feder pro Verbraucherfilm; verspielt nur für Kinder und Maskottchenreferences/timing-and-easing.md
Austritte in nicht-finalen Szenen?Verboten wo der Übergang der Austritt ist (montierte Launch-Filme); kurze beschleunigende Austritte oder Herabstufen am Platz in nacherzählten Erklärfilmenreferences/transition-policy.md
Rahmen füllen oder große leere Fläche?Füllen (Business-Spots, Erklärfilme, jedes vertikale Ad) oder etwa 70 Prozent strukturierte Fläche (Minimal-Genre-Referenzen, ruhige Marken, Landschaft nur): nach Referenz-Genre und Register wählen. In beiden Fällen gilt die Richness-Mindestanforderung des Typs; „Premium“ subtrahiert Unordnung, niemals Füllereferences/composition-and-staging.md Abschnitte 2 und 7
Kamera während Halts?Langsamer Push 3-6 Prozent (Politik A und B); verriegelt (C und D)references/camera.md, references/holds-and-stillness.md

5. Ausgabevertrag: der Bewegungsplan

Der Workflow speichert ihn als ice/plan/motion-plan.md. Fülle jeden Slot aus; Slots sind Platzhalter, niemals Beispielwerte.

## Motion language
type: <Film- oder Edit-Typ> | hold policy: <A|B|C|D> | transitions: <Primär + Akzente> | camera policy: <...>
overshoot: <none|tiny|one spring|playful> | clock: <fps, smooth oder stepped> | blur grammar: <smear|crisp|shutter>
personality: <eine Metapher> + <3-5 Regeln>
palette: core <move, move, move> | accents <move, move> | signature <move or none>
richness: hero_share <n> | hero_width <n oder n/a> | frame_fill <n von 16> | empty_half <s> | depth_layers <n> | in_shot_motion <n Prozent> | longest_still <s> | light_events <n> | real_material <Prozent oder n/a> (Mindestzahlen aus der Filmtyp-Datei)

## Beats (eine Zeile pro Beat)
| t in-out | beat role | importance 1-3 | focal element | job | verb | ease | duration | stagger | buys |

## Seams (eine Zeile pro Grenze)
| cut t | out motion (Achse, Richtung, Geschwindigkeit, Unschärfe) | seam type | in motion | carrier | ease pair | cue | reason |

## Camera windows
| from | apex | dwell end | to | target | move | reason |

6. Dateien

BedarfÖffneWann
Bewegungssprache für einen Typ, eine Branche oder Marke festlegenreferences/motion-language-by-type.mdZuerst, jedes Mal
Entscheiden, ob und warum sich etwas bewegt; Verben; Ursache und Wirkung; Persönlichkeitreferences/motion-grammar.mdPlanung jedes Beats
Dauern, Ease-Richtung, Staffelungen, Überlappungsgesetz, Überschwinger-Politik, Timing-Ankerreferences/timing-and-easing.mdTiming jedes Beats
Gemessene menschliche Zahlen und die 12 angepassten Easesreferences/measured-motion.md und scripts/measured-eases.mjsLaunch, App Ad, UI, Hype; Anpassung an eine Referenzbewegung
Federformeln, Dämpfungsleitfaden, Voreinstellungsfamilien, benannte Cubic-Bezier-Kurvenreferences/springs-and-curves.md und scripts/springs.mjsJede Feder oder benutzerdefinierte Kurve
Was während Halts passiert; Endhalts; Freezes; Loopsreferences/holds-and-stillness.mdVor jedem Halt oder Ende
Genaue Konstruktion eines Schnitts oder Übergangsreferences/cut-catalog.mdErstellen einer Naht
Welcher Übergang, wie viele, Überblendungs- und Austrittspolitik, Nahtplanfelderreferences/transition-policy.mdAuswahl von Nähten
Tragen, Vektorgesetz, Übergabeverträge, Toleranzen, Wurzelprotagonistreferences/seams-and-carry.mdJede Grenze
Eins-Form-, Eins-Welt- und Eins-Akteur-Filmereferences/one-take-films.mdDie Richtung verlangt einen durchgehenden Film
Kameragründe, Rig-Regeln, Bewegungsdauern, Wackeln, Dichtegrenzenreferences/camera.mdJede Kamerabewegung
Brennpunkt, Heldengröße, Ebenen, Layout, Inszenierung, Inszenierungslicht, die visuelle Richness-Mindestanforderung (Abschnitt 7)references/composition-and-staging.mdEinrahmung jedes Shots; Überprüfung des Plans in Schritt 8
2D vs. 2.5D vs. 3D, Parallaxe, Tiefenschärfe, 3D-Flugwertereferences/depth-and-3d.mdTiefen- oder 3D-Beats
Slideshow-Fehlermodi, Rhythmus, Dichtevorgaben, Ausgaberegelnreferences/anti-slideshow-and-density.mdÜberprüfung des Plans
Animationsprinzipien als Technik, Physikrezepte, Morphing, Zeichnen, Loopsreferences/physics-and-morphing.mdPhysikalische oder morphende Beats
Cursor, Klick, Ziehen, Schalter, Agentenzustände, UI-Demo-Rezeptereferences/cursor-and-ui.mdJede UI-Demonstration
Kleine Bewegungen mit Wertetabellen und einer Absichtsauswahlreferences/atomic-moves.mdAuswahl einer Bewegung für einen Beat
46-Karten-Bewegungsdeck, abgelehnte Namen, Mechanismus-Katalogereferences/move-deck.mdAusteilen der Bewegungspalette
Zeitcodierte Blaupausen, Shot-Konstruktionen, Zeit-Skelettereferences/shot-blueprints.mdPlanung einer Shot-Sequenz
Frame-Takte, Unschärfe-Grammatiken, wann Bewegungsunschärfe, Körnungreferences/motion-blur-and-clock.mdEinstellen von Takt und Unschärfe
Ein Wurzelprotagonist, Zustandskette, Vererbungskanäle, Hard-Cut-Aufzeichnungen, Text der handelt, Abschluss (Founder's Original)references/continuous-journey.mdWerbespots und Produktreisen
Physischer Entscheidungsvertrag, Wurf, Anziehung, starres UI-Schließen, Ton nach Bewegungsphase (Founder's Original)references/motion-choreography.mdPhysikalische oder kausale Beats
Frame- und Text-Fokus-Einheitsverträge, Kamera-Notwendigkeitstest, Kamera-Verben, 2D-Ankerformel (Founder's Original)references/semantic-camera.mdJede Kameraentscheidung in Werbespots
Bewegungsvertragsformassets/motion-contract.example.jsonSchreiben eines Bewegungsvertrags (Werte dienen nur der Veranschaulichung)

Skripte (Windows, macOS, Linux). Mindestanforderungen für Node und Python: runtimes in der ice-engines Skill-Datei references/versions.json; Python-Pakete: scripts/requirements.txt (exakte Pins in sync mit versions.json).

SkriptLaufzeitVerwendung
node scripts/measured-eases.mjs [ease] [samples]NodeDrucken oder Importieren der 12 gemessenen Eases
node scripts/springs.mjs [w z seconds]NodeDrucken oder Importieren von geschlossenen Federn und Beruhigungszeiten
python scripts/validate_motion_contract.py <contract.json> [--project-root <folder>]Python, StandardbibliothekStrenger kausaler, temporaler, Offenlegungs-, Abstammungs-, Kamera- und Tonvertrags-Gate; exit 1 listet Fehler auf
python scripts/audit_web_section_motion.py <project folder>Python, StandardbibliothekLehnt animierte-Webabschnitt-Code-Muster ab (exit 1)
python scripts/audit_motion.py --video <mp4> --audio <wav>Python mit numpy und opencv-python-headlessAudio-Einsätze und visuelle Änderungsdichte im Vergleich zu einer Referenz; ein Diagnosewerkzeug, kein Urteil

Die Dateien des Gründers tragen die Notiz „From the founder's commercial-motion-design skill“.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Verwandte Skills