Prompt craft

MiniMax H3 の文字は崩れていない、アニメの途中を撮っただけ

六本を一コマずつ確認。名指しした 22 個の文字列は全て正確。分かれるのは名指ししなかった側で、模様になるか、モデル自作の商品名が正確に出るかです。

13 分で読めます編集部編集部
MiniMax H3 の文字は崩れていない、アニメの途中を撮っただけ

AI 動画の文字について、標準的な助言は「モデルに書かせるな」です。無音で出して、編集ソフトに持ち込んで、文字は自分で組む。Google の 1 ページ目にある解説はどれもこの筋で、理由も同じです——動画モデルは文字を綴っているのではなく、模様として描いているだけなので、コマごとに字形が流れて誤字になる、と。

これを MiniMax H3 で確かめにいったところ、その助言が取りこぼしているものが見つかりました。

公開されている作例を六本引いて、一コマずつ送って確認しました。六本の中には、プロンプトが名指しで指定した画面内文字が 22 か所あります。それぞれが動きを止めたあと、22 か所すべてが正しく綴られていました——ゲームのメニュー、装備リスト、そしてサブタイトル付き二行のタイトルカードも含めてです。

同じ六本には、まったく読めない文字も大量に入っています。そしてそのうち二本には、もっと妙なものがありました。誰も指定していないコピーを、モデルが自分で書き、しかも出てくるたびに正確に綴っているのです。この二つを切り分けることのほうが、見出しよりも役に立ちます。自分の手元のどのカットが安全なのかが、そこで分かるからです。

「崩れた」MiniMax H3 のコマは実際にどう見えるか

同じクリップの同じメニューパネルを、半秒ずらして並べたものです。上が 2.458 秒、下が 2.958 秒:

同じ装備パネルの二コマ。2.458 秒では二行目が PHANTOM GRIP のにじんだ複製になっており、2.958 秒では CHRONOS CLAW とはっきり読める

上のコマが、「AI は綴りもできない」という一言を添えて投稿される、あのスクリーンショットです。二行目は、その上の行がにじんだ、書きかけの複製になっています。壊れて見えるのは、実際に壊れているからです——0.4 秒ほどの間だけ、パネルが二行目を書き込んでいる最中は。

そのあと CHRONOS CLAW に落ち着き、以後は変わりません。

コマを数えました。パネルは 56 フレーム目に現れ、103 フレーム目で消えます。二行目は 56 から 65 フレームまで読めず、68 フレーム以降はきれいです。24 fps なので、2.0 秒のパネルの中の 0.4 秒——出ている時間の五分の一ほどが誤字のように見えて、誤字ではありません。

これは聞こえよりも重要です。五分の一というのは、そこに当たる実際の確率ではないからです。タイムラインをドラッグするとき、人は何かが起きているところで手を止めます。そして何かが起きているコマとは、まさに文字がまだ落ち着いていないコマのことです。ドラッグという操作自体が、不具合の側に偏っています。

だから最初の規則は、創作ではなく手順の話です。 文字は、何も動いていないコマで判断すること。そしてサムネイルを抜くときは、カードが固まったあとで抜くこと——でなければ、その不具合を自分で出荷することになり、誰かにスクリーンショットを撮られます。

文字列を書き出せば、MiniMax H3 はそれを綴る

ここからが、プロンプトの書き方を変える発見です。

下の画像の上下は、同じクリップの同じ一回の生成から、10 秒離れた二か所です:

上:MINIMAX、RIGHT ARM EQUIPMENT、PHANTOM GRIP、CHRONOS CLAW がすべて鮮明で正しいゲーム UI。下:ネオンの看板がどれも読めない文字になっているサイバーパンクの街路

上半分は鮮明です。MINIMAXRIGHT ARM EQUIPMENTPHANTOM GRIPCHRONOS CLAW——すべて正しく、しかもパネルはスライドしていて、カメラも動いています。

下半分はネオン看板だらけの街路で、そこにある看板はどれ一つとして単語になっていません。同じモデル、同じクリップ、同じシード、10 秒後です。

プロンプトがこれを完全に説明します。文字列を十個名指ししていて、返ってきたのはこうです:

プロンプトで名指しした文字列出力
START NEW GAME正しい
CONTINUE正しい
SETTINGS正しい
EXIT GAME正しい
MINIMAX正しい
RIGHT ARM EQUIPMENT正しい
PHANTOM GRIP正しい
CHRONOS CLAW正しい
ARMAMENT CUSTOMIZATION正しい
CONFIRM CONFIG正しい

十個中十個です。街路のほうは、プロンプトがサイバーパンクの都市を求めただけで、看板に何と書くべきかは一言も言っていません——だからモデルは、できる唯一のことをしました。看板の形をした模様を描いたのです。

競合の解説が測っていたのも、この同じ挙動です。ただ、二つの場合を分けなかっただけです。「文字は記号としてではなく模様として描かれる」は、プロンプトがコピーを一度も書かなかった背景の説明としては正確です。あなたが手渡した文字列の説明としては、正確ではありません。

同じクリップには三つ目の場合もあります。プロンプトは「手・前腕・肘・上腕のコンポーネントを表示する」グリッドを求めています。指定しているのはコンポーネントで、ラベルの文字列は最後まで与えていません——返ってきたグリッドはアイコンの列で、その下に文字は一つもありません。崩れているのではなく、無いのです。

ここまでだと、規則は「名指しした文字は綴られ、名指ししなかった文字は綴られない」に見えます。私もそう思っていました。ある商品クリップを見るまでは。そして、それは間違いです。

名指ししていないのに完全に正しかった文字

もう二本です。どちらも、これから読む文字を名指ししていません:

上:木箱に載った四本のレモンソーダ。どのラベルにも BRIGHTSIP とはっきり読める。下:フォトリアルな人間工学チェアの図解で、両脇の HUD パネルは読めないにじみになっている

上のコマは夏の飲料広告です。プロンプト全体がたった一文——配達ライダーが丘の町を抜け、「レモンの炭酸飲料を開ける」、コミック調。ブランド名なし。ラベルのコピーなし。引用符の中身は何もありません。

モデルは BRIGHTSIP を自分で作り、それを瓶に載せ、そして一コマの中の四つの異なる角度の四枚のラベルすべてで正しく綴り、9 秒後のヒーローカットでも正しく、エンドカードでもう一度出しました——そのエンドカードでは TASTE THE SUN というコピーまで自分で作り、やはり正しく綴っています。曲面のガラス、変わり続けるサイズ、動くカメラ。それでもこの単語は一度も崩れません。

下のコマはフォトリアルな椅子の広告です。HUD の注記は読めないにじみ——そして同じクリップのエンドカードには、八文字の漢字が一字も違わずに載っています。

どちらも名指ししていない文字です。片方は完璧で、片方は雑音——つまり、名指しは文字列を綴らせるのに十分ですが、綴られるかどうかを決めているものではありません。決めているのは、その文字列がそのカットの中で役目を持っているかどうかです。商品のお披露目は、瓶にブランド名が無ければお披露目になりません。だからモデルは自分で一つ用意し、それを最後まで通します。技術的な計器表示は書き割りで、その中のどの単語にも個別の意味は無い。だからモデルは「計器表示の模様」を描きます。背景の四十枚のネオン看板も、HUD と同じ場合です。

名指しは綴りを入れるスイッチではありません。名指しは、選ぶ権利をモデルから取り返す手段です。 放っておけば、H3 はあなたの商品に名前を付けます——BRIGHTSIP はかなり良い発明ですが、あなたが選んだものではなく、指示も出せず、次のテイクでは二度と同じものは来ません。

同じことが、フォトリアルで、コピー全文がモデル製で、もう一度起きた

BRIGHTSIP はコミック調のクリップの中の一語なので、「あれは描かれた文字だから」で片付けられてしまいます。片付けにくいのはこちらです——北京ダックの商品映像で、画面に出る言葉が全部モデルのものです:

上:黒背景のローストダックの商品カット。見出しの Bebek Panggang. と、その下の Beli Sekarang がどちらも鮮明。下:同じダックのマクロカットで、右側の小さな Rasa Pro. も鮮明

これは描かれた絵ではありません。フォトリアルな食品広告です——スタジオ照明、濡れたハイライト、映り込みのあるスレートの皿。そしてそのプロンプトは 655 文字で、文字列を一つも名指ししていません。名指ししているのは、言語のほうです:

Use clean, lightweight sans-serif typography throughout, with generous negative space and a consistent visual system. All Bahasa Indonesia text must be spelled and rendered correctly.

モデルは広告を自分で書きました。五行、すべてインドネシア語、すべて正しい。Memperkenalkan(ご紹介します)、Kulit Sempurna(完璧な皮)、Rasa Pro.Bebek Panggang.(ローストダック)、Beli Sekarang(今すぐ購入)。指示そのものも訳しています——プロンプトには英語で "Peking duck" とあり、エンドカードは Bebek Panggang です。

ここから二つ落ちてきます。そしてそれは、このクリップ自体よりも重要です。

フォトリアルかどうかは変数ではありません。 私は、測ってきた正しいラベルが正しいのは、それらが描かれた文字だからだと考えていました——平らに置かれた字形で、モデルは描けばよく、光を当て直す必要がない、と。ところがこのクリップは、HUD がにじんでいたあの椅子広告と同じくフォトリアルで、文字は完璧です。両者を分けているのは、描画のスタイルではありません。

言葉を指定せずに、言語だけを指定できます。 これは効きます。返ってくる文字種は、あなたが書いた文字種とは限らないからです。あの椅子のクリップは、エンドカードを英語で名指ししていました——"Inspiration and Comfort Online Simultaneously"——のに、モデルが出したのは 灵感与舒适同时在线、中国語の対応表現で、しかも正確に綴られていました。正確で、しかも頼んだものではない。言語を書く一行が、この問題の解決の全部です。

文字サイズは、言われているような境目ではない

この話題でいちばん繰り返されている数字は、「文字の高さが約 40 px を下回ると、綴るための画素が足りなくなって崩れる」というものです。

この六本で測る限り、それは成り立ちません。MiniMax の予告編作例にある挿入カードは、1280×720 の画面で 29〜30 px の字高——境目の下——で、THE MISSION WAS A LIE は正しく綴られています。START NEW GAME は 42 px で、こちらも正しい。

見つかった中でいちばん小さい正しい文字列はさらに小さく、しかもフォトリアルのクリップの上にあります。Rasa Pro.1698×720 の画面で 22 px の字高、画面の高さの 3 パーセントで、きれいです。しかもこれも、誰も名指ししていません。

小さい文字が難しくなるのは確かです。ただしこのモデルでは、文字列が正しく綴られるかを決めているのは高さではありません。

文字列を、綴らせる形で名指しする方法

具体的には四つ。すべて、実際に通ったプロンプトから採ったものです:

  1. 引用符に入れ、大文字で、欲しい形のまま書く。 Cursor clicks "CONTINUE" が通る形です。ボタンを「continue ボタン」と説明すると、モデルに渡るのは形であって、書くべき語ではありません。
  2. どこに置くかを言う。 "Right side displays game menu UI"、"Top left displays player profile"。位置のある文字は場面の中の物体で、位置のない文字は装飾です。
  3. 字形の扱いを、語の内容とは別に指示する。 MiniMax の予告編プロンプトは、扱いだけに 90 語を使っています——字間、発光、「フォントは純白ではない」、どう入ってくるか。この 90 語は文字列を一つも名指ししていませんが、名指しされたほうの文字列がタイプしただけに見えず、美術として組まれて見えるのは、この 90 語のおかげです。
  4. 語を指定しないときでも、言語は指定する。 "All Bahasa Indonesia text must be spelled and rendered correctly" が、あのダック映像の文字指示の全部で、返ってきた行はすべてインドネシア語でした。指定しなければ、場面が示唆したほうが来ます——英語の指示から中国語のエンドカードが返るのは、これが理由です。

そして、実際に金額に効く系として一つ。名指ししていない看板は、決して中立ではありません。 そこに何が書かれるかは何かが決めたのであって、それがあなたでなければモデルです——構図で避けるしかない模様になるか、これから付き合っていく商品名になるか、どちらかです。

MiniMax H3 の文字描画がまだ壊れるところ

正直な限界が三つ。どれも上のクリップで見えています。

綴れることと、組めることは別です。 比較画像の上半分をもう一度見てください。CHRONOS CLAW二回、上下二行に出ています。字は全部正しく、リストのほうが間違っている。このモデルは信頼できる写植工であり、信頼できない UI デザイナーです。この二つは別の問題です。

書き割りは読めないままで、名指しで解決できる範囲には上限があります。 効いてくる看板を三枚名指しすることはできます。四十枚は名指しできません。そして密度のある街路には四十枚要ります。

埋められないマスがちょうど一つあります。フォトリアルの、曲面上の文字です。 ここでは変数が二つ動いていて、分けておく価値があります。この話題の説明のほとんどが、この二つを一つに潰しているからです。

平面の上の文字曲面に巻きついた文字
描画 / コミック調正しい——予告編カード、ゲーム UI正しい——BRIGHTSIP、ガラス上の四角度
フォトリアル正しい——ダック映像どちらの証拠もない

ダック映像は「フォトリアルが問題だ」を否定します。BRIGHTSIP は「曲面が問題だ」を否定します。どちらも二つの重なりは否定していません。そしてこの組み合わせが難しいと予想する物理的な理由があります。描かれたラベルはモデルがガラスの上に描く形ですが、フォトリアルのラベルは、新しい角度ごとに投影し直し、光を当て直さなければならないからです。

この事例を探しにいきましたが、ライブラリにはありません。102 件のうち、プロンプトが実際に「ultra-slow rotating close-ups」を求めているフォトリアルのクリップはこのダックだけで、ダックにはラベルがありません。フォトリアルの瓶のカットを扱う制作者は、ラベルが最初のコマから崩れ、画像から動画でも参照素材から動画でも救えないと報告しています。私は再現しておらず、他人のスクリーンショットで断言するつもりもありません——ただ、この規則が止まる場所として一番ありそうなのはそこで、そのカットが自分のものなら、最初に試すのはそこです。

これらは選ばれた作例です。 六本のうち四本は MiniMax 自身のショーケース、二本は同じライブラリのコミュニティ投稿なので、平均的な一日ではなく良い一日を表しています。22 分の 22 も、再現を期待してよい数字ではありません。この選択の偏りを生き延びるのはその規則であって、点数ではありません——そして生き延びる理由の一部は、読めない文字がその同じ選ばれたクリップの中に一緒に入っていることです。都合の良いところだけ出すなら、あの街路は出さないはずです。

毎回必ず正しくなければならない一つの文字列のために

名指しした文字列は正しく出ます。それでもそれは一回の生成です。このテイクで正しいことは次のテイクで正しいことを意味しませんし、その文字列があなたのブランド名、商品名、あるいは本当の作品名なら、「たいてい正しい」は仕様ではありません。

このサイコロを外す道が一つあります。言葉を参照画像に入れることです。 そうするとモデルの手元には、描くべき文字ではなく、合わせるべき出来上がりの組版があります——そもそも文字を描いていないので、変わりようがありません。MiniMax の予告編作例で、作中ただ一枚の設計されたタイトルカードがまさにこれです。あれは入力した静止画そのもので、冒頭と最後にもう一度出てきます。

手順の全体はMiniMax H3 で AI 予告編を作るにあります。拍の割り方もそちらです。

つまり分担はこうなります:

プロンプトで名指しする参照画像に入れる
向いているものメニューのラベル、挿入カード、効いてくる看板ブランド名、商品名、本当の作品名
今回は正しいか正しい。この六本で 22 分の 22正しい。ただし文字が平面に留まる場合
次のテイクも正しいか生成なので振り直しになるまったく同じ
文字種と言語言語は別に指定する。しなければ場面が示唆したほうになる画像に書いてあるとおり
代価なし参照画像の枠を一つ

右の列には境界があり、それは上と同じ境界です。タイトルカードはモデルが保持できる平面です。回る瓶に巻きついたラベルは、角度が変わるたびに描き直さなければならない曲面で、参照画像を渡してもその描き直しは消えません。参照画像の道は、重ねる文字については決着済み、曲面については未検証として扱ってください。

自分のクリップを 1 分ほどで確かめる

プレイヤーで判断しないこと。まずクリップ全体を一度に並べて、おかしく見えるところだけ原寸に戻します:

# だいたい一コマおきに抜いて、一枚の一覧に並べる
ffmpeg -i clip.mp4 -vf "fps=2,scale=320:-1,tile=5x7" -frames:v 1 sheet.png

# そのうえで疑わしい瞬間を、原寸で、コマ指定で
ffmpeg -i clip.mp4 -vf "select='eq(n,59)'" -fps_mode passthrough frame.png

一覧の上で読み間違いに見える文字列があったら、結論を出す前に前後のコマを抜いてください。この六本では、最初に壊れて見えた文字列は、最後には全部アニメーションの途中でした——そして、名指ししていない文字が自動的に壊れているわけではありませんが、壊れていたものは全部、名指ししていない文字でした

試す

いちばん手早い版はこれです。引用符付きの一行をプロンプトに書き、8 秒で生成し、結果を一コマずつ送る。

テキストから動画なら一文から始められます。その言葉が毎回きっかり同じでなければならないなら、自分の静止画を持って参照素材から動画へ行き、画像に文字を担わせてください。

ここで引用したクリップ、プロンプト、参照画像は awesome-minimax-h3-prompts (CC BY 4.0)のものです。四本は MiniMax 名義、レモンソーダ広告とダック映像は同じライブラリのコミュニティ投稿で、それぞれ Hemanth と Feyber の名義です。ダック映像のプロンプトは、ライブラリが抜粋しか収めていないため、作者の元投稿から全文を引用しました。上のフレーム番号、時間、字高、文字列は、すべてファイルから読み取ったものです。

編集部

執筆

編集部

minimax-h3ai.video

MiniMax H3 AI Video Generator に掲載。MiniMax H3 を利用する独立した第三者インターフェースです。

記事をすべて見る