ブログ

AI 動画のどのショットでも同じキャラクターを保つ方法:顔、衣装、声

· Sumi Studio チーム

最初のショットはうまく生成できた。ところが 2 つ目のショットでは鼻の形が少し違い、ジャケットの色が変わり、ようやく彼女が話し出すと別人の声になっている。AI 動画でもっともよくある問題のひとつで、ストーリーのショット数が増えるほどひどくなります。

このガイドでは、視聴者に「同じ人物だ」と信じてもらうために変えてはいけない 3 つの要素、つまり顔、衣装、声を扱います。多くのガイドは顔の話で終わりますが、AI 短編映画が破綻しやすいのは声です。そのため声には独立したパートを設けています。

どの手順も Sumi Studio のキャンバス上で行い、ほとんどの手順にはそのままコピーできるプロンプトを付けています。

このガイドの読み方

初めて試す場合は、キャラクター 1 人、ショット 2 つ、セリフ 1 行の小さなテストから始めてください。それを使ってパート 2、3、4 を進めると、全体の流れがつかめます。

短編映画やシリーズを本格的に企画している場合は、最初から順番に読んでください。パート 5 では一貫性が崩れやすいショットをまとめているので、再生成の回数を大きく減らせます。

キャンバス上の各要素の役割は次のとおりです。

キャンバス上の要素役割
画像ノードキャラクターとキャラクターシートを作り、必要に応じてショットの最初のフレームも作る
音声ノードテキストを音声に変換する。キャラクターのボイスをクローンしたりデザインしたりする場所でもある
エレメントキャラクターの画像、説明、ボイスを保存し、どのノードからでも @ で呼び出せるようにする
動画ノード参照とプロンプトからクリップを生成する
あなた見た目とボイスを承認し、各ショットの出来を判断する

パート 1:キャラクターが変わってしまう理由

生成は毎回ゼロから始まります。モデルは直前に作ったクリップを覚えていません。手がかりになるのは、そのリクエストで渡したもの、つまりプロンプトと添付した参照画像や音声だけです。

そのため参照がテキストだけだと、モデルは「30 代の、黒いショートヘアの女性」を毎回少しずつ違う形で解釈します。小さな違いが 10 ショットで積み重なり、最後には別人になってしまいます。

解決策は、すべてのショットで同じ視覚参照と同じ音声参照をモデルに渡し、説明も毎回同じ書き方にすることです。キャンバス上では、キャラクターを一度だけ保存し、それをすべてのショットにつなぐという形になります。

パート 2:顔と衣装を固定する

2.1 キャンバスでキャラクターを作る

新しいキャンバスを開き、Tab を長押ししてノードホイールを表示します。「画像」を選んで画像ノードを追加します。

ノードの下のプロンプト欄にキャラクターを書きます。画風は完成した映画と同じにしてください。顔の形、髪型、肌、体格、そして靴に至るまでの服装すべてなど、固定しておきたい要素を残らず書きます。無地の背景に全身を描くよう指定すると、シーンの中にキャラクターから注意をそらすものがなくなります。

小さなディテールは位置も書きます。「左眉の上に小さな傷」や「右手に銀の指輪」と書けば同じ位置に保たれますが、「傷」「指輪」だけだとショットごとに位置が動きます。

結果がイメージと違う場合は、ノードを再生成します。各ノードには履歴が残るので、あとの結果のほうが悪ければ前の試行に戻せます。

2.2 キャラクターシートにする

画像 1 枚では足りません。モデルが複数の角度からキャラクターを見られないと、後頭部や横顔、靴を勝手に作り出してしまいます。

キャラクターノードの横にあるプラスをクリックし、ドラッグして新しい画像ノードを作ります。これでキャラクター画像が新しいノードの参照になります。下のプロンプトを新しいノードに貼り付けてください。どのキャラクターにも使えるので、そのまま使い回せます。

キャラクターシート用プロンプト(画像ノード)
Create a character reference sheet of the character in the reference image. Keep the character's design exactly as shown: same face, hairstyle, hair color, eye color, skin tone, body proportions, outfit, accessories and colors. Do not redesign, restyle or add anything.

Layout: one single horizontal row of four full-body views on the left, side by side, never stacked on top of each other. The large face close-up sits on the right side of the sheet. Every full-body view has the same height and runs from the top of the head to the bottom of the feet, with empty gray space above the head and below the feet.

1. Full-body front view: facing the camera, standing straight, arms slightly away from the body, showing the face, full outfit and accessories.
2. Full-body side view: exact 90 degree profile, standing straight, showing the nose, jawline, hair shape and outfit from the side.
3. Full-body 3/4 view: body and face turned diagonally, about 45 degrees from the camera, standing straight.
4. Full-body back view: standing straight, showing the hairstyle, the back of the outfit, the back of the legs and both feet.
5. Large face close-up: head and shoulders, facing the camera, neutral expression, sharp and detailed.

The character has the same face in every view, with the full head visible in all poses. All four full-body views show the complete body including knees, calves, ankles and feet, nothing cropped, same scale, same standing pose and same neutral expression. Plain medium gray studio background, soft even studio lighting, no props, no text, no labels, no extra characters.

ノードのパラメーターで、モデルが対応していればアスペクト比を 21:9 に、対応していなければ 16:9 にします。横長にしておくと、4 つの全身ビューが切れずに収まります。

先に進む前にシートを確認してください。どのビューも同じ顔、同じ髪型、同じ服でなければなりません。ずれているビューがあれば、ここで再生成します。シートのミスは、それを使うすべてのショットに引き継がれるからです。

キャンバス上のキャラクターシート。1 枚のキャラクター画像から作った 4 つの全身ビュー(正面、側面、斜め 45 度、背面)と大きな顔のクローズアップ。

2.3 キャラクターをエレメントとして保存する

Sumi Studio はエレメントでキャラクターを記憶します。エレメントには名前、短い参照名、参照画像、ボイスが入ります。どのノードのプロンプトでも @ と参照名を入力すると、その生成に画像が参照として自動で添付されます。

いちばん手早いのは、キャンバス上で直接作る方法です。

  1. キャラクターシートのノードを右クリックし、「エレメントを作成」を選びます。「新規エレメント」ウィンドウが開き、シートがすでに参照画像として追加されています。
  2. カテゴリを「キャラクター」にし、名前と参照名を付けます(例:@mara)。
  3. 説明には、固定のディテールを短いフレーズでいくつか書きます。説明は生成のたびに名前と一緒に送られるので、変わらない要素だけにしてください(例:「黒のショートボブ、左眉の上に小さな傷、オリーブグリーンのボンバージャケット、白いスニーカー」)。
  4. 「作成」をクリックします。

「素材」のエレメントから作ることもできます。「新規エレメント」をクリックし、「参照画像を追加」でシートをアップロードします。顔のクローズアップを別の画像として追加することもできます。

Kling O3 以降を使う場合は、キャラクターの短い動画を 1 本追加することもできます(MP4 または MOV、3〜8 秒、1920×1080 または 1080×1920)。Kling はこれをビデオ被写体として使います。ほかのモデルは画像だけを使います。

キャラクターシートのノードを右クリックして「エレメントを作成」を選ぶと、シートが参照画像として追加された状態で「新規エレメント」ウィンドウが開きます。

2.4 衣装ごとにエレメントを分ける

ストーリーの中でキャラクターが着替える場合は、2 着目の衣装用に 2 つ目のエレメントを作ります(例:@mara と @mara-night)。キャンバス上でキャラクターシートを新しい画像ノードにつなぎ、同じキャラクターが新しい衣装を着た姿を生成させ、そこからシートを作って 2 つ目のエレメントとして保存します。顔のクローズアップはどちらも同じものにしてください。

1 つのエレメントに 2 着の衣装を入れると、同じ問いに対して 2 つの答えをモデルに渡すことになり、両方が混ざった結果になります。

先に進む前に、次の点を確認してください。

  • シートのどのビューも顔と服が同じ
  • 小さなディテールに位置(左右、上下)を書いた
  • エレメントの説明には変わらない要素だけを書いた
  • 衣装ごとにエレメントがある
同じキャラクターの 2 着目の衣装。最初のキャラクターシートを新しい画像ノードにつなぎ、新しい装いには専用のシートとエレメントを用意しています。

パート 3:声を固定する

どのショットでも見た目が完璧でも、声が変わればキャラクターに違和感が出ます。セリフを生成できる動画モデルは、手本となる声を渡さないかぎり、毎回自分で声を選んでしまいます。

Sumi Studio では、ボイスはエレメントの一部です。キャンバスでボイスを作り、それをエレメントに設定できます。

3.1 キャンバスでボイスをクローンする

左のメニューのプラスをクリックし、「オーディオ」から「音声」を選びます。音声ノードが追加されます(キャンバス上では「テキストからオーディオ」と表示されます)。ノードの下のバーで、モデルの隣にある現在のボイス名をクリックすると「ボイスを選択」が開き、ボイスライブラリ、自分のボイス、お気に入り、各エレメントのボイスが表示されます。

「ボイスをクローン」をクリックします。短い文章を 10〜20 秒読み上げるか、録音ファイルをアップロードします。

クローン画面には、その音声モデルの録音条件が表示されます。Qwen Audio 3.1 TTS Plus の場合、5 秒以上途切れずに話していること、間が 2 秒未満であること、音楽・歌声・ノイズが入っていないことが条件で、形式は WAV、MP3、M4A、サイズは 10 MB 以下、長さは 60 秒以下です。クローンするのは自分の声か、使用許可を得た声だけにしてください。

3.2 説明文からデザインする

知っている誰の声にも似ていないキャラクターなら、説明文からボイスをデザインします。同じ手順で音声ノードから「ボイスを選択」を開き、「ボイスをデザイン」をクリックしてフォームに入力します。

  1. ボイス名:あとで見つけやすいよう、キャラクターの名前(例:Mara)にします。
  2. モデル:音声モデルを選びます。ボイス料金は、そのボイスで初めて音声を生成したときに 1 回だけかかります。
  3. プレビューテキスト:ボイスを試聴するためにモデルが読み上げるセリフです。必須で、最大 500 文字、長さに応じて課金されます。キャラクターが実際に言いそうなセリフを、狙いどおりのトーンで書いてください。
  4. 声の説明:年齢、トーン、話す速さで声を説明します。「かっこいい」「いい感じ」のようなあいまいな言葉は、モデルがさまざまに解釈してしまうので避けます。
  5. 言語と性別:どちらもキャラクターに合わせて設定します。
  6. 「ボイスを生成」をクリックします。
プレビューテキスト
I told you I'd come back, and here I am. It's been a long time since I walked these streets at night. The rain hasn't changed, the neon signs haven't changed, and you still leave the back door open. Don't look so surprised. I'm not here to make trouble. I just need one answer, and then I'll be gone before the sun comes up. So sit down, pour yourself a drink, and tell me the truth this time. Who sold us out that night? Take your time. I've waited three years, I can wait a little longer.
声の説明
A woman in her early 30s, low and slightly husky voice, calm and measured pace, speaks quietly but clearly, a little dry and sarcastic.

新しいボイスは「ボイスを選択」の「マイボイス」に表示されます。

音声ノードから開いた「ボイスをデザイン」のフォーム。ボイス名、モデル、プレビューテキスト、声の説明、言語、性別。

3.3 ボイスをキャラクターに設定する

「エレメント」で対象のエレメントに戻ります。声を設定する場所は 2 つあります。

  • 「ボイス」で、「自分のクローンボイス」からクローンまたはデザインしたボイスを選びます。
  • 「キャラクターの参照ボイス」で、2〜10 秒のクリップを選ぶかアップロードします。キャラクターを @ で呼び出したとき、Seedance、Wan、Hailuo はこのクリップを使います。

よい参照クリップとは、1 人がはっきり話していて、音楽も背景ノイズもなく、いちばんよく使いたいトーンになっているものです。普段は落ち着いたキャラクターなら、叫んでいるクリップは使わないでください。

Kling は Kling でクローンしたボイスしか使いません。Kling の動画でもキャラクターの声を同じに保ちたい場合は、「ボイス」で Kling でクローンしたボイスを選んでください。

もう 1 つ注意点があります。キャンバス上のノードはエレメントのボイスを取り込むとき、そのコピーを保持します。あとでエレメントのボイスを変えても、すでに作ったノードは古いボイスのままです。ショットを組む前にボイスを決めておきましょう。

エレメントのボイス設定。「ボイス」にはクローンまたはデザインしたボイス、「キャラクターの参照ボイス」には 2〜10 秒のクリップを設定します。

パート 4:すべてのショットでキャラクターを使う

4.1 キャラクターは必ず @ で呼び出す

Tab を長押しして、ショットごとに動画ノードを追加します。ノードの下のプロンプト欄で @ を入力し、キャラクターを選びます。これでシートとボイスが添付されます。キャラクターを言葉で説明しただけで @ を付け忘れたショットこそ、顔がずれるショットです。

新しい動画ノードは「テキストから動画」モードで始まり、このモードではキャラクターの参照が使われません。生成する前に切り替えてください。プロンプトの下の設定バー(「テキストから動画 · 16:9 · 480P · 8s」のように表示されています)をクリックして「パラメーター」を開き、「生成方法」で「万能参照」を選びます。このモードでは、モデルがキャラクターの画像とボイスの両方を使います。

4.2 ショットの内容を書き、見た目はエレメントに任せる

ショットのプロンプトには、何が起きるか、つまり動き、カメラ、場所、光、セリフを書きます。顔をもう一度説明する必要はありません。ショットごとに違う言葉で書き直すと、かえってモデルが参照から離れてしまうことがあります。

背景は短く、でも具体的に書きます。背景がないと、多くのモデルは何もない殺風景なセットを出してきます。

ショット用プロンプト(動画ノード、万能参照)
8-second shot.
@mara walks toward the camera along a narrow street at night, wet pavement with neon reflections, a few closed shops in the background.
Medium shot, eye level, slow push-in.
She stops, looks up and says quietly: "I told you I'd come back."
Calm, low voice. Only the sound of rain and her footsteps. No music, no subtitles.

生成する前に、そのショットに必要なクレジットがノードに表示されます。

4.3 いちばん大事なショットは最初のフレームから作る

クローズアップや重要な場面では、まず最初のフレームを画像として作ります。画像ノードを追加し、キャラクターを @ で呼び出して、ショットの構図を書きます。フレームがよくできたら、横のプラスをクリックして動画ノードまでドラッグし、設定バーから「パラメーター」を開いて「生成方法」を「画像から動画」に、最後のフレームも作った場合は「最初と最後のフレーム」に設定します。

こうすると、動画モデルは正しい顔がすでに収まった固定の出発点を得られます。これがたいてい、キャラクターを一貫させるもっとも確実な方法です。画像の再生成は動画の再生成より安いので、うまくいくまでのコストも抑えられます。

帽子、タトゥー、メガネのように、クリップの途中で消えやすい小物は、最初のフレームで見えるようにしておきます。テキストに書いただけだと、途中で消えてしまうことがよくあります。

夜の衣装を着た Mara の例を見てみましょう。

画像ノード(最初のフレーム)
@mara-night in a close-up, standing under a flickering streetlight in a narrow alley at night, light rain falling, wet brick wall behind her slightly out of focus. Warm orange streetlight from the left, cool blue neon glow from the right. Her coat collar is turned up and she looks just past the camera with a calm, tired expression. Her face sits on the right third of the frame. Eye level, 50mm lens, shallow depth of field. Photorealistic cinematic, natural skin texture, 35mm film look. No text, no watermark.
動画ノード(画像から動画、上のフレームに接続)
5-second shot.
Use the reference image as the first frame and keep its composition, lighting and framing exactly the same. @mara-night stays under the streetlight in the rain. She slowly lifts her eyes to the camera, lets out a short breath and the corner of her mouth tightens. She does not speak.
Close-up, eye level, very slow push-in.
Rain falls steadily, the streetlight flickers once, a car's headlights sweep across the brick wall behind her.
Only the sound of rain and a car passing in the distance. No music, no subtitles.

4.4 1 つの参照からすべてのショットを作る

ショットごとにキャラクターシートをアップロードし直す必要はありません。シートのノードから、それを使うすべての動画ノードへ接続をドラッグします。前のノードの内容は次のノードに渡されるので、1 つの参照からいくつでもショットを作れます。

うまくいかないショットがあれば、そのノードだけを再生成します。キャンバスのほかの部分はそのまま残ります。作業中にプロジェクトの画像とクリップをすべて目の前に並べておきたいときは、キャンバスにスタックノードを置いてください。

ショットがそろったら「スマート編集」を開きます。キャンバスで生成したものはすべてそこにあり、すぐにタイムラインに並べられます。

先に進む前に、次の点を確認してください。

  • キャラクターが登場するショットのプロンプトすべてに @handle がある
  • ショットのプロンプトは動き、カメラ、場所を書き、顔は書いていない
  • 重要なショットは承認済みの最初のフレームから始めている
  • 帽子、メガネ、タトゥーが最初のフレームで見えている

パート 5:一貫性が崩れやすいショット

動画モデルにとって、ほかよりずっと難しいショットがあります。ストーリーを書く段階でそれを踏まえておけば、再生成はかなり減ります。

起きる問題避け方
キャラクターが後ろを向いて振り返ると顔が変わる顔を画面に入れたままにするか、振り向く瞬間でカットし、次のショットを新しい最初のフレームから始める
2 人のキャラクターが 1 人に混ざる、または特徴が入れ替わるそれぞれにエレメントを用意し、誰が左で誰が右かを書き、立ち位置が交差しないようにする
引きのショットで顔がおかしい引きのショットでは顔に割り当てられるピクセルがごくわずか。引きは場所と動きに使い、顔はミディアムショットやクローズアップで見せる
真上からのショットで顔が失われる顔が見えるハイアングルにするか、真上からのショットは人物の識別が重要でない場面に取っておく
クリップの途中で衣装が変わる衣装ごとにエレメントを分け、最初のフレームで衣装全体が見えるようにする
あるショットだけ声が違って聞こえるそのショットに @handle があるか、ノードを作ったあとにボイスを変えていないかを確認する
話していないのにキャラクターの口が動くプロンプトでそのキャラクターに「話さない」と書く
1 つのクリップで起きることが多すぎる1 クリップの動きは 1〜2 つまでにする。長い連続動作は顔や手が崩れる原因になる
光で顔が変わる同じシーンの中では光の方向も色温度も揃える。光が大きく変わると、同じ顔でも別人に見えることがある

よくある失敗

  • キャラクターシートを承認する前に動画を作り始める(2.2)
  • 小さなディテールの位置を書かず、ショットごとに動いてしまう(2.1)
  • 1 つのエレメントに 2 着の衣装を入れる(2.4)
  • エレメントにボイスがなく、モデルがショットごとに新しい声を選ぶ(パート 3)
  • ショットを組んだあとにエレメントのボイスを変える(3.3)
  • ショットで @handle を付け忘れる(4.1)
  • ショットのプロンプトのたびに顔を説明し直す(4.2)
  • 重要なクローズアップをテキストから直接生成する(4.3)
  • 顔がいちばん大事な場面で引きのショットや振り向きを使う(パート 5)

まずは最初のキャラクターを用意し、映画全体を組む前に 2 ショットのテストから始めましょう。キャンバス、エレメント、各モデルについて詳しくは Sumi Studio アカデミーをご覧ください。