Remotion 3D-Vertikalticker
Diese Fähigkeit bietet ein wiederverwendbares Architekturmuster und eine Komponente zum Erstellen unendlicher, mehrspaltiger 3D-Scrolling-Animationen (oft verwendet für Fotogalerien, 3D-Fotowände, Tech-Stack-Präsentationen oder Abspannläufe) in Remotion.
Funktionsweise
Die Illusion des unendlichen Scrollens wird durch Domänenduplikation und modulare Arithmetik in Kombination mit CSS-3D-Transformationen erreicht:
- Die Mathematik der Unendlichkeit: Wir duplizieren die Inhaltsliste (
[...items, ...items]). Wir berechnen einenprogressvon 0 bis 1 basierend auf der Bildrate und der gewünschten Schleifendauer. Wir verschieben die Spalte von0%auf-50%(oder von-50%auf0%für die Rückwärtsrichtung). Da der Inhalt dupliziert ist, sieht der Frame bei-50%identisch aus wie der Frame bei0%, was eine nahtlose Schleife beim Zurücksetzen erzeugt. - 3D-Perspektive: Eine übergeordnete Hülle wendet
perspective: 1000px,rotateX(20deg)undscale(1.2)an. Die Skalierung ist entscheidend, um sicherzustellen, dass die geneigten oberen und unteren Kanten über die 2D-Bildschirmgrenzen hinausragen und so ein Durchscheinen des leeren Hintergrunds verhindert wird. - Maskierung: CSS-
linear-gradient-Überlagerungen werden absolut oben und unten mit einem hohenzIndexplatziert, um den Inhalt sanft in die Hintergrundfarbe auszublenden.
Verwendung dieser Fähigkeit
Wenn ein Benutzer eine vertikale Scroll-Galerie oder einen unendlichen Ticker anfordert:
- Ressource kopieren: Stelle die generische Komponente aus
assets/VerticalTicker.tsxbereit oder kopiere sie in den Ordnercomponents/animationsdes Projekts. - Konfigurieren: Führe den Benutzer an, die Komponente
<VerticalTicker />innerhalb seiner Remotion-<Composition />zu importieren und zu rendern. - Daten anpassen: Die Komponente ist datenagnostisch. Sie akzeptiert jedes Array von Bild-URLs oder React-Knoten als Spalten. Du kannst unterschiedliche
durationInSecondsunddirection(1 oder -1) pro Spalte angeben, um Parallax-Effekte zu erzielen.
Bereitgestellte Ressourcen
assets/VerticalTicker.tsx: Die hochgradig wiederverwendbare, stark typisierte Remotion-Komponente, die das 3D-Unendlich-Scroll-Muster implementiert.