AnimateDiffで動画にカメラ動作を付ける — ズーム・パン・ティルト・ロール全8種完全解説 + ComfyUIノード設定 + R18シーン設計例
ADE_AnimateDiffLoRALoaderノードでweight=0.75〜0.85が最適スイートスポット。キャラLoRAとの共存は可能だが合計weight管理が重要。
1. mm_sd_v15_v2.ckpt読み込み
2. v2_lora_ZoomIn.ckpt配置
3. ADE_AnimateDiffLoRALoaderでweight=0.8設定
単体: 0.75〜0.85がアーティファクトなし最適域。スタック(2種): 各0.55〜0.65に下げる。1.0超は背景崩壊リスク大。
公式Motion LoRAはv2専用。v1/v3では機能しない。キャラLoRAはUNETに乗り、Motion LoRAはモーションモジュールに乗るため共存可能。
Motion LoRAの訓練基準は16フレーム。16フレームで最も安定動作。24はOK、32は長尺だが消費VRAM増加。コンテキストwindow=16固定推奨。
AnimateDiff 2層構造
| コンポーネント | 適用対象 | 制御内容 | ファイルサイズ |
|---|---|---|---|
| mm_sd_v15_v2.ckpt | モーションモジュール本体 | フレーム間補間・時間軸特徴量 | 1.7 GB |
| v2_lora_ZoomIn.ckpt | モーションモジュールのTemporalAttn | ズームイン方向への誘導 | 74 MB |
| waiIllustriousSDXL_v160 | U-Net (画像生成) | キャラ外見・品質 | ~6 GB |
| キャラLoRA (dim8/alpha1) | U-Net のLinear/Conv層 | 特定キャラの顔・体型・衣装 | 数〜数十 MB |
huggingface.co/guoyww/animatediff-motion-lora-[zoom-in / zoom-out / pan-left / pan-right / tilt-up / tilt-down / rolling-clockwise / rolling-anticlockwise] — 全8リポジトリそれぞれにsafetensors版あり[4][5][6][7]
| LoRA名 | ファイル名 | 用途カテゴリ | R18推奨度 | 安全強度 |
|---|---|---|---|---|
| Zoom In | v2_lora_ZoomIn.ckpt | 寄り・強調 | 最重要 | 0.7〜0.9 |
| Zoom Out | v2_lora_ZoomOut.ckpt | 全体開示・引き | 高 | 0.7〜0.9 |
| Pan Left | v2_lora_PanLeft.ckpt | 横移動・全身 | 高 | 0.7〜0.85 |
| Pan Right | v2_lora_PanRight.ckpt | 横移動・全身 | 高 | 0.7〜0.85 |
| Tilt Up | v2_lora_TiltUp.ckpt | 舐め上げ | 最重要 | 0.65〜0.85 |
| Tilt Down | v2_lora_TiltDown.ckpt | 俯瞰・流し | 中 | 0.65〜0.80 |
| Rolling Clockwise | v2_lora_RollingClockwise.ckpt | ダイナミック演出 | 低〜中 | 0.4〜0.6 |
| Rolling Anti-CW | v2_lora_RollingAnticlockwise.ckpt | 絶頂演出・幻想 | 低〜中 | 0.4〜0.6 |
| strength値 | 動き速度 | カメラ動作量 | 品質 | アーティファクト | 推奨用途 | 判定 |
|---|---|---|---|---|---|---|
| 0.3〜0.4 | 非常に遅い | 微小・ほぼ静止 | 高品質 | ほぼなし | テスト・確認用。実用には動きが少なすぎる | テスト専用 |
| 0.5 | 遅め | 小〜中程度 | 高品質 | なし | 繊細な演出・背景崩れが気になる場面・スタック時の下限 | 安全 |
| 0.65 | やや遅い | 中程度 | 高品質 | まれに微小 | 2LoRAスタック時の推奨値。Rollingはここが上限目安 | 安全 |
| 0.75 | 標準 | 明確に見える | 高品質 | なし(背景安定) | 単体LoRA時のスイートスポット。最もバランスよい | 最推奨 |
| 0.85 | 標準〜やや速 | 明確〜やや強め | 良好 | まれに背景blur | インパクト重視シーン。絶頂・寄り強調など | 推奨 |
| 1.0 | 速い | 強め | 注意が必要 | 背景アーティファクト出やすい | 動きが欲しいがquality低下リスク。0.8から調整推奨 | 要注意 |
| 1.2〜1.5 | 非常に速い | 非常に強い | 低下 | ghosting・背景崩壊・フレームちらつき | 基本NG。実験的用途のみ。量産での使用禁止 | NG |
| 組み合わせ | 合成効果名 | 各weight | R18活用例 | 難易度 |
|---|---|---|---|---|
|
Zoom In
+
Pan Left
|
Dolly Zoom (斜め寄り) | 各 0.6 | キャラに向かいながら横に移動する追跡ショット | 易 |
|
Zoom In
+
Tilt Up
|
下から舐め上げ寄り | 各 0.6 | 足元から顔に向かって寄りながら上昇。R18最頻出カメラワーク | 易 |
|
Zoom Out
+
Tilt Down
|
引きながら見下ろし | 各 0.55 | クライマックス後の全身引き演出。余韻表現 | 易 |
|
Pan Left
+
Tilt Up
|
斜め上スウィープ | 各 0.6 | 横移動しながら顔アップへ。表情確認ショット | 中 |
|
Zoom In
+
Rolling CW
|
ダイナミック寄り回転 | Zoom=0.7 / Roll=0.4 | 絶頂シーンの演出強調。過度な使用はNG | 難 |
|
Pan Left
+
Pan Right
|
相殺(NG) | — | 逆方向は打ち消し合うため無意味。絶対NG | NG |
| パラメータ | 型 | 推奨値 | 説明 |
|---|---|---|---|
| lora_name | string (選択) | v2_lora_ZoomIn.ckpt | motion_loraフォルダ内のファイル名。プルダウンで選択。 |
| strength | float | 0.75 | Motion LoRAの適用強度。0.0〜1.0。1.0超は実験的。 |
| prev_motion_lora | MOTION_LORA_LIST (optional) | 前LoRAの出力 | チェーン接続で複数LoRAをスタック。最初のノードは空でOK。 |
| LoRA種別 | 適用対象 | 推奨strength | 競合関係 | 備考 |
|---|---|---|---|---|
| キャラLoRA (dim8) | U-Net UNET/TEXTenc | 0.8〜1.0 | Motion LoRAと独立 | 外見・一貫性担保の主役。下げすぎるとキャラ崩れ |
| Motion LoRA 単体 | モーションモジュール Temporal Attn | 0.75〜0.85 | キャラLoRAと独立 | カメラ動作の主役。1.0超でQuality低下 |
| Motion LoRA ×2スタック | モーションモジュール | 各 0.55〜0.65 | 同モジュール内で競合 | 合計weightを1.2以内に収める |
| スタイルLoRA (品質強化) | U-Net | 0.4〜0.6 | キャラLoRAと同層で競合 | キャラLoRA優先。スタイルLoRAは低め設定 |
キャラLoRAはU-Net層に作用し、Motion LoRAはモーションモジュール層に作用。技術的には互いに独立しているが、高motion strengthでは時間軸方向の特徴量が外見品質に影響することがある。motion=0.85以下に留めれば外見崩れはほぼ発生しない。
Motion LoRA適用後も全フレームで髪色・目色・肌色が変わっていないか確認必須。特にZoom In時は被写体が大きくなるにつれてテクスチャが変化しやすい。スモーク3〜5フレームで目視確認してからfull生成。
| フレーム数 | Motion LoRA効果 | motion_pe_stretch推奨値 | context_length | RTX3090TiでOOM |
|---|---|---|---|---|
| 16フレーム | カメラ動作がフル発揮 | 不要 | 不要(16固定) | なし |
| 24フレーム | 動きが自然に伸びる | 1.0〜1.2 (わずかに緩める) | 16推奨 | まれに発生 |
| 32フレーム | 動きが遅くなりがち | 1.5〜2.0 (speed補正) | 16必須 | 発生リスクあり |
| 48フレーム〜 | Motion LoRA品質低下 | 2.0+ (実験的) | 16 + Uniform必須 | 高リスク |
motion_pe_stretchは positional encoderを伸縮させる速度制御パラメータ。「数値を上げると動きが遅くなる(stretch)」。フレーム数が多い場合に動きが遅すぎる場合はこの値を下げ、速すぎる場合は上げる。vibration artifactが出始めたら値を下げること。[11]
| 逆グラデ段階 | 推奨Motion LoRA | strength | 演出目的 |
|---|---|---|---|
| s5 (絶頂・射精) | ZoomIn or Rolling-CW(弱) | 0.80 / 0.45 | 顔・絶頂表情を強調。最大インパクト |
| s4 (ピーク手前) | ZoomIn + TiltUp | 各0.60 | 寄りながら上昇。緊張感の演出 |
| s3 (Hシーン中盤) | TiltUp or PanLeft | 0.75 | 体全体の確認・舐め上げ |
| s2 (着エロ〜脱衣) | ZoomOut or TiltDown | 0.70 | 全体状況開示・衣装確認 |
| s1 (導入・着衣) | ZoomOut or PanRight | 0.65 | シーン設定の開示 |
ComfyUI-ADMotionDirector をCustom Nodes Managerからインストール。v3_sd15_mm.ckpt → models/animatediff_models/v3_sd15_adapter.ckpt → models/lora/
models/animatediff_motion_lora/[日付]/[時刻]/[LoRA名].safetensors| カスタム動作例 | 必要動画素材 | 難易度 | 公式LoRAで代替可否 |
|---|---|---|---|
| 腰振り動作 | 腰振りループ動画 16f | 中 | 不可(公式にない) |
| 胸の呼吸動作 | 呼吸ループ動画 16f | 中 | 不可 |
| カメラ斜め上昇 | 斜め上昇カメラ動画 | 易 | ZoomIn+TiltUpで代替可 |
| カメラ360度回転 | 360度回転素材 | 難 | Rolling組み合わせで部分代替 |
| 特定キャラの表情変化 | 表情変化動画 | 難 | 不可(これはキャラLoRAの仕事) |
| # | 失敗パターン | 主原因 | 対処法 | 優先度 |
|---|---|---|---|---|
| 1 | 背景が崩壊・歪む | strength値が高すぎる (1.0+) | strength を 0.75 に下げる。背景のないプロンプト(simple background / white background)にする | 最優先 |
| 2 | ghosting(残像)が出る | 複数LoRAのweight合計過多 or モデル相性 | 各LoRAのstrengthを0.05ずつ下げる。スタック時は合計1.2以内に収める | 最優先 |
| 3 | Motion LoRAが全く効いていない | v2非対応モジュールを使っている / 接続ミス | mm_sd_v15_v2.ckpt であることを確認。ADE_LoadAnimateDiffのmotion_lora入力ポートに正しく接続されているか確認 | 最優先 |
| 4 | カメラが動かず静止画と同じ | strength値が低すぎる (0.3以下) / v1使用 | strength を 0.75 以上に。v2モジュール使用確認 | 高 |
| 5 | フレーム間でキャラが別人になる | キャラLoRAとMotion LoRAの干渉 / 過高strength | motion strength を 0.85 以下に。キャラLoRA strength を0.9以上に引き上げ。seed固定 | 高 |
| 6 | 動きが振動・震える | motion_pe_stretch値が高すぎる | motion_pe_stretch を 1.0 に戻す。またはstrengthを0.65に下げる | 高 |
| 7 | Rolling適用で画面が酔う | Rolling strength が高い | Rolling系は strength 0.4〜0.5 上限。絶頂シーンの1カットのみに限定使用 | 中 |
| 8 | 長尺(32f+)で途中から品質低下 | context_options未設定でMotion LoRAの効果が薄れる | ADE_UseEvolvedSamplingでUniformContext(length=16, overlap=4)を設定 | 中 |
| 9 | VRAM OOMでクラッシュ | フレーム数×解像度超過 / 複数LoRAのメモリ使用 | フレーム数を16に戻す。解像度を512x512ベースに。_mem_guard_2026-05-22.py常駐必須 | 中 |
| 10 | 逆方向LoRAスタックで何も起きない | ZoomIn+ZoomOut等の相殺 | 同軸逆方向のスタックは完全禁止。異なる軸の組み合わせのみ使用 | 確認 |