Character Card Studio: ComfyUIでキャラクターシートを生成するノードパック
ComfyUI-CharacterCardStudioは、1枚の参照画像またはプロンプトから分割済みのキャラクターシートを生成します。8種類のカードテンプレート、シーン6面ビューモード、Qwen-Image 2.1ワークフローを備えています。
ComfyUI-CharacterCardStudio は、キャラクター参照シートを生成し、それを分割して完成したカードとしてレイアウトするカスタムノードパックです(GitHub)。10月20日に公開され、バージョンは1.2.1です。入力は、同一性のアンカーとして使う1枚の参照画像か、シンプルなキャラクター説明のいずれかです。出力はマルチパネルのカードで、各パネルは生成され、768x768に固定でクロップされて元のスロットに戻されます。
プロジェクトのプレビュー。ソース: ComfyUI-CharacterCardStudio
このパックは、その作業の中でも地味な半分を担う部分を中心に作られています。ビューの生成自体はQwen-Image 2.1がすでにこなします。時間を食うのは、カードのパネル数を決めること、どのポーズをどのセルに置くか、頭や足が切れないように全身を各セルに収めること、右側のプロフィールをミラーリングして2つの側面ビューが実際に逆向きになるようにすることです。こうした処理はすべてプロンプト任せにせず、ノードに組み込まれています。
収録内容
パックには8つのカードテンプレートと1つのシーンテンプレートが含まれ、4パネルから14パネルまでをカバーします。
| テンプレート | 名前 | パネル数 |
|---|---|---|
bighead_body3 | 4パネル、ポートレートと全身 | 4 |
dualfour_ref | 4パネル、2フレーム | 4 |
fiveref | 5パネル、前面と背面 | 5 |
head_body_6 | 6パネル、3ビュー | 6 |
sixtilt_ref | 6パネル、キービジュアル | 6 |
expr_body_8 | 8パネル、表情シート | 8 |
school_ref | 10パネル、設定シート | 10 |
xianxia_ref | 14パネル、総合大全 | 14 |
scene_six_view | シーン、360度サラウンド | 6 |
ノードは分割されているため、パイプラインを3つのレベルで使用できます。
| ノード | 役割 |
|---|---|
AICG3D_CharacterCardOneClick | テンプレートを選択し、プロンプト、ネガティブプロンプト、空白レイアウトガイド画像、テンプレートJSONをコンパイル |
AICG3D_CharacterSheetSplitter | 最初のノードの設定を読み取り、分割し、全身をフレーム内に保ち、並べ替え |
AICG3D_CharacterCardStudio | 個々のパネルの差し替えやクロップ調整を行う手動ワークベンチ |
AICG3D_CharacterCardAssetPrompt | 体、頭、アクション、表情、ディテールのアセットごとに個別のプロンプトを出力 |
AICG3D_CharacterCardAssetComposer | それらのアセットを最終カードに組み立て |
AICG3D_CardSettingsFive | テンプレートと順序の設定(互換性のため旧IDのまま) |
AICG3D_Qwen21ModelLoader | Qwen-Image 2.1のUNET、CLIP、VAEを読み込み |
AICG3D_CharacterCardGeneratorSingle | 有効な各セルを個別に生成し、テンプレートの座標に貼り付け |
プロジェクトのREADMEにあるワンクリック経路。ソース: ComfyUI-CharacterCardStudio
レイアウト作業の大半は2つの設定が担います。panel_order は 1,3,2,4,5-9 のような文字列を受け付けるため、再生成せずにパネルを並べ替えられます。また fit_mode はデフォルトで全身表示になり、これによってセルを埋めるときに頭の頂部や靴がクロップされるのを防ぎます。
カード全体かパネル単位か
ワンクリックのワークフローは、シート全体を1枚の画像としてモデルに要求するため高速ですが、モデルのランダム性をそのまま引き継ぎます。つまりパネル数がずれたり、グリッドが不均一になったりします。再現性が求められるカードのために、このパックにはパネルごとの経路も用意されています。同じキャラクター説明から各セルを個別に生成し、それらをテンプレートに合成するため、パネル数と配置が固定されます。
別のノード AICG3D_CharacterCardGeneratorSingle は、テンプレートの座標を使ってこのセル単位の処理を1つのノード内で実行します。
シーンテンプレートは別の仕組みで動作します。任意のシーン写真を渡すと、最初のセルをオリジナルのまま保持し、残りのセルを90度、180度、270度に加えて360度パノラマと環境ディテールとして生成します。これはキャラクターではなくロケーションシートに役立ちます。
ワークフローとモデル
リポジトリには7つのワークフローJSONが含まれています。ワンクリックの画像からカード、ワンクリックのプロンプトからカード、5テンプレートの1行ワークフロー、パネル単位のバリエーションなどです。
デフォルトでは、diffusionモデルに qwen_image_2.1_bf16.safetensors、低VRAM向けオプションに qwen_image_2.1_int8_convrot.safetensors、テキストエンコーダーに qwen3vl_8b_int8_convrot.safetensors(タイプは qwen_image)、VAEに qwen_image_2.1_vae_bf16.safetensors を使用します。エンコーダーノードとして TextEncodeQwenImage21 を読み込むこともグラフの一部です。
インストール
cd ComfyUI/custom_nodes
git clone https://github.com/JGRFW/ComfyUI-CharacterCardStudioその後ComfyUIを再起動してください。このパックはComfyUIに同梱されているもの以外に何も必要としません。Pillow、NumPy、torch、aiohttpです。READMEとノードのラベルは中国語です。
制限事項
このプロジェクトにはリリースタグがなく、2枚のプレビュー画像以外に公開された作例ギャラリーもありません。またリポジトリにはまだIssue報告が集まっていないため、テンプレートは作者の環境以外のユーザーによってテストされていません。単一パスでカード全体を生成する方法は明示的に非決定的であり、READMEはそれをパネル単位の経路を用意する理由として挙げています。ここに含まれるものはすべてQwen-Image 2.1で動作するため、別のベースモデルを使う場合はローダーノードとエンコーダーを編集する必要があります。
コメント
GitHubでサインインしてディスカッションに参加しましょう。