blender-compositing-nodes について
blender-compositing-nodesは、ノード構成、Pythonスクリプト、レンダーパス、一般的なエフェクトを扱う、Blender 5.xコンポジター向けのガイドスキルです。Blenderユーザーの構成設計や問題解決を支援し、接続済みのBlender MCPサーバーがあれば、シーンを編集して結果を確認できます。
主な機能
- 01コンポジターノードのパイプライン設計
- 02Pythonによるノードツリー生成
- 03レンダーパスとマルチレイヤー出力の処理
- 04カラーグレーディング、キーイング、デノイズ、エフェクト
- 05稼働中のBlenderセッションでの確認と検証
活用シーン
- 01レンダー用のコンポジター設定を構築
- 02画像のデノイズやカラーグレーディング
- 03グリーンバックのキーイングやブルーム追加
- 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— 実行中のセッションでbpyPython を実行します(主な操作)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 を使ってコンポジットのセットアップを作成する場合:
- 正しい API パターンとノードタイプ名について、
references/python_api.mdを読みます - 次のパターンに従ってスクリプトを構成します:
- シーンでコンポジターを有効にします:
scene.use_nodes = True - コンポジターノードツリーにアクセスします:
tree = scene.node_tree - デフォルトのノードをクリアします
- 正しい型文字列を指定して、すべてのノードを追加します
- ノードを左から右に配置します(間隔は x 方向に約 300、y 方向に約 200)
- ノード入力にデフォルト値を設定します
- ノード間のリンクをすべて作成します
- 必要なレンダーパスをビューレイヤーで有効にします
- シーンでコンポジターを有効にします:
- 複雑なセットアップを論理的なセクションに整理するには、Frame ノードを使用します
ノード型文字列の規則
- ほとんどのコンポジターノード:
CompositorNode<PascalCaseName>(例:CompositorNodeRLayers、CompositorNodeComposite) - 正確な型文字列が不明な場合は、
references/python_api.mdを参照してください
コンポジットのレシピ
Denoise
- Render Layers → Denoise ノード → Composite
- 接続:Image → Image、Denoising Normal → Normal、Denoising Albedo → Albedo
- デノイズデータパスを有効にします:
view_layer.use_pass_denoising_normal = True、view_layer.use_pass_denoising_albedo = True - 最高品質を得るには、組み込みの Denoise ノード(OpenImageDenoise)を使用します
- Cycles では、セットアップを簡素化するため、組み込みのレンダーデノイザー(
scene.cycles.use_denoising = True)を優先してください
カラーグレーディング
- Render Layers → Color Balance(Lift/Gamma/Gain または Offset/Power/Slope)→ Composite
- 彩度を調整するには Hue/Saturation/Value を追加します
- トーンカーブを細かく制御するには Color Curves(RGB Curves)を追加します
- 接続順:Render Layers → Bright/Contrast → Color Balance → Hue Sat → Curves → Composite
- Split Viewer を使って処理前と処理後を比較します
キーイング(グリーン/ブルースクリーン)
- Image/Movie Clip → Keying ノード → Composite
- Key Color をスクリーンの色に設定します(スポイトを使用します)
- 次の項目を調整します:Pre Blur、Screen Balance、Clip Black/White、Despill Factor/Balance
- 難しいキーイングの場合:Image → Keying Screen → Keying ノード
- Dilate/Erode を追加してマットのエッジを整えます
- マットに Blur(Gaussian)を追加してエッジを柔らかくします
- 合成:Set Alpha → Alpha Over(前景を背景プレートの上に配置)
グレア(ブルーム/ストリーク/フォググロー)
- Render Layers → Glare → Composite
- グレアの種類:
'BLOOM'、'STREAKS'、'FOG_GLOW'、'GHOSTS' - 主な設定:Threshold(値を下げるほどグローが強くなります)、Quality(最終出力では High)、Mix(ブレンド量)
- ブルームを選択的に適用するには、先に Color Ramp または Math(> threshold)でハイライトを分離します
被写界深度(ポストプロセス)
- Render Layers → Defocus ノード → Composite
- Z パスを Z 入力に接続します(Z パスを有効にするには
view_layer.use_pass_z = True) - f-Stop、Max Blur、Threshold を設定します
- Cycles では、ポストプロセスの Defocus よりカメラの DOF を推奨します(品質が高いため)
- EEVEE では、コンポジターの DOF よりカメラの DOF を推奨します
レンズ歪み
- Render Layers → Lens Distortion → Composite
- Distortion:樽型(-1〜0)または糸巻き型(0〜1)
- 黒い境界を避けるには「Fit」を有効にします
- Dispersion:色収差(0.01〜0.05 など、控えめな値)
ビネット
- Ellipse Mask → Blur(Gaussian)→ Mix(Multiply)→ Composite
- または、Lens Distortion で Dispersion のみを使用して、控えめなビネットを作成します
- マスクのサイズや位置を調整して、ビネットの形状を制御します
フィルムグレイン
- Render Layers → Mix → Composite
- ノイズを生成します:Value ノードと Noise Texture(または画像ベースのグレインを使用します)
- Mix モード:Overlay または Add を低い係数(0.05〜0.15)で使用します
レンダーパスの分離
- Render Layers ノードには、有効になっているすべてのパスが表示されます
- パスを有効にします:Diffuse Color/Direct/Indirect、Glossy Color/Direct/Indirect、Transmission、Emission、Environment、AO、Shadow、Mist、Normal、Z
- 各パスを個別に処理します(例:Glossy を強調し、Diffuse の彩度を下げます)
- 再合成します:Shader パスを Add で合成し、その後 Color パスと Multiply します
マルチレイヤー EXR 出力
- Render Layers → File Output ノード(OpenEXR Multilayer に設定)
- 保存する各パスの入力ソケットを追加します
- ベースパスとファイル名を設定します
- 各入力は EXR 内のレイヤーになります
- 個別のファイルに出力するには、ソケットごとにファイルパスを設定した File Output を使用します
シーケンサーのストリップ情報(Blender 5.1)
- CompositorNodeStripInfo は VSE ストリップのタイミングメタデータを出力します(5.1 の新機能)
- 出力:Frame、Strip Start、Strip End、Strip Duration、Speed Factor
- クリップのタイミングに基づいてコンポジターエフェクトを制御するのに便利です
- シーン内にアクティブなシーケンサーストリップが必要です
マスクから SDF への変換(Blender 5.1)
- CompositorNodeMaskToSDF はバイナリマスクを符号付き距離場に変換します(5.1 の新機能)
- 出力:SDF(符号付き距離の値。内側は負、外側は正)
- マスクの滑らかなエッジ、幅が変化するアウトライン、グローエフェクトの作成に便利です
- Math ノードと組み合わせて、SDF の幅をしきい値処理または調整します
フォグ/ミスト
- Mist パスを有効にします:
view_layer.use_pass_mist = True - Scene Properties → World → Mist Pass でミストを設定します(Start、Depth、Falloff)
- Render Layers(Mist)→ Color Ramp → Mix(フォグの色と合成)→ Composite
Cryptomatte
- ビューレイヤーで Cryptomatte パスを有効にします
- コンポジターに Cryptomatte ノードを追加します
- Viewer でオブジェクトやマテリアルを選択します
- 出力:Image(抽出画像)、Matte(マスク)、Pick(ID の視覚化)
- マットを選択的なポストプロセスに使用します
デバッグと最適化
よくある問題
- コンポジターが実行されない:コンポジターヘッダーで Use Nodes がチェックされていること、Post Processing(Render Properties)で Compositing が有効になっていることを確認してください
- 出力が黒い:Render Layers ノードが Composite ノードに接続されていることを確認してください。また、シーンがレンダリング済みであることを確認してください(コンポジターはレンダー結果に対して動作します)
- パスのデータが正しくない:View Layer Properties でパスが有効になっていることを確認してください。パスを有効にした後、再度レンダリングしてください
- バックドロップが表示されない:コンポジターヘッダーで Backdrop を有効にしてください。Viewer ノードを接続してください
- コンポジットが遅い:プレビュー解像度を下げてください。ぼかしの種類には「Fast Gaussian」を使用してください。使用していないノードを無効にしてください
パフォーマンスのヒント
- Viewer ノードを使用すると、全体を再度コンポジットせずに中間結果をプレビューできます
- 使用していないブランチをミュートします(Ctrl+M)
- 反復作業中は低品質設定を使用し、最終レンダーでは High に切り替えます
- アニメーションでは、コンポジターのデノイズよりレンダーレベルのデノイズを優先してください(より高速です)
- File Output ノードによるオーバーヘッドは最小限です。パスのデバッグに気軽に使用してください
- 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 を参照してください。