Videos mit Storyboard erstellen (Coding-Videos)
Bedingungen und Referenzen
- Nur wenn der Benutzer tatsächlich
/goaleingibt, um ein Ziel zu starten oder fortzusetzen, wird die Dateireferences/goal-director.mdvollständig gelesen und die darin enthaltenen Regisseur-Einschränkungen befolgt. - Bei normalen Szenenbearbeitungen, -änderungen, -vorschauen, -renderings oder reinen Diskussionen über
/goalwird diese Datei nicht gelesen. Es ist nicht erlaubt, sie „vorsichtshalber“ vorab zu laden.
Erst planen, nicht vor der Bestätigung coden
- Alle Frames im Verzeichnis
.media/storyboard/ansehen und nach „durchgehende Existenz oder Transformation desselben Subjekts“ gruppieren. - In
STORYBOARD.mddie Gruppierung, Szenenabhängigkeiten und die Materialliste notieren; die Materialien müssen ihre Bildschirmabmessungen angeben. - Bei Szenen mit innerer kontinuierlicher Transformation in
RENDER_STRATEGY.mddie möglichen Lösungen vergleichen und die Implementierungsmethode festlegen →references/render-strategy.md. - Die Gruppierungstabelle und die Materialliste dem Benutzer zeigen und auf Bestätigung warten.
timeline.json ist die einzige Planungsquelle für Szenennummern, Start-/Endzeiten und Gesamtdauer. Die Zeitleiste nicht in mehreren Markdown-Dateien redundant pflegen.
Hauptarbeitsablauf
- Für Szenen derselben Gruppe zuerst einen gemeinsamen Subjekt-Renderer, CameraRig, Asset-Loader und Szenenzustand einrichten; die Szenendatei enthält nur Zustands- und Zeitparameter.
- Zuerst die Storyboard-Keyframes statisch reproduzieren und als prägnante Kontaktaufnahme-Tabelle zur Benutzerabnahme zusammenstellen; wenn die Endpunkte nicht bestehen, keine Interpolationen oder Easing durchführen.
- Nach Bestehen der statischen Phase die Animation erstellen und nur eine ziehbare Vorschau zur Abnahme übergeben.
- Nachfolgende Szenen entwickeln sich aus dem bestandenen Endframe der vorherigen Szene weiter: Fortsetzung, Transformation, Hinzufügen oder Verschwinden; vorhandene Subjekte nicht neu zeichnen oder überschreiben →
references/scene-continuity.md. - Nach Bestehen aller Szenen in die einzige Gesamtzeitleiste einfügen, Nähte, Gesamtdauer und eine vollständige Wiedergabe prüfen; erst nach Bestätigung durch den Benutzer das Endvideo rendern.
Bereits bestandene Szenen, Subjekte und Materialien sind gesperrt. Wenn das Problem von Abmessungen, Positionen, Zuschnitten, Kameras oder Effekten herrührt, nur die entsprechenden Parameter ändern; Materialien nicht neu generieren, es sei denn, der Benutzer lehnt das Material selbst explizit ab.
Parallel nach Abhängigkeiten, nicht nach Szenennummer
- Szenen mit kontinuierlicher Transformation desselben Subjekts oder solche, die den Endframe der vorherigen Szene erben müssen, werden in der Reihenfolge der Abhängigkeit erstellt.
- Unabhängige Szenen, Hintergründe, transparente Materialien und vollständige Szenen, die nicht von der Komposition der Vorgängerszene abhängen, können parallel erstellt werden.
- Sobald die Schnittstelle der gemeinsamen Mutterszene stabil ist, können Zustände, Overlays und interne Animationen verschiedener Szenen parallel bearbeitet werden.
- Parallele Zweige dürfen nur in ihr eigenes Verzeichnis schreiben; die Gesamtzeitleiste, die Quellcodedatei der gemeinsamen Mutterszene und bereits bestandene Szenen werden nicht geändert; die Ausgabe besteht nur aus einer Kontaktaufnahme-Tabelle oder einer Vorschau.
- Wenn eine nachfolgende Szene nur vom Eintrittsübergang abhängt, können zuerst die Hauptszene und die Animation abgeschlossen und dann die Parameter des Endframes der vorherigen Szene übernommen werden.
Kürzester Ausführungspfad und Prompt-Einschränkungen
- Jeder Ausführungsprompt konzentriert sich nur auf ein einzelnes zu lieferndes Objekt, das der Benutzer aktuell sehen möchte; er beschreibt den Schreibbereich, die minimalen Schritte, den klaren Stopppunkt und die in dieser Runde nicht zu erledigenden Aufgaben; Phasenvorschauen nicht zur Endabnahme ausweiten.
- Wenn der Benutzer „Vorschau“ sagt, ist der Standardpfad: notwendige Bearbeitungen oder Mounts abschließen → Bestätigen, dass die Seite geladen werden kann → Studio starten → Link zurückgeben. Nicht zuerst mit
check, Batch-Snapshots, Kontaktaufnahme-Tabellen, Frame-für-Frame-Naht-Tabellen, Hashes oder vollständiger Wiedergabe blockieren. - Temporäre Kombinationen, partielle Szenenverkettungen und Debug-Einstiege sind keine Gesamtintegration. Nur den Benutzer durchgehende Bilder sehen lassen; die Naht-für-Naht-Abnahme, die Gesamtdauerprüfung und die vollständige Wiedergabe bleiben der einzigen finalen Integrationsphase nach Bestehen aller Szenen vorbehalten.
- Die Validierung muss direkt die aktuelle spezifische Frage beantworten können. Wenn kein Fehler oder klares visuelles Problem vorliegt, keine zusätzlichen Diagnoseskripte, Versionserkennungen, Regressionstabellen, Reverse-Seek, wiederholte Screenshots oder „nicht riskieren“-Checks hinzufügen.
- Innerhalb derselben Sitzung nicht mehrere Browser, Studios,
check-,snapshot- oderrender-Prozesse parallel oder seriell stapeln. Nur einen Vordergrundprozess ausführen, der für die aktuelle Lieferung erforderlich ist; wenn bereits ein nutzbares Ergebnis vorliegt, sofort ausliefern. - Wenn eine Nicht-Rendering-Validierung mehrere Minuten lang keine neue Ausgabe hat oder offensichtlich länger als normal dauert, sofort abbrechen und den direktesten Engpass prüfen; nicht minutenlang ohne Rückmeldung warten, nicht identisch wiederholen oder weitere Validierungen anhängen.
- Prompts für Ausführungssitzungen standardmäßig mit „fertig und anhalten“ versehen: Nach Erreichen der aktuellen Benutzeranforderung das Ergebnis zurückgeben, nicht selbst in die nächste Phase übergehen und die Arbeit nicht aufgrund technischer Prüfungen fortsetzen.
Darstellungs- und Bewegungsregeln
- Komplexe statische Requisiten als hochwertige transparente Texturen; Strukturgeometrie und regelmäßige Grafiken als Canvas/SVG; Partikel, Fragmente, Rauch und Lichtpunkte als Canvas.
- Kontinuierliches Wachstum, Eindringen und Umhüllen müssen Geometrie-, Textur- und Animationsebenen trennen. Was sich ausdehnt, ist die Geometrie, nicht die Texturpixel.
- Eine einzelne 2D-Textur kann keine Oberseiten, Seiten und Verdeckungen erzeugen, die im Originalbild nicht vorhanden sind; wenn echte Perspektive benötigt wird, Multiwinkel-Materialien oder 3D verwenden und zuerst die Näherungsgrenzen erläutern.
- Kamera nach hinten bewegen, Szene herauszoomen und Objekt verkleinern sind nicht dasselbe →
references/camera-motion.md. - Wenn dasselbe Layout- oder Positionierungsproblem nach drei Runden immer noch nicht gelöst ist, ein minimales Tune-Panel erstellen →
references/tune-panel.md.
Materialien und Determiniertheit
- Die Seitenlänge des Quellbilds darf nicht mehr als das Doppelte der Bildschirmanzeigegröße betragen; bevorzugt WebP q85; Einzelszenenbilder maximal 3 MB →
references/asset-budget.md. - Beim Rendern: Kein Netzwerk. Keine CDN-Skripte oder Online-Schriftarten verwenden.
- Im eigenen Code
Math.random,Date.nowoder Polling nicht verwenden; vor dem ersten Zeichnenawait img.decode()ausführen.
Einstiege und Zustand
/index.html: Einziger Einstieg für die Gesamtzeitleiste und das finale Rendering; immer von Sekunde 0 initialisieren./compositions/NN-name.html: Debug-Einstiege für Gruppen oder Einzelszenen; müssen unabhängig initialisierbar sein.- Die Gesamtzeitleiste muss eine echte Kombination sein; kein iframe oder Seitenwechsel zum Zusammenfügen verwenden.
HANDOFF.mdspeichert nur den aktuellen gültigen Zustand, gesperrte Elemente, die aktuelle Datei, kurze Ablehnungen und den nächsten Schritt; kurz halten, keine Prozessaufzeichnungen, langen Prompts oder historische Berichte speichern.
Minimale Abnahme und Lieferung
- Statische Phase: Eine Kontaktaufnahme-Tabelle mit den Storyboard-Keyframes + „Warte auf Abnahme“.
- Animationsphase: Eine ziehbare Vorschau + „Warte auf Abnahme“.
- Temporäre sequenzielle Vorschau: Seite ladbar + Studio-Link; keine Kontaktaufnahme-Tabelle, keine Frame-für-Frame-Naht-Prüfung, kein formales
check. - Korrekturphase: Korrigierte Frames oder Vorschau + ein Satz Erklärung.
- Finale Phase: Gesamtvorschau oder Video + Dauer und Ausgabepfad.
- Tägliche Prüfungen nur: Seite ladbar bestätigen, Material sichtbar, Keyframes korrekt; formales
checknur einmal ausführen bei Animationsfixierung, finaler Integration oder wenn ein konkretes Laufzeitproblem auftritt. Keine wiederholten Lints, Checks, Batch-Snapshots oder Frame-für-Frame-Regressionen.
Standardmäßig keine Audit-Skripte, Validierungs-JSONs, Checklisten, Lieferanweisungen, Identitäts-/Mesh-/Partikelberichte, Frame-für-Frame-Hashes, Pixeldifferenzen, wiederholte Renderings, Reverse-Drag-Validierungen oder Mehrfachversionen von Kontaktaufnahme-Tabellen generieren. Bei einem konkreten Problem nur den relevanten Code, Fehler oder einen einzelnen Problemframe prüfen, das Ergebnis nach der Reparatur zeigen; nur auf ausdrücklichen Wunsch des Benutzers einen formellen Diagnosebericht erstellen.