今回はBlenderのIDマスクの使い方についてご紹介していきたいと思います。前提知識としてコンポジットノードの使い方が必要なので、もし分からない場合は下記の記事をご覧ください。
Blender ノードエディタの使い方03【コンポジットノード・最終調整】
IDマスクで出来ること
IDマスクで出来ることとして、上図のように何もない立方体に対してコンポジットノードでID分けして効果を付けることができます。
上図はコンポジットノードでIDマスクを使ってカラー分けしたものになります。これだけ見てもあまり便利さが分からないので、マスク毎にフィルターを追加してみます。
左から順に、サンビーム、ぼかし、フィルターのキルシュを追加しています。
このようにフィルターをかけたいオブジェクトに分けてフィルターをかけることができるようにするのがIDマスクとなっています。
IDマスクで使い方
本章からはIDマスクでの使い方をご紹介していきたいと思います。全て上図を例としています。
事前準備
まず始めにレンダーエンジンを【Cycles】に変更してください。EeveeのままだとIDマスクは利用できないためご注意ください。
次にコンポジットノードでインデックスを利用できるよう、上図の位置にあるオブジェクトインデックスとマテリアルインデックスにチェックを入れておく必要があります。
もし、オブジェクトインデックスしか使わない、逆にマテリアルインデックスしか使わない場合は、片方しかチェックを入れなくても大丈夫です。本記事では一応どちらにもチェックをいれています。
オブジェクトインデックスを使用した方法
まずはオブジェクトインデックスを使用した方法をご紹介していきたいと思います。
インデックスの振り分け
まずはインデックスを付与したいオブジェクトを選択した状態で、上図の位置にパスインデックスというものがあると思います。ここに自分が設定したい数字にしてください。
本記事では上図のようにインデックスを振りました。
コンポジットノードでの使い方
上図がIDマスクを使ったコンポジットノードの使い方の例の全体図となります。このコンポジットノードの結果が下図になっています。
このノードの組み方の中でもIDマスクに関係するところをご紹介していきたいと思います。
まずは入力のレンダーレイヤーからご紹介します。リンク元としてIndexOBというものがあると思います。もし無い場合は前節の事前準備をご覧ください。
このIndexOBからとIDマスクを使うことでID毎に使えるようになっています。
緑・赤・青のフレームはカラー以外全て同じのため、緑のみご紹介します。まずはIDマスクの抜き出したいインデックスの数値を入れます。すると、この出力リンクのアルファから、その抜き出したインデックスのみが取り出されることになります。
本記事では、ミックスノードに繋げて、最初の画像でIDマスクで隠されていない部分(インデックスを設定したオブジェクト以外)を黒く(何もない状態)にしてしています。
2つ目の画像で隠していた部分の色を付けています。
このようにして利用することができます。
マテリアルインデックスを使用した方法
次にマテリアルインデックスを使用した方法をご紹介していきたいと思います。
インデックスの振り分け
まずはインデックスを付与したいマテリアルを表示した状態で、上図の位置にパスインデックスというものがあると思います。ここに自分が設定したい数字にしてください。
本記事では各マテリアルにインデックスを割り振っており、そのマテリアルの割り振り方として上図のようになります。
コンポジットノードでの使い方
上図がIDマスクを使ったコンポジットノードの使い方の例の全体図となります。このコンポジットノードの結果が下図になっています。
このノードの組み方の中でもIDマスクに関係するところをご紹介していきたいと思います。
IDマスクの使用方法については前節でご紹介したので、本節では入力のレンダーレイヤーのみご紹介します。
入力のレンダーレイヤーのリンクにIndexMAというものがあると思います。こちらも無い場合は事前準備をご覧ください。
そこからIDマスクに接続することで、IDを使って分けることができます。
本記事の内容は以上となります。
IDマスクはレンダー結果に物が多くあるとき、一括してフィルターをかけたくない時等に非常に有効になるものだと思います。
本記事は以上となります。お疲れ様でした。