【Houdini 18.5】建築:壁と屋根、床の自動認識

Rebuild Factoryzの礒です。
今回は建築や背景建造物のモデリングにHoudiniを使っていく上で、役に立つTipsを紹介していきたいと思います。


全体図

今回の例ではたった3つのノードを用意しました。
実際は2つのノードに圧縮できますが、結果をわかりやすくするためにBlastノードをくっつけました。

Box

Boxは何もいじっておらず、デフォルト設定です。

Attribute Wrangle

WrangleでVEXを書いて立方体の各面にたいしてアトリビュートを設定していきます。
注意しておくところは、Run OverをPrimitiveにしておきます。

if(@N.y == 1){ //ノーマルのY軸が1なら
     s@facing = "top"; //facingというアトリビュートにtopを代入
 }else if(@N.y == -1){ ノーマルのY軸がー1なら
     s@facing = "bottom"; //bottomを代入
 }else{ //それ以外なら
     s@facing = "wall"; //すべてwallにする
 }

String型のアトリビュートとしてfacingを用意して、各プリミティブ(面)のノーマルのY値を参照して1かー1ならtopかbottomを代入します。
そしてそれ以外、つまりY値が1でもー1でもなければwallを代入します。

ビジュアライズ

実はやらなくても、把握していればそこまで支障はないのですが、アトリビュートがどうなってるか可視化するためにビジュアライズしましょう。

ビューの右側にあるディスプレイオプションでVisualizationを右クリックして、Sceneの+をクリックします。

でてくるメニューからMarkerを選択します。

Edit Visualizerが開きますので、NameとLabelをfacingと入力、Attributeにもfacingと入力します。
最後にCloseをクリックして閉じます。

あとは作ったfacingという名前で作ったVisualizersにチェックを入れます。

これでビューにあるボックスの中心にfacingアトリビュートに格納されている文字列が表示されます。
単純にわかりやすくなるのでおすすめです。

Blastで面抽出

Blastノードを使うことで、アトリビュートごとに面を消したり抽出することができます。

Group項目の書き方がちょっと特殊です。
@facing=top
と入力すればtopとなっている面だけを指定することができます。
あとはDelete Non Selectedにチェックを入れれば面抽出完了です。

一応これで必要なことは述べましたが、もうちょっと例を広げてみましょう。

Blastでモデリング効率化

Blastノードを3つ用意し、それぞれ@facing=wall、@facing=bottomとGroup指定して選択以外を削除にすれば各要素ごとにモデリングを進めていくことができます。

終わり

今回はシンプルな話だったと思うのですが、Houdini触り始めて2日目とかだと難しい内容かもしれないですね。

今回の例をもっと広げて考えると、

ちょっと複雑なジオメトリーになっても自動的にアトリビュートを設定することができるので、多少複雑化しても整理しながらモデリングを進めていくことができます。

では今回はこれで終わります。

投稿者: Rebuild Factoryz 礒

Rebuild Factoryzの礒です。 現在は3DCGのモデリングやレンダリング、そしてUnityでのVR環境構築の仕事をしております。 アスペルガー症候群とADHD、双極性障害、解離性障害(記憶障害)を持っています。障害を持っているとは思っていなかった少年時代はいじめ問題に悩まされて生きてきました。今は障害を持ちながら、適度に社会と交流しながら生活していければ良いなと思っています。普通の人とは違う価値観をブログ等で発信していけたら幸いです。 趣味は3DCGモデリングと読書、そしてブログです。

【Houdini 18.5】建築:壁と屋根、床の自動認識」への1件のフィードバック

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

%d人のブロガーが「いいね」をつけました。