remotion-3d-ticker について
Remotion 向けの再利用可能なコンポーネントと設計パターンで、複数列の 3D 縦スクロールアニメーションを無限ループさせます。ギャラリーや紹介画面、クレジットロール向けで、コンテンツの複製と CSS 3D 変換を使います。
主な機能
- 01複数列の無限スクロール
- 02CSS 3D パースペクティブ変換
- 03上下のフェードマスク
- 04列ごとの時間と方向の設定
- 05画像 URL または React ノードに対応
活用シーン
- 01スクロールする写真ギャラリーの作成
- 02技術スタック紹介の作成
- 03ループするクレジットロールの描画
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ vibe-motion/ skills --skill remotion-3d-tickerインストール後、Claude Code で/remotion-3d-tickerを入力して読み込まれたか確認します。
同梱ファイルassets/VerticalTicker.tsx
詳細
Remotion 3D 縦型ティッカー
このスキルでは、Remotion で無限に複数列を 3D スクロールするアニメーション(写真ギャラリー、3D写真スクロールウォール、技術スタックの紹介、クレジットロールなどでよく使われます)を作成するための、再利用可能なアーキテクチャパターンとコンポーネントを提供します。
仕組み
無限スクロールのように見せるには、コンテンツの重複と剰余演算を CSS 3D 変換と組み合わせます。
- 無限スクロールの計算: コンテンツのリスト(
[...items, ...items])を複製します。フレームレートと希望するループ時間に基づいて、0 から 1 までのprogressを計算します。列を0%から-50%(逆方向の場合は-50%から0%)まで移動させます。コンテンツが複製されているため、-50%のフレームは0%のフレームと同じように見え、リセット時にシームレスなループが作られます。 - 3D パースペクティブ: 親ラッパーに
perspective: 1000px、rotateX(20deg)、scale(1.2)を適用します。傾いた上下の端が 2D 画面の範囲を超えて広がるようにするには、この拡大縮小が重要です。これにより、背景が空白の領域から透けて見えるのを防げます。 - マスキング: CSS の
linear-gradientオーバーレイを上部と下部に絶対配置し、高いzIndexを指定して、コンテンツが背景色へ滑らかにフェードするようにします。
このスキルの使い方
ユーザーから縦スクロールギャラリーや無限ティッカーを求められた場合は、次の手順に従います。
- アセットをコピーする:
assets/VerticalTicker.tsxにある汎用コンポーネントを、ユーザーのプロジェクトの components/animations フォルダーに提供またはコピーします。 - 設定する: Remotion の
<Composition />内で<VerticalTicker />コンポーネントをインポートしてレンダリングするよう、ユーザーを案内します。 - データに合わせる: このコンポーネントはデータに依存しません。任意の画像 URL 配列または React ノードを列として受け取ります。視差を実現するには、列ごとに異なる
durationInSecondsとdirection(1 または -1)を指定できます。
提供されるアセット
assets/VerticalTicker.tsx: 3D 無限スクロールパターンを実装する、汎用性が高く、型安全な Remotion コンポーネント。
コメント
Markdown 対応