Communitygithub.com

6秒のキネティックタイトル

短い3行、チップ、フッター、3色から、6秒・1080p のキネティックタイプ題字を MP4 で書き出します。オープナー、リリース告知、リールのイントロ向けです。

6秒のキネティックタイトル とは?

Kinetic Title Drop は 6秒・1920×1080 の文字だけの映像を3ビートで描きます。大きな最初の単語がヘアラインで画面を開き左上に収まり、次の単語が輪郭で落ちてアクセント色で塗りつぶされ、最後の一行がモーションブラーとともに右から入り、アクセントバーが走ります。チップとフッターが最終フレームに残ります。Node.js 22+ と FFmpeg が必要で、出力は本物の MP4 です。ホームページのヒーロー、リリース告知、ソーシャルのイントロに、絵コンテではなく完成した題字フィルムが欲しいときに使います。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/SHARPLEE00/lookbk-skills/tree/main/skills/kinetic-title-drop

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

キネティックタイトルドロップ

3つのビートからなる6秒、1920×1080のタイプのみのフィルム:

  1. 巨大な最初の単語がフレームを開き、ヘアラインスラッシュが通過した後、左上に落ち着きます。
  2. 2番目の単語がアウトラインとしてドロップインし、アクセントカラーで塗りつぶされます。
  3. 決めのラインがモーションスミアを伴って右からワイプインし、アクセントバーがその下をワイプします。チップとフッターがフェードインし、すべてが保持された後、クリーンに終了します。

このテンプレートは HyperFrames コンポジションです。あなたがブリーフを記入し、スクリプトがそれをテンプレートに書き込み、HyperFramesがチェックとMP4のローカルレンダリングを行います。テキストは実際のフォントで測定され、フレームを埋めるようにサイズ設定されるため、短い単語も長い単語も同じスペースに収まります。

必要なもの

  • Node.js 22以降とFFmpegがPATHに含まれていること。
  • HyperFramesは npx で実行します。このテンプレートでテストされたバージョンに固定: npx --yes [email protected]。
  • 最初のレンダリングでヘッドレスChromeがダウンロードされます。render がChromeがないと表示したら、一度 npx --yes [email protected] browser ensure を実行してください。
  • cdn.jsdelivr.net へのネットワークアクセスが必要です。このCDNはテンプレートにGSAPを提供します。ブロックされている場合はトラブルシューティングを参照してください。

このスキルのフォルダは<skill>です。このSKILL.mdがあるフォルダのことです。

手順

1. コピーを取得する

推測できないことは何でも質問してください。すべてのフィールドには制限があり、スクリプトは制限を超える値を拒否します。

フィールド説明制限良い例
line1最初の単語。大きく開き、左上に配置されます。10Ship
line22番目の単語。アウトラインでドロップインし、アクセントで塗りつぶされます。6it
line3決めのライン。最大の行で、その下にバーがあります。12today.
chip右上の小さなピル。バージョン、日付、ステータス。24v2.0 · 公開中
metaLeft左下のフッター。それが何かを数語で。60リリースノート · 14件の修正
metaRight右下のフッター。通常はURLまたはハンドル。40relay.example/changelog

作成のヒント:

  • ライン1と2は上の行を共有するため、一緒に1つのフレーズの始まりとして読めるようにしてください(「Ship / it」、「Notes / that」、「Meet / the」)。ライン3がそれを完結させます。
  • すべて大文字で設定されます。単一の単語が最も良く読めます。ライン3は2つの短い単語にできます。
  • line1 + line2 は約12文字以内に抑えてください。そうしないと、上の行が決めのラインの隣で小さくなります。
  • フッターは約2秒間保持されるため、スキャンしやすいようにしてください。

2. 色を選ぶ

3つの16進数カラー: ground(背景)、ink(テキスト)、accent(アウトライン、塗りつぶし、バー、チップ)。ブランドカラーがあればそれを使ってください。ない場合は、以下のプリセットから始めてください:

プリセットgroundinkaccent
Ember#0f1013#f5f4ef#ff5b2e
Fieldnote#f1ede4#18201c#2f6b4f
Cobalt#0b1020#eef1ff#5b7cff
Paper#fbfaf7#111111#e8462b
Lime#101410#f2f5ee#b6f23a

ink は ground との強いコントラストが必要です。accent は ground に対して少なくとも3:1のコントラストが必要です。ライン2がその色で描画されるためです。check は両方を測定し、どちらかが失敗した場合は通知します。

3. プロジェクトを作成し、ブリーフを適用する

cp -r <skill>/template ./title-drop
cd title-drop

手順1と2のフィールドを使用して、プロジェクト内に brief.json を記述します:

{
  "line1": "Ship",
  "line2": "it",
  "line3": "today.",
  "chip": "v2.0 · 公開中",
  "metaLeft": "リリースノート · 14件の修正 · 3つの新機能",
  "metaRight": "relay.example/changelog",
  "ground": "#0f1013",
  "ink": "#f5f4ef",
  "accent": "#ff5b2e"
}

次に、それをテンプレートに書き込みます:

node <skill>/scripts/apply-brief.mjs . brief.json

これにより、すべての値がテンプレートの宣言された変数(型、長さ、カラー形式)に対してチェックされ、問題があれば一度にすべてリストされます。ブリーフを修正して再実行してください。フィールドを省略して、現在の値を保持することもできます。

2つの完成したブリーフが <skill>/examples/ にあります。

4. チェック

npx --yes [email protected] check --json

check はファイルをリントし、ブラウザで再生し、時間経過に伴うレイアウトを測定し、コントラストをテストします。"ok": true で findings がない場合は準備完了です。レンダリング前にすべての finding を修正してください。コピーが原因で発生する可能性のあるもの:

  • contrast_aa_failure:色の組み合わせが近すぎます。suggestedColor を使用するか、暗いまたは明るい色合いを選んでください。
  • text_box_overflow、clipped_text、content_overlap:値がテンプレートが期待するよりも長い場合。通常はフッターまたはチップが隣の要素に干渉しています。短くしてください。

finding を黙らせるためにテンプレートの構造を変更しないでください。代わりにブリーフを修正してください。

5. レンダリング前に確認する

npx --yes [email protected] snapshot --at 0.3,1.6,3.6,5.2 -o snapshots

これにより、snapshots/ にPNGフレームが書き出されます。フレームを開いて、開始フレーム、2番目の単語が着地するフレーム、そして保持終了フレームを確認してください。単語がチップと衝突していないか、フッターがバーに重なっていないか、アクセントが背景に消えていないかを確認します。

6. レンダリング

npx --yes [email protected] render --quality delivery -o renders/title-drop.mp4

プロジェクトの package.json には、npm run check および npm run render と同じコマンドが含まれています。迅速なテストには --quality draft を、ソーシャル向けのより滑らかな結果には --fps 60 を使用してください。

7. 引き渡し

renders/title-drop.mp4 へのパスと、手順5からの静止画1枚を相手に渡してください。別のバージョンが必要な場合にどのフィールドを変更すればよいかを伝えてください。brief.json を編集し、手順3から6を再実行するだけです。

タイミングマップ

時間 (秒)動作
0.00line1 がすでに画面に表示されており、大きく中央に配置されたサムネイル状態
0.00–0.42アクセントのヘアラインスラッシュが通過し、フェードアウト
0.80–1.35line1 が左上に移動
1.35–1.77line2 がアウトラインとしてドロップイン
1.90–2.06line2 がアクセントカラーで塗りつぶされる
2.05–2.55line3 が右からワイプイン
2.60–3.05アクセントバーが line3 の下にワイプイン
3.10–3.50チップ、フッター、コーナーマークがフェードイン
3.50–5.45保持
5.45–5.80すべてが短いブラーを伴って上方に終了

複数のバージョンを一度に

複数のバリエーション(言語、製品、日付ごとなど)をレンダリングするには、ブリーフのJSON配列を記述し、一度にレンダリングします。各オブジェクトは完全または部分的なブリーフであり、すでに適用されている値にマージされます:

npx --yes [email protected] render --batch variants.json --quality delivery -o "renders/{index}.mp4"

--batch はレンダリングごとに変数を設定するため、毎回 apply-brief を実行する必要はありません。出力パスには {index} や {line3} のようなプレースホルダーが必要です。そうしないとファイルが上書きされます。まず代表的なブリーフで check を実行し、スナップショットで最も長いコピーを確認してください。

トラブルシューティング

  • レンダリングがハングし、その後静止フレームが表示される、または sub_timeline_script_failure が報告される。 GSAPが読み込まれていません。ネットワークが cdn.jsdelivr.net をブロックしている場合は、プロジェクト内で npm i [email protected] を実行し、node_modules/gsap/dist/gsap.min.js を assets/vendor/ にコピーし、index.html の <script src> を assets/vendor/gsap.min.js に変更してください。
  • 単語が間違ったフォントのように見える。 テンプレートはLeague GothicとJetBrains Monoを使用しており、これらはHyperFramesにバンドルされています。フォントを変更する場合は、別のバンドルファミリーを使用するか(npx hyperframes docs compositions で一覧表示)、@font-face を追加するか、そうしないと check が失敗します。
  • 色が変わらない。 手順3から apply-brief を再度実行し、Applied N values と表示されることを確認してください。CSSの :root カラーを編集しても効果はありません。変数が優先されます。
  • 異なる長さにしたい? 6秒に保ってください。ビートはそのウィンドウ内に収まるようにタイミングが設定されています。ルートの長さを伸ばすと、保持時間が長くなるだけです。

ファイル

  • template/:HyperFramesプロジェクト(index.html、hyperframes.json、package.json)。
  • scripts/apply-brief.mjs:ブリーフを検証し、テンプレートに書き込みます。依存関係はありません。
  • examples/relay-v2/ および examples/fieldnote-beta/:完成したブリーフ。Lookbkのプレビューはこれらからレンダリングされています。
  • NOTICE.md:このスキルが使用するサードパーティソフトウェア。

Individual skills in this repo

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

関連スキル