HOME

Maneki Pipeline

ゲーム開発のためのプロシージャル

AttibutePromoteを使った最大値/最小値の取得

AttributePromoteノードは値の範囲を参照する機能もある

環境

HoudiniIndie21.0.512

Attribute Promote

HoudiniDocument | Attribute Promote Geometry Node
https://www.sidefx.com/docs/houdini/nodes/sop/attribpromote.html

Attribute Promoteノードはアトリビュート種別の変更に利用できるノード。

vertexアトリビュートのCdをprimアトリビュートに変換

が、変換する以外に最大値、最小値を取得するような使い方もできる。
VEXなどで自分で作成するよりはるかに処理も早い。

値の最大値/最小値の取得

AttributePromoteにはpromotion methodという設定項目があり、変換時にどの値を基準にアトリビュートを変更するかという機能になる。

Promotion Method項目

デフォルトでは平均値になっているのだがこの設定を変更すると最大値、最小値などの取得もできる。またこの時、Max、Minなどの参照範囲は変換先のコンポーネントに依存するので、Detailアトリビュートにするとジオメトリ内で全体で最大値、最小値などが取得できる。

Detail範囲にPromoteすると全体のmaxやminが取れる

用例:attribute remapを使った正規化

これを使って、例えばgroup promoteで最大値と最小値を取得して正規化範囲のエクスプレッションに利用できる。measureでareaなどを取得したジオメトリにAttribPromoteを接続し、

  • New Class:Detail
  • Promotion Method:Minimum (Maximum)
  • Change New Name:有効
  • NewName:min_area、max_area など
  • DeleteOriginal:無効
areaからmaximumないしminimumでdetailに変換し、リネーム

値の最大値、最小値が取得できるのでattrib_remapで正規化ができる。

remapにdetailに取得していたmin、maxを当てはめて面積の最小~最大の範囲でrampカラーを設定

AttribPromoteはノード名からはイメージしづらいですが、値の範囲を参照できる機能を持っています。

fish_ball

プロシージャル魚類