アニメーション動画
あなたはストーリーから短編カートゥーン映画を制作します。ユーザーからはストーリー、ログライン、シーンリスト、またはスクリプトが与えられます。完成したmp4とInstagram用キャプチャを納品します。すべての工程を自分自身で行い、途中で承認を求めるために止まることはありません。
このスキルが制作する映像は、手描きアニメーションのように見えます。キャラクターは潰れたり、伸びたり、瞬きしたり、反応したり、カメラは決して静止せず、紙とインクのような質感があり、映像はナレーションに正確に合わせられます。静止画にテキストを載せただけのスライドショーのように見えてはいけません。このスキルのすべては、この結果を確実に得るために存在しているため、手順を順番に守り、独自のシステムを発明する代わりにキットを使用してください。
SK はこのスキルのフォルダ ~/.claude/skills/animation-video を意味します。
仕組み(一度読んでください)
- 映像全体は、あなたが記述する1つのJavaScriptファイル
film.jsです。これは、任意の時刻tにおける画面の状態を記述します。スクリプトがヘッドレスChromeとffmpegでフレームごとにレンダリングし、mp4を作成します。ビデオエディタや画像生成は使用しません。 - ナレーションは最初に、各行ごとに生成されます。その実際のタイミングは
timeline.jsに書き込まれます。映像のすべての瞬間は、ナレーションを基準として定義されるため(例:「ライン4の開始の0.2秒前」)、映像とナレーションがずれることはありません。 - キットは、難しい部分を既製品として提供します。エンジン(イージング、カメラ、シーン、キャプション)、2つの完全なアートスタイル(キャラクター、ポーズ、小道具付き)、および25のテスト済みアニメーションレシピが含まれます。
- 作業の確認は、静止画フレームをレンダリングして見ることで行います。これは必須です。見ていない映像を判断することはできません。
手順
以下の手順からタスクリストを作成し、順番に作業を進めてください。
| # | 手順 | 成果物 |
|---|---|---|
| 0 | プリフライト | すべてのツールが存在すること、VoiceStudioが動作していることを確認 |
| 1 | ストーリーを読み、スタイルを選ぶ | 決定事項、プロジェクトフォルダを作成 |
| 2 | スクリプトを書く | vo/script.json、最大130語 |
| 3 | ナレーションを生成する | 各行ごとにチェック済みのwavファイル |
| 4 | タイムラインを構築する | timeline.js、映像の長さ35~45秒 |
| 5 | ショットを計画する | film.js の先頭にあるショットプランのコメント |
| 6 | 映像を書く | film.js、シーンごとに、進みながら静止画をチェック |
| 7 | 映像全体をレビューする | コンタクトシートを確認、欠陥を修正 |
| 8 | エクスポートする | mp4 |
| 9 | 納品する | mp4 + ナレーション付きスクリプト + Instagramキャプチャ + 正直なメモ |
手順 0 - プリフライト
bash ~/.claude/skills/animation-video/scripts/preflight.sh
すべての行がOKと表示される必要があります。VoiceStudioがMISSINGの場合は、ユーザーにVoiceStudioアプリを開いてもらい、待つように依頼してください。決して別の音声に代用したり、ナレーションをスキップしたりしないでください。スクリプトが表示するコマンドで、その他の問題を修正してください。
手順 1 - ストーリーを読み、スタイルを選ぶ
ストーリーがまったくない場合を除き、ユーザーに質問しないでください。以下のことは自分で決定してください。
- スタイル。 2種類あります。
SK/references/characters-ink.jpgとcharacters-paper.jpgを見て確認してください(画像はReadツールを使用)。ink:太くて不安定なインクの輪郭、ずんぐりしたセリフ体の看板、温かみのあるレトロカートゥーン。悪役、ドタバタ劇、店、通り、物理的なギャグがあるストーリーに最適です。paper:ペーパーコラージュ風、輪郭なし、柔らかな影、エレガントなセリフ体。電話、アプリ、リンク、自然、より柔らかい、またはモダンな雰囲気のストーリーに最適です。- ユーザーがスタイルを指定した場合は、それを使用します。そうでない場合、作業フォルダに以前のエピソードが既にある場合は、別のスタイルを使用します(
head -3 */style.js 2>/dev/nullを実行して、どちらが使用されたかを確認してください)。それ以外の場合は、ストーリーに基づいて選択します。
- キャスト。 主人公(中小企業の経営者またはメインキャラクター)は誰ですか?障害(悪役、混乱した客、迷路)は誰、または何ですか?主人公は2人で十分です。
- プロジェクトフォルダ。 ストーリーから短い名前を付け、ユーザーの作業フォルダに作成します。
bash ~/.claude/skills/animation-video/scripts/new_project.sh "./film-<短い名前>" ink # または paper
これにより、動作するスターター film.js を含むプロジェクトが作成されます。そのスターターファイルを今すぐ読んでください。短く、維持する正確な構造が示されています。
手順 2 - スクリプトを書く
最初に SK/references/story.md を読んでください。そこには構造、語彙の制限、および実際の例が記載されています。最も重要なルールは次のとおりです。
- 合計で最大130語。 ナレーションは約3.2語/秒で話されるため、130語で約43秒です。ユーザーのスクリプトがそれより長い場合は、自分で短く編集し、最高のセリフとストーリーの順序を維持してください。質問はせず、最後に何をカットしたかを伝えてください。間延びした長い映像よりも、動きのある短い映像の方が常に優れています。
- ビートごとに1行、各行5~16語、IDは
l01、l02... 各行は1つの音声クリックになり、通常は1つの視覚的なアイデアになります。 - 耳で聞いてわかるように書いてください。数字は単語に(「40」ではなく「forty」)、絵文字や記号は使わず、ブランド名は発音どおりに綴ってください(SiteKeepは「Site Keep」のように)。
- 最終行は、視聴者にコメントを促すフックにします(以下のBrandのデフォルトを参照)。
<project>/vo/script.json に書き込みます:
{"l01": "Meet Maya. She makes custom treats from scratch.",
"l02": "So she set up shop inside a giant online marketplace."}
手順 3 - ナレーションを生成する
python3 ~/.claude/skills/animation-video/scripts/voice.py "./film-<短い名前>"
これには1行あたり約20秒(スクリプト全体で4~5分)かかります。10分のタイムアウトを設定して実行してください。途中で止まった場合は、同じコマンドを再度実行してください。既に音声化された行は保持されます。ユーザーの音声(プロファイル 3a02464e、