プロシージャルモデリング超入門

今回はhoudiniのプロシージャルモデリングの初歩的なお話をしようと思います。

グリッドの端っこだけ外側に押し出して上にちょっと上げただけの簡単な例です。

まずgridSOPを出します。端っこのエッジを一つダブルクリックしてボーダーエッジ全部を選びます。

Mayaとかで結構ありがちな罠ですよね。履歴のパラメータをいじるとグチャります。houdiniでも同じことが起きます。

これは迂闊な非プロシージャルな作り方ですね。houdiniらしくないです。

では何故グチャったのでしょうか?それは

polyExtrudeSOPのGroupのところに元のボーダーエッジを表すエッジナンバーが固定値で羅列されているのが原因です。最初のgridSOPのRowsやColumnsを変更すると番号はコロコロと変わっていきます。これではずれますよね。

RowsやColumnsを変えてもグチャらせない為にはボーダーエッジを正しく取得してpolyExtrudeに渡してやる必要があります。

ではどのようにすれば良いのでしょうか?

同じことをhoudiniらしくプロシージャルにやってみましょう。

常に正しいボーダーエッジを得る為にはgroupSOPを使います。

gridSOPのすぐ下にgroupSOPを追加して

これで常に正しいボーダエッジのグループが取れました。

このグループ名を使ってpolyExtrudeSOPにボーダーエッジを渡してあげられます。

polyExtrudeSOPには生成した内容を幾つかのGroupとして記録してくれる機能があります。FrontGroupをチェックしてGroupとして登録しておけば上に持ち上げる時に利用出来ます。

手動でエッジを移動するのではなくtransformSOPに先程登録したグループを渡して上げてtranslateYの値を入れて持ち上げてあげましょう。

これで最初のgridSOPのRowsやColumnsをいくら変えてもグチャらなくなりました。

後からの変更に強く臨機応変に対応出来るプロシージャルモデリングの簡単な例をご紹介致しました。

他のDCCツールとは考え方が全然違いますね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です