Communitygithub.com

risingjerry/motion-skill

Mit Code 4K-Bewegtgrafiken erstellen – ganz ohne KI-Bild- oder Videogenerierung: Produkt-Launch-Videos, App-Werbespots, Logo-Animationen, 3D-Produktszenen, Erklärvideos und Silhouetten-Übergänge mit Realfilm-Material.

Was ist motion-skill?

Dieser Skill ermöglicht es, hochwertige 4K-Bewegtgrafiken (Motion Graphics) vollständig mit Code zu erstellen – ohne den Einsatz von KI-Modellen für Bilder oder Videos. Der Skill eignet sich für eine breite Palette von Projekten, darunter Produkt-Launch-Videos, App-Werbespots, Logo-Animationen, 3D-Produktszenen, Erklär- und Demo-Animationen sowie Silhouetten-Übergänge, die mit Realfilm-Material kombiniert werden. Er unterstützt drei Ebenen der Umsetzung: 2D-Motion Design (basierend auf echten Logos und Screenshots), 3D im Browser (HTML-Canvas mit perspektivischen Kartenlayouts und Kamerafahrten) sowie echtes 3D in Blender (mit Ein-Licht-Studio-Beleuchtung für physische Produkte). Alle erstellten Animationen sind deterministisch berechnet: Jeder Frame wird aus dem Parameter t abgeleitet, sodass Änderungen an der Geschwindigkeit einfach durch Anpassen einer Zahl erfolgen, ohne dass die gesamte Animation neu gerendert werden muss. Der Skill beinhaltet eine umfassende Toolchain von der Storyboard-Erstellung über das Rendern von Standbildern und 4K-Videos bis hin zur Audio-Postproduktion (Sounddesign, Level-Anpassung) und einer Reihe von Prüfskripten für Layout, Nahtlosigkeit und physikalische Korrektheit. Der Workflow ist strikt sequenziell: Zuerst wird das Storyboard abgestimmt, dann die Seite aufgebaut, erst nach der finalen Bildabstimmung wird der Ton hinzugefügt. Der Skill läuft auf Node.js 20+, Python 3.9+ und benötigt ffmpeg sowie Chrome/Chromium; für die 3D-Blender-Ebene ist Blender nötig, für automatische Silhouetten-Extraktion wird macOS 14+ empfohlen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/risingjerry/motion-skill/tree/HEAD

In Ihrer bevorzugten KI fragen

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

Dokumentation

Code-Bewegtgrafiken (motion)

Das Video ist mit Code geschrieben: Jeder Frame wird aus der Zeit t berechnet. „Hier etwas langsamer“ bedeutet nur, eine Zahl zu ändern und neu zu rendern – keine Neuaufnahme nötig.
Es werden keine KI-Bild- oder Videogenerierungsmodelle verwendet; alles auf dem Bildschirm stammt von echten Materialien oder Code.

Zuerst die Ebene wählen

Alle drei Ebenen nutzen denselben Ablauf. Je tiefer die Ebene, desto mehr ähnelt sie einer echten Aufnahme, ist aber auch langsamer. Wähle nach dem, was das Video braucht; die Ebenen können gemischt werden.

EbeneWas ist auf dem Bild?Geeignet fürStartpunkt
1. 2D-MotionEchtes Logo, echte Screenshots, Formen, die sich verwandelnApps, Software, Brand-Openertemplates/2d.html
2. Browser-3DUI-Karten im 3D-Raum, Kamerafahrten; Silhouetten-Übergänge zu RealfilmMulti-Screen-UI-Shows, Videos mit Realfilm-Einlagentemplates/3d.html, scripts/silhouette.py
3. Blender-StudioPhysisches Produkt-Modell, eine Lampe, echtes MaterialKopfhörer, Smartphone, Tassen usw.scripts/blender/studio.py

Ausführliche Erklärungen: references/layers.md.

Ablauf (in dieser Reihenfolge, keine Schritte auslassen)

  1. Fragen klären, echtes Material besorgen. Was ist das Produkt, wer sieht es, wie lang ist es, auf welcher Plattform läuft es, was soll der Zuschauer am Ende tun? Das Material ist immer echt:
    Offizielle Logo-Dateien, echte Screenshots (vorher Benachrichtigungen, Avatare, Telefonnummern entfernen), Markenfarben und Schriften. Verwende keine Werbebilder aus dem App Store als UI und zeichne Logos nicht aus dem Gedächtnis.
    Für physische Produkte: Fotos aus mehreren Blickwinkeln, am besten vom Benutzer selbst gemacht, um später die Modellproportionen zu prüfen.
  2. Das Ende festlegen. Am Ende stehen nur Icon und Wortmarke (oder ein Übergang zu Realfilm). Keine Slogans wie „Jetzt herunterladen“ oder „Öffne XX“, kein Kleingedrucktes wie „Konzeptvideo“ (solche Hinweise gehören in die Beschreibung).
  3. Storyboard mit Nummern erstellen, auf Zustimmung warten. 5–10 Shots, jeder mit: Zeitraum, Bild, Aktion, wie der Übergang zum nächsten Shot erfolgt, Text auf dem Bildschirm.
    Schreibe shots.json, führe node scripts/render.mjs board shots.json board.png aus, um ein Bild zur Ansicht zu generieren.
    Kein endgültiges Video ohne Zustimmung – Änderungen sind jetzt am günstigsten. Format siehe references/storyboard.md.
  4. Seite aufbauen. Kopiere die Vorlage und templates/motion-kit.js in den Materialordner. Alle Beats stehen oben in BEATS; Änderungen am Timing nur dort.
    Seitenkonventionen siehe references/html-engine.md.
  5. Frame für Frame selbst prüfen, dann anderen zeigen. render.mjs still extrahiert Schlüsselmomente (3–4 Punkte pro Übergang, nicht nur stehende Bilder),
    scripts/sheet.py setzt sie zu einem Bild zusammen – zuerst selbst durchsehen. Dann Prüfskripte laufen lassen:
    • render.mjs probe + scripts/layout_check.py probe: Text mindestens 40 px vom Hauptobjekt entfernt (4K), Hauptobjekt nahe der Bildmitte.
    • 3D: scripts/blender/motion_check.py (Durchdringungen, max. 6° Rotation pro Frame, keine Ruckler), scripts/seam_check.py (Nahtfehler ≤ 1 px).
      Checkliste siehe references/checklist.md.
  6. Nur 4K ausgeben. node scripts/render.mjs video page.html datei-4K.mp4 --scale 2 (1920x1080 Seite → 3840x2160).
    Ein Computer führt nur einen 4K-Render- oder Blender-Render-Vorgang gleichzeitig aus. Einzelframes für die Prüfung aus dem 4K-Endvideo extrahieren: python3 scripts/sheet.py video ....
  7. Ton erst hinzufügen, wenn das Bild steht. Sobald sich das Bild ändert, verschieben sich alle Beats. Musik und Soundeffekte sind Pflicht; der stärkste Beat der Musik trifft den wichtigsten visuellen Punkt;
    Gesamt -14 LUFS, True Peak nicht über -1 dBTP; Video-Stream wird unverändert kopiert, keine Neucodierung. Siehe references/sound.md.
  8. Überarbeitung. Vor jeder Runde erstellen, nach Änderungen erneut Einzelframes extrahieren und selbst prüfen, mit klaren Worten beschreiben, was geändert wurde. Als neue Version speichern, nicht überschreiben oder löschen.
    Ehrlich angeben, was geprüft wurde: Standbilder sind nicht gleich Wiedergabe, Bilder anzusehen ist nicht gleich Mix zu hören.

Regeln für gute Videos

Die vollständige Erklärung steht in references/transitions.md und references/blender-3d.md; hier die wichtigsten Punkte:

  • Jeder Shot entsteht aus dem vorherigen. Kein Ein- oder Ausblenden, keine Überblendungen. Dasselbe Objekt verformt sich, dreht sich, öffnet sich oder zieht sich zusammen – die Augen des Zuschauers müssen nicht neu suchen.
  • Bewegung in der Bildmitte. Stell dir ein Fadenkreuz in der Mitte vor; das Hauptobjekt bleibt immer in seiner Nähe.
  • Das Bild bewegt sich ständig. Auch stehende Shots haben eine ganz langsame Kamerafahrt oder -verschiebung.
  • Eine Bewegung, eine Kurve. Nur eine Richtung: Zoome nur hinein, nicht hin und her; drehe nur in eine Richtung, nicht zurück. Schnell starten, langsam enden, und das Ende etwas länger halten.
  • Text kurz, von unscharf zu scharf – nicht hüpfen, nicht plötzlich vergrößern. Text darf nicht auf dem Hauptobjekt liegen.
  • 3D nur mit einer Lampe, Hintergrund schwarz. Das ist der Hauptgrund, warum es wie ein Studio-Shot aussieht.
  • 3D physikalisch korrekt: Gehäuse schließen bündig; keine Durchdringungen; zwei Objekte, die die Plätze tauschen, bewegen sich auf einer 3D-Umlaufbahn, nicht geradlinig durcheinander; Rotationen glatt, ohne Ruckler.
  • Vergleiche das Modell mit echten Fotos – Proportionen, Rundungen, Bohrungen müssen stimmen.
  • Silhouetten-Übergänge beginnen mit einer Nahaufnahme, dann aufziehen, dann harter Schnitt zu Realfilm. Siehe references/silhouette.md.
  • Bild und Ton nur als Ganzes verschieben, keine Tempovariation, keine Tonhöhenänderung.

Regeln

  • Marken: Nur für Marken arbeiten, die der Kunde besitzt oder für die er eine Nutzungserlaubnis hat. Fremde Marken nur als Übungsprojekte, ohne Vortäuschung offizieller Absender, ohne Werbung, ohne Nachahmung echter Kampagnen.
  • Material: Nur Material verwenden, das der Kunde selbst erstellt hat oder lizenziert hat (Schriften, Musik, Modelle); die Lizenz muss diese Nutzung abdecken.
  • Aussagen: Zahlen und Behauptungen im Video müssen wahr und belegbar sein; keine erfundenen Daten oder Bewertungen.
  • Privatsphäre: Persönliche Informationen aus Screenshots und Realfilm-Material entfernen; Personen vor der Kamera müssen zustimmen.
  • Bezahlte Dienste (Voiceover, KI-Musik usw.) verbrauchen das Budget des Kunden; nur auf dessen Wunsch einsetzen.

Skriptübersicht

SkriptFunktion
scripts/render.mjsHTML-Seite → Standbilder / 4K mp4 / Positionsaufzeichnung (probe) / Storyboard (board)
scripts/sheet.pyStandbilder oder fertiges Video nach Zeit in ein Prüfbild mit Zeitstempeln umwandeln (in Originalauflösung)
scripts/layout_check.pyAbstand zwischen Text und Hauptobjekt, Zentrierung des Hauptobjekts prüfen
scripts/seam_check.pyNahtfehler zwischen zwei Bauteilen in der realen Kameraperspektive (Pixel)
scripts/blender/studio.pyEin-Licht-Studio-Szene + EEVEE/Cycles-Render, verarbeitet GLB/glTF/USDZ/OBJ/FBX, --demo mit Beispielmodell
scripts/blender/motion_check.pyDurchdringungen, Winkelgeschwindigkeit, Rotationssprünge pro Frame prüfen
scripts/silhouette.pyPersonenmaske extrahieren (macOS Vision, optional) → glatte Vektor-Silhouette, kann von Nahaufnahme aufziehen
scripts/audio/synth.pyCode-synthetisierte Soundeffekt-Pakete und Musik-Grundlagen (lizenzfrei)
scripts/audio/mix.pyMusik auf visuelle Einsätze ausrichten, Soundeffekte nach Beat setzen, Sidechain-Ducking, Loudness-Normalisierung, in Video einbetten
scripts/encode.pyEinzelframes (PNG) → mp4
scripts/doctor.pyAbhängigkeiten prüfen, fehlende Pakete und Installationsanleitung anzeigen

Wann welches Datei lesen

Du bist…Lies
Ebene wählen, Aufwand schätzenreferences/layers.md
Storyboard schreibenreferences/storyboard.md
HTML-Seite schreiben, Video rendernreferences/html-engine.md
Übergänge zwischen Shots entwerfenreferences/transitions.md
Physisches Produkt in 3Dreferences/blender-3d.md
Silhouetten, Übergang zu Realfilmreferences/silhouette.md
Musik und Soundeffekte hinzufügenreferences/sound.md
Selbstprüfung vor Abgabereferences/checklist.md
Bild sieht falsch ausreferences/pitfalls.md

Umgebung

Node.js 20+, Python 3.9+ (numpy, Pillow, opencv-python-headless), ffmpeg, Google Chrome oder Chromium.
Ebene 3 benötigt Blender (kostenlos); automatische Silhouetten-Extraktion benötigt macOS 14+, andere Systeme benötigen ein externes Tool zur Maskenerstellung.
Vor dem Start python3 scripts/doctor.py ausführen und dem Kunden mitteilen, was fehlt und wie es installiert wird.
Wenn im Skill-Verzeichnis ein .venv vorhanden ist, Python-Skripte mit .venv/bin/python ausführen (Windows: .venv\Scripts\python); unter Windows python3 durch python ersetzen.

Verwandte Skills