おすすめした岩のチュートリアルを追う②
おすすめした以上はね

概要
最近岩のチュートリアルを知人におすすめする機会があった。
(https://www.procedural.jp/articles/p9toa-c3f)
自分も追いなおして紹介されているテクニックなどをまとめていく。
本記事の内容
Free Masterclass: Developing Complex Details Using Volumes in Houdini
上述のボリュームベースで岩のディテールを作成するチュートリアルを追っていく。
非常に素晴らしいクオリティの岩を作成できるチュートリアルです。
本記事はこの動画の1時間5分くらいまで。
35分くらいまではこちらの記事を参照:https://www.procedural.jp/articles/dlb22jqgpcal
紹介されているテクニック
前のブログからの続き
分割ごとにオフセットを持たせた移動をさせて亀裂を作る
1.connectivityを作成しpointの接続ごとにclassアトリビュートを作成
2.前の項目で形状にノイズを入れるために作成したpoint vopを複製

3.複製したpointvopにbindで入力したclassアトリビュート準拠で生成したrandom値を変形用ノイズのaanoiseのoffsetに入力する

各ポイントに所属しているパーツの中心位置を保存する
(この後この値を参照していろいろ行う)
- assembleノードを二つ作成
- 一つ目はname attribute の作成に利用(paramはデフォルトのまま)
- 2つ目のassmeleは中心点を作成するために使うので Create NameAttributeをオフにして
CentroidPackedGeometryをオン、Display asを Centroidに変更
さらにrestを接続してその中心点をrestアトリビュートとして作成する

- 一つ目のassembleにattribpromoteを接続し、nameアトリビュートをpointに転送

- attrib promote、restにattrib copyを接続し、nameアトリビュート準拠でrestを各ポイントに転送する。
これで各ポイントが所属するパーツの中心点を保持できた状態になる
中心点を中心にスケールする
- 前述の工程でrestアトリビュートをコピーした接続の先にpoint vopを作成する
- bindを作成し、restを取得。TypeはVectorに変更する
- Pとbindで入力したrestをmixする

中心点をpivotに回転する
- 前述の工程でrestアトリビュートをコピーした接続の先にpoint vopを作成する
- bindを作成し、restを取得。TypeはVectorに変更する
- transform matrix ノードを作成しPをpos、restをpivotに入力する
- restをnoiseのP参照値に入力し、fitでスケール範囲を調整してxformのrotに接続する

vop内のノードのパラメータをvopから操作できるようにする
- vop内ノードのパラメータをホイールクリック

- 一番上のメニューを選択するとなんか丸っこいのが付く
- 外のvopノードからパラメータを操作できるようになる

VDBに変換し、メッシュ同士を結合する
- DistanceVDBをオフにしてFogVDBを有効
(現段階だとdistanceとfogでは大きく変わらないがこのチュートリアルだと
この後の調整のためにFogベースで設定している模様) - convertVDBを作成しポリゴンを作成
isovalue、adaptiveを変更すれば形状の密度などを調整できる

VDB結合前に回転してマージしておくとクリップしやすい(?)
(すみません、ちょっと翻訳英語を理解できませんでした…)
クリップして並べる時にディテールのループしやすいとかだろうか

表面にディテール用のノイズを適用する
- 前項で作成したディテールノイズ追加のpoint vop構成を作成し、convertVDBでfogにした後に接続

- freq、offset、amp、rough、max octave をpromote

- 必要に応じていろいろノイズをかける

ここまでで大体1時間5分。
全体の3分の1くらいだけどここまでですでにかなりテクニックが詰まっていて素晴らしい。

fish_ball
プロシージャル魚類