Houdini 18 SOP No.21 “Poly Bevel:3.0 SOP”


~“Poly Bevel:3.0 SOP”~

前回に引き続きHoudini18.0のSOPノードの解説を行います。
今回のノードは新しく追加されたものではなく、機能が追加されたノードになります。
前回の記事をご覧になられていない方はこちらからご覧ください。

※本記事ではHoudini 18.0.416を使用しています。

今回はPoly Bevel:3.0 SOPについて説明していきます。

 

Poly Bevel:3.0 SOP

今回説明していくPoly Bevel SOPにも非常に大きな変更がありました。ノード内のパラメータの変更もありますが、このノード自体の処理が大きく変わり使いやすくなっています。
Poly Bevel SOPは、エッジや角の面取りを行うことのできるノードとなります。その際の面取りされた形状は平面や丸みのおびたオブジェクトを作成することができます。また、Subdivide SOPなど分割数を上げるノードとは異なり、エッジ等の形状調整を行うことが非常に容易なノードとなります。

Houdini17.5ではポリゴンを内側にえぐるようなベベルを掛けることはできませんでした。しかし、Houdini18.0ではそれが可能となった他、ランプパラメータを用いて任意の形状のベベルを適用することもできるようになりました。その他にも複数の機能が追加されています。

それをこれから紹介していきます。

 

まず初めに基本的なPoly Bevel SOPの使い方を説明します。

今回は下の画像のようなモデルに対してベベルを適用していきます。

このようにベベルを適用するジオメトリが作成出来ましたら、Poly Bevel SOPを作成し接続します。
デフォルトではベベルが適用されないので、以下のように「Distance」を変更します。
(今回は0.1に変更します。)

そうすることにより下の画像のようにベベルを適用することができます。

また、下のように「Divisions」を変更することによってベベルの分割数を調整することができます。
(今回は10に変更します。)

そうすると下のようにベベルを掛けた部分に対して細かな分割を加えることができます。

以上が基本的なノードの使い方となります。

 

次にパラメータの説明を行います。

パラメータに違いはありますが、操作は従来のPoly Bevelとほぼ同じになります。

以下が各バージョンのパラメータになります。

赤色で囲った部分が変更されたパラメータとなっています。ここからわかるようにほとんどの項目で変更があります。しかし、先ほども書きましたが、パラメータに変更はありますが、基本操作は同じになります。
設定できるパラメータが増えただけでなく、機能は変わらず名前が変更になったパラメータもあります。
特に重要な「ベベルの強度を変更するパラメータ」名が「Offset」から「Distance」に変更されています。

また、このパラメータの中での変更点として非常に大きい部分が「Collisions and Limits」のフォルダ内のパラメータになります。
この部分は、ベベルが適用された際にベベルが自動停止する設定等を行うことができるパラメータとなります。
Houdini17.5の時にPoly Bevel SOPではベベルが無限に有効になってしまうため、ポリゴンが裏返ってしまう部分や、ベベルが掛かりきらない部分が出てしまいます。しかし、Houdini18.0ではそれが改善されています。
では、その処理がどのように変わったかを見ていきます。

「Detect Collisions」
 有効にすることでベベルを行った部分同士が衝突した際(重なった際)にそれ以上のベベルを行わないようになります。

無効の場合ベベルを掛けた場所が裏返ってしまう場合があります。しかし、有効の場合は裏返る手前(衝突した際)にそれ以上のベベルを行わないようになります。

「Restrict Sliding to Ring Edges」
 有効にするとベベルを有効にするエッジが別のエッジにあたった際にそれ以上のベベルを行わなくなります。

無効になっている場合は、上の画像の赤い丸がついている部分のようにベベルが無限に続きポリゴンが裏返ってしまう部分が出ます。しかし、有効にした場合には、黄色の丸がついている部分のように、ベベルを有効にしたエッジが別のエッジにぶつかった際にそれ以上のベベルが行われなくなります。

「Stop Loops」
 プルダウンによって「Never」「Individually」「Simultaneously」の3つを選択することができます。
 「Never」
  ベベルを自動で止めるのを無効にします。
 「Individually」
  コリジョンが発生したもののみを自動停止させ、それ以外のベベルは有効になります。
 「Simultaneously」
  どこか一部でもコリジョンが発生した際に全てのベベルを自動停止します。

「When a Point Reaches End of Its Slide」
 無効にした際にベベルを掛けたエッジがほかのエッジにぶつかった部分のみが自動停止し、エッジにぶつかっていない他のベベルを掛けている部分に対してはベベルを掛け続けます。

このようにベベルを有効にするエッジを他のエッジに接地させるようなベベルを行うことができます。

「When the Offset Front Pinches」
 このトグルを有効にした際にオフセットの角度がその下の「Pinch Angle」の数値未満になった際にベベルを自動停止します。

実際にどのようにベベルが停止するかを動画で確認してみましょう。

このようにベベルの自動停止が行えるようになりました。従来は行えなかったベベルや、パラメータをシビアに調整することなくベベルを掛けることができるようになります。

 

その他にも、従来のバージョンでは凸形状のモデルに対してベベルを掛ける際に発生していたベベルの限界により一部に対してベベルが適用されないという問題も解決しています。

具体的な比較画像は以下のようになります。

この凸形状のモデルが、ベベルを掛ける前のモデルになります。

そして以下の画像が各バージョンにて同条件でベベルを掛けた際のモデルになります。

赤丸で囲った部分のように下の立方体の上面のエッジに対するベベルに違いがあるのがわかります。17.5のベベルではベベルの限界により一部ベベルの掛かっていない部分がありま下が、18.0ではその問題が解消されています。

さらに18.0では、新しく下の画像のような内側にえぐるようなベベルを掛けることもできます。

このような形状を作りたい場合は、下の画像の赤く囲まれているパラメータ「Convexity」をマイナスの値にすることによりこのような形状を作ることができます。

このようにベベルの自由度が格段に上がっています。

その他にも、アウトプットすることのできるパラメータの数が増えて、アトリビュートの操作の自由度も向上しました。

以上がPoly Bevel:3.0 SOPの説明となります。

 

このようにベベルの自由度が上がり、従来よりも扱いやすいノードとなりました。それによってモデリング等の自由度が今以上に向上します。

こちらの記事のhipファイルが以下のURLからダウンロードできますので興味のある方はご確認ください。
https://www.dropbox.com/sh/mrmkj4a25wtb1mf/AABxQcdiQ9jj8vxV7UhTjHUFa?dl=0