mcpField
B
blender-compositing-nodes

blender-compositing-nodes

github.com/ra100クリエイティブ・メディア2441 回インストール26 週間前に更新
リポジトリ

blender-compositing-nodes について

blender-compositing-nodesは、ノード構成、Pythonスクリプト、レンダーパス、一般的なエフェクトを扱う、Blender 5.xコンポジター向けのガイドスキルです。Blenderユーザーの構成設計や問題解決を支援し、接続済みのBlender MCPサーバーがあれば、シーンを編集して結果を確認できます。

主な機能

  1. 01コンポジターノードのパイプライン設計
  2. 02Pythonによるノードツリー生成
  3. 03レンダーパスとマルチレイヤー出力の処理
  4. 04カラーグレーディング、キーイング、デノイズ、エフェクト
  5. 05稼働中のBlenderセッションでの確認と検証

活用シーン

  1. 01レンダー用のコンポジター設定を構築
  2. 02画像のデノイズやカラーグレーディング
  3. 03グリーンバックのキーイングやブルーム追加
  4. 04レンダーパスを分離してマルチレイヤーEXRに保存

MCP 対応

ライブのBlenderシーンの確認、コード実行、コンポジター編集、視覚的な検証には、公式Blender MCPサーバーを優先します。サーバーが利用できない場合はPythonスクリプトを生成します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/ra100/blender-claude-plugin --skill blender-compositing-nodes

インストール後、Claude Code で/blender-compositing-nodesを入力して読み込まれたか確認します。

同梱ファイルreferences/node_reference.mdreferences/python_api.md

詳細

Blender コンポジットノードのエキスパート

概要

このスキルでは、Blender 5.x のコンポジターノードに関する専門的なガイダンスを提供します。コンポジットパイプラインの設計、コンポジターノードツリーを構築する Python スクリプトの作成、レンダーパスの合成と処理、カラーグレーディング、キーイング、マルチレイヤー出力の設定に対応します。リファレンスファイルには、すべてのノードの一覧と Python API のパターンが記載されています。

MCP ファーストのアプローチ

コンポジターツリーの構築、パスの調整、実行中の Blender セッションでのレンダーの直接プレビューには、公式 Blender MCP Server(Blender Lab、Blender 5.1+)を優先して使用してください。MCP サーバーに接続されていない場合に限り、Python スクリプトの出力に切り替えてください。

検出方法: セッションの開始時に、execute_blender_code、get_objects_summary、search_api_docs に一致する名前のツールを探してください。これらは公式の blender-mcp サーバーに属します。いずれかが存在すれば、MCP を利用できます。

このスキルで使用するツール:

  • execute_blender_code — 実行中のセッションで bpy Python を実行します(主な操作)
  • get_objects_summary、get_object_detail_summary — 変更前にシーンの状態を確認します
  • get_blendfile_summary_datablocks / _missing_files / _of_linked_libraries / _path_info / _usage_guess — ファイルの内容を一覧表示します
  • search_api_docs、get_python_api_docs、search_manual_docs — API やオペレーターの正しい名前を呼び出し前に確認します
  • get_screenshot_of_window_as_image / _as_json、get_screenshot_of_area_as_image — 視覚的な結果を確認します
  • jump_to_tab_by_name、jump_to_tab_by_space_type、jump_to_view3d_object_by_name、jump_to_view3d_object_data_by_name — UI を操作して変更を確認できるようにします
  • render_thumbnail_to_path、render_viewport_to_path — 素早く視覚的なフィードバックを取得します

セットアップについては、docs/blender-mcp-setup.md を参照してください。

ワークフロー: get_* / search_* ツールで確認 → execute_blender_code で変更 → スクリーンショットまたは概要ツールで検証します。失敗箇所を特定しやすいように、コードブロックは小さく、何度実行しても安全な形にしてください。

タスクの判断ツリー

  • 「X 用にコンポジットを設定して」 → ノードツリーを設計し、「コンポジットのレシピ」を参照して Python コードを生成します
  • 「レンダーのノイズを除去して」 → Denoise のレシピを参照します
  • 「レンダーの色を調整して」 → Color Grading のレシピを参照します
  • 「グリーンスクリーンをキーイングして」 → Keying のレシピを参照します
  • 「グレア/ブルームを追加して」 → Glare のレシピを参照します
  • 「レンダーパスを分離して」 → Render Pass Separation のレシピを参照します
  • 「マルチレイヤー EXR に保存して」 → File Output のレシピを参照します
  • 「X を行うコンポジターノードは?」 → references/node_reference.md を参照します
  • 「コンポジターツリーのスクリプトを作成して」 → API のパターンについて references/python_api.md を参照します

コンポジターツリーの生成

Python を使ってコンポジットのセットアップを作成する場合:

  1. 正しい API パターンとノードタイプ名について、references/python_api.md を読みます
  2. 次のパターンに従ってスクリプトを構成します:
    • シーンでコンポジターを有効にします:scene.use_nodes = True
    • コンポジターノードツリーにアクセスします:tree = scene.node_tree
    • デフォルトのノードをクリアします
    • 正しい型文字列を指定して、すべてのノードを追加します
    • ノードを左から右に配置します(間隔は x 方向に約 300、y 方向に約 200)
    • ノード入力にデフォルト値を設定します
    • ノード間のリンクをすべて作成します
    • 必要なレンダーパスをビューレイヤーで有効にします
  3. 複雑なセットアップを論理的なセクションに整理するには、Frame ノードを使用します
ノード型文字列の規則
  • ほとんどのコンポジターノード:CompositorNode<PascalCaseName>(例:CompositorNodeRLayers、CompositorNodeComposite)
  • 正確な型文字列が不明な場合は、references/python_api.md を参照してください

コンポジットのレシピ

Denoise
  1. Render Layers → Denoise ノード → Composite
  2. 接続:Image → Image、Denoising Normal → Normal、Denoising Albedo → Albedo
  3. デノイズデータパスを有効にします:view_layer.use_pass_denoising_normal = True、view_layer.use_pass_denoising_albedo = True
  4. 最高品質を得るには、組み込みの Denoise ノード(OpenImageDenoise)を使用します
  5. Cycles では、セットアップを簡素化するため、組み込みのレンダーデノイザー(scene.cycles.use_denoising = True)を優先してください
カラーグレーディング
  1. Render Layers → Color Balance(Lift/Gamma/Gain または Offset/Power/Slope)→ Composite
  2. 彩度を調整するには Hue/Saturation/Value を追加します
  3. トーンカーブを細かく制御するには Color Curves(RGB Curves)を追加します
  4. 接続順:Render Layers → Bright/Contrast → Color Balance → Hue Sat → Curves → Composite
  5. Split Viewer を使って処理前と処理後を比較します
キーイング(グリーン/ブルースクリーン)
  1. Image/Movie Clip → Keying ノード → Composite
  2. Key Color をスクリーンの色に設定します(スポイトを使用します)
  3. 次の項目を調整します:Pre Blur、Screen Balance、Clip Black/White、Despill Factor/Balance
  4. 難しいキーイングの場合:Image → Keying Screen → Keying ノード
  5. Dilate/Erode を追加してマットのエッジを整えます
  6. マットに Blur(Gaussian)を追加してエッジを柔らかくします
  7. 合成:Set Alpha → Alpha Over(前景を背景プレートの上に配置)
グレア(ブルーム/ストリーク/フォググロー)
  1. Render Layers → Glare → Composite
  2. グレアの種類:'BLOOM'、'STREAKS'、'FOG_GLOW'、'GHOSTS'
  3. 主な設定:Threshold(値を下げるほどグローが強くなります)、Quality(最終出力では High)、Mix(ブレンド量)
  4. ブルームを選択的に適用するには、先に Color Ramp または Math(> threshold)でハイライトを分離します
被写界深度(ポストプロセス)
  1. Render Layers → Defocus ノード → Composite
  2. Z パスを Z 入力に接続します(Z パスを有効にするには view_layer.use_pass_z = True)
  3. f-Stop、Max Blur、Threshold を設定します
  4. Cycles では、ポストプロセスの Defocus よりカメラの DOF を推奨します(品質が高いため)
  5. EEVEE では、コンポジターの DOF よりカメラの DOF を推奨します
レンズ歪み
  1. Render Layers → Lens Distortion → Composite
  2. Distortion:樽型(-1〜0)または糸巻き型(0〜1)
  3. 黒い境界を避けるには「Fit」を有効にします
  4. Dispersion:色収差(0.01〜0.05 など、控えめな値)
ビネット
  1. Ellipse Mask → Blur(Gaussian)→ Mix(Multiply)→ Composite
  2. または、Lens Distortion で Dispersion のみを使用して、控えめなビネットを作成します
  3. マスクのサイズや位置を調整して、ビネットの形状を制御します
フィルムグレイン
  1. Render Layers → Mix → Composite
  2. ノイズを生成します:Value ノードと Noise Texture(または画像ベースのグレインを使用します)
  3. Mix モード:Overlay または Add を低い係数(0.05〜0.15)で使用します
レンダーパスの分離
  1. Render Layers ノードには、有効になっているすべてのパスが表示されます
  2. パスを有効にします:Diffuse Color/Direct/Indirect、Glossy Color/Direct/Indirect、Transmission、Emission、Environment、AO、Shadow、Mist、Normal、Z
  3. 各パスを個別に処理します(例:Glossy を強調し、Diffuse の彩度を下げます)
  4. 再合成します:Shader パスを Add で合成し、その後 Color パスと Multiply します
マルチレイヤー EXR 出力
  1. Render Layers → File Output ノード(OpenEXR Multilayer に設定)
  2. 保存する各パスの入力ソケットを追加します
  3. ベースパスとファイル名を設定します
  4. 各入力は EXR 内のレイヤーになります
  5. 個別のファイルに出力するには、ソケットごとにファイルパスを設定した File Output を使用します
シーケンサーのストリップ情報(Blender 5.1)
  1. CompositorNodeStripInfo は VSE ストリップのタイミングメタデータを出力します(5.1 の新機能)
  2. 出力:Frame、Strip Start、Strip End、Strip Duration、Speed Factor
  3. クリップのタイミングに基づいてコンポジターエフェクトを制御するのに便利です
  4. シーン内にアクティブなシーケンサーストリップが必要です
マスクから SDF への変換(Blender 5.1)
  1. CompositorNodeMaskToSDF はバイナリマスクを符号付き距離場に変換します(5.1 の新機能)
  2. 出力:SDF(符号付き距離の値。内側は負、外側は正)
  3. マスクの滑らかなエッジ、幅が変化するアウトライン、グローエフェクトの作成に便利です
  4. Math ノードと組み合わせて、SDF の幅をしきい値処理または調整します
フォグ/ミスト
  1. Mist パスを有効にします:view_layer.use_pass_mist = True
  2. Scene Properties → World → Mist Pass でミストを設定します(Start、Depth、Falloff)
  3. Render Layers(Mist)→ Color Ramp → Mix(フォグの色と合成)→ Composite
Cryptomatte
  1. ビューレイヤーで Cryptomatte パスを有効にします
  2. コンポジターに Cryptomatte ノードを追加します
  3. Viewer でオブジェクトやマテリアルを選択します
  4. 出力:Image(抽出画像)、Matte(マスク)、Pick(ID の視覚化)
  5. マットを選択的なポストプロセスに使用します

デバッグと最適化

よくある問題
  • コンポジターが実行されない:コンポジターヘッダーで Use Nodes がチェックされていること、Post Processing(Render Properties)で Compositing が有効になっていることを確認してください
  • 出力が黒い:Render Layers ノードが Composite ノードに接続されていることを確認してください。また、シーンがレンダリング済みであることを確認してください(コンポジターはレンダー結果に対して動作します)
  • パスのデータが正しくない:View Layer Properties でパスが有効になっていることを確認してください。パスを有効にした後、再度レンダリングしてください
  • バックドロップが表示されない:コンポジターヘッダーで Backdrop を有効にしてください。Viewer ノードを接続してください
  • コンポジットが遅い:プレビュー解像度を下げてください。ぼかしの種類には「Fast Gaussian」を使用してください。使用していないノードを無効にしてください
パフォーマンスのヒント
  1. Viewer ノードを使用すると、全体を再度コンポジットせずに中間結果をプレビューできます
  2. 使用していないブランチをミュートします(Ctrl+M)
  3. 反復作業中は低品質設定を使用し、最終レンダーでは High に切り替えます
  4. アニメーションでは、コンポジターのデノイズよりレンダーレベルのデノイズを優先してください(より高速です)
  5. File Output ノードによるオーバーヘッドは最小限です。パスのデバッグに気軽に使用してください
  6. Mix ノード:アルファを考慮したブレンド処理は、5.1 で最大 2 倍高速です

ノードリファレンス

カテゴリ(Input、Output、Color、Filter、Converter、Matte、Vector、Distort)ごとに整理されたコンポジターノードの完全なカタログについては、references/node_reference.md を参照してください。

検索する主なカテゴリ:

  • 色調整:「Color」「Balance」「Curves」を grep します
  • ぼかし/フィルター効果:「Blur」「Filter」を grep します
  • キーイング/マット:「Key」「Matte」を grep します
  • レンダーパス:「Render Layers」「pass」を grep します
  • 出力:「File Output」「Composite」を grep します
  • Blender 5.1 の変更点:「5.1」「Strip Info」「SDF」を grep します

Python API リファレンス

コンポジターノードの型文字列、ツリーの設定、レンダーパスの有効化、File Output の設定など、Python API の完全なパターンについては、references/python_api.md を参照してください。

コメント