3DCGモデリングをする際は基本的に頂点(ポイント)、辺(エッジ)、面(ポリゴン)の位置やスケール、回転を調整することで理想のメッシュを作るのですが、制作するオブジェクトによっては、頂点などの座標を動かすだけでは作るのが難しいものもあったりします。
その一つが、オブジェクト同士の結合や一部をくり抜いたメッシュです。一言で説明すると少し難しいので、下の画像を例にしてみましょう。
上のオブジェクトは立方体と円柱を組み合わせて、円柱の部分をくり抜いたもの。シンプルなので、一見簡単そうなオブジェクトですが、通常のポリゴンモデリングの時のようにカットや位置ツールを使ってこの形を再現しようとすると、かなりの労力と時間がかかってしまうので、手動で行うにはあまりおすすめしません。
そこで、Blenderを含む多くの3DCGソフトウェアで利用出来るのが「ブーリアン(Boolean)」というツールです。使用するソフトウェアによって、名称や操作方法がっ若干異なるものの、出来ることはほぼ一緒で2つのオブジェクトを合体したり、交差している部分のみを表示させたり、交差している部分を非表示にするといった事ができます。
Blenderでのブーリアン
Blenderでは「ブーリアン」のモディファイアーが用意されており、ベースとなるオブジェクトにブーリアンモディファイアーを適用させ、ブーリアンの影響を与えるオブジェクトを指定するだけで、ブーリアンを反映できます。
上の立方体をベースにして、球体を組み合わせてブーリアンを適用させてみます。オブジェクトモードで「Shift + A」またはビューポート上部の「追加」、「メッシュ」から「UV球」をクリックします。
球体のスケールや位置などを調整して、ブーリアンを適用する形を決めておきます。
調整を終えたら、ベースのオブジェクトである立方体を選択し、プロパティの「モディファイアー」に移り、「モディファイアーを追加」をクリックして、「生成」の「ブーリアン」をクリックします。
ブーリアンモディファイアーを追加すると、「演算対象」、「オブジェクト」と「ソルバー」のパラメータが用意されており、ここでブーリアンを適用するオブジェクトを指定します。
今回は球体オブジェクト単体なので「演算対象」を「オブジェクト」に、「オブジェクト」の項目ではドロップダウンメニューから「球」を選択するか、スポイトツールを使ってビューポート上の球体オブジェクトを選択します。
Cinema 4Dであれば、ブールの対象オブジェクトを指定すると自動で適用されますが、Blenderではデフォルトでは何も起きないので、モディファイアーの適用後にブーリアンに指定したオブジェクトまたはコレクションを非表示にすることで、ブーリアンの効果を確認することができます。
上の画像ではビューポート上に球体が表示されなくなりましたが、「レンダーで無効」はオンになったままなので、下のようにレンダリング時に表示される場合があります。
このような事を防ぐため、ブーリアンモディファイアーを適用した後は必ず、「オブジェクト」で指定したオブジェクトを「ビューポートで隠す」と「レンダーで無効」のアイコンをクリックして非表示にしましょう。
複数のオブジェクトにブーリアンを適用する
基本的にベースとなるオブジェクトとブーリアンで指定したオブジェクトの2つのオブジェクトでしかブーリアンの適用はできないのですが、複数のオブジェクトをコレクションに格納することで、2つ以上のオブジェクトでもブーリアンを反映できます。
上の画像ではベースとなる立方体の他に、ピンク色の立方体が3つあり、このピンクの立方体にブーリアン適用していきます。
アウトライナーから「新規コレクション」アイコンをクリックして、コレクションを作成した後は、ブーリアンを適用する3つの立方体を中に格納します。コレクション名はわかりやすいように「BoolGroup」にしています。そして、ベースの立方体にブーリアンモディファイアーを追加します。
モディファイアーの設定で「演算対象」を「コレクション」に、「コレクション」では「BoolGroup」を指定し、アウトライナーにあるコレクションの「ビューポートで隠す」と「レンダーで無効」のアイコンをクリックすると、ブーリアンが適用されます。
ブーリアンのモード
ブーリアンには「交差」、「合成」、「差分」の3種類のモードが用意されており、選択するモードによってブーリアンの効果が異なります。
デフォルトで適用されている「差分(Differece)」は演算対象のオブジェクトとして指定したオブジェクトを非表示にするものです。ブーリアンのツールで一番良く使われる演算方法です。
「合成(Union)」では2つのオブジェクトが合成され、重なっている内部のポリゴンは削除されるモードです。
一見するとくっついただけに見えますが、ワイヤーフレームにすると重なっている部分が非表示になっています。
「交差(Intersect)」では2つのオブジェクトが重なっている部分のみを表示するモードです。
ブーリアンの適用
ブーリアンモディファイアーが反映されている時は非破壊の状態なので、オブジェクトを自由自在に動かしたり、スケールを変更することができますが、交差している部分などの頂点や辺、面の操作、編集は行えません。
頂点や面などの編集を行うには、ブーリアンの状態を確定させた上で、ブーリアンモディファイアーの一番右にある三角アイコンをクリックして「適用」を選択すると、ブーリアン適用後のメッシュとして変換されます。
適用後、演算対象に指定したオブジェクトはそのまま残りますが、ブーリアンを適用したオブジェクトは変換され、編集モードで調整可能になります。
ブーリアンはとても便利ではあるものの、適用後は必要以上の頂点ができたり、Nゴン(N-Gon)が増えてメッシュのジオメトリがすごいことになり、サブディビジョンサーフェスを適用する場合は下のように思い通りに行かない場合があるので注意が必要です。
上のようなトラブルを避けるにはブーリアンと適用するオブジェクト同士の頂点や辺の数を気にする必要があったり、適用後にカットを追加したり、頂点を整理するなどのクリーンアップが必要ですが、慣れてくるとすごく便利なツールなので、ぜひ活用してみてください。
(MIKIO)