admin

VEX

エッジの凹凸

ハーフエッジを使った凹凸判定山折りのエッジのみをグループする// Run Over: Points// 事前にプリミティブに法線を設定している必要あり//// 接続しているポイントをリストするint neighbours[] = neigh...
VEX

FBX出力の階層

環境:Houdini 18.0.532Wrangleにそれぞれこのように書く。// Run Over: Primitives@path = "box";s@path = "box/sphere";s@path = "box/blank/sp...
数学

重力で線路を走る

重力加速度だけでカーブ上を走らせる計算です。カーブの準備進行ベクトルを@Nに、車両を傾ける上方向のベクトルを@upに格納しておく。このカーブから傾きを取得して車両の姿勢に反映させる。重力加速度はg*sinΘとなる。Θはカーブの進行ベクトルの...
数学

回転行列からオイラー角を求める

NやUpベクトルからなる回転行列からオイラー角を求める方法。Houdiniのカメラにオイラー角の入力ボックスしか見当たらなかったので計算することに。回転行列を掛け合わせた行列をつくるXYZ軸すべての回転行列を掛けた結果の行列をつくる。Z回転...
VEX

フロッキングアルゴリズム

「結合」「整理」「分離」の3つのルールで群れの動きを表現します。結合(Cohesion)周囲(視野範囲内)のユニットの平均位置に向かうベクトル。このベクトルによって互いを引き合って集団を形成することができます。整理(Alignment)周囲...
Python

最短経路探索(ダイクストラ法)

Input0にConvertline SOPでポリライン化した地形を、Input1に始点と終点を含むポリラインを差す。// RunOver: Detail// input0: Polyline Graph// input1: Polylin...
VEX

VEXでのベクトルと行列

ベクトルvector v0 = set(0, 2, 3);vector v1 = set(2, 2, -5);// 正規化v0 = normalize(v0);printf('v0:' + sprintf('%g', v0) + '\n')...
Polyline

Polylineに沿ったメッシュの座標変換

バックボーンカーブをつくる進行方向のベクトルを@Nに、アップベクトルを@upに格納したポリラインを用意する。真っ直ぐにジオメトリをつくるポリラインと同じ長さでZ軸方向に伸ばしたメッシュを用意する。これをポリラインにフィットさせる。法線を変換...
数学

平面と直線の交差判定

定義空間上の平面は平面式 ax + by + cz + d = 0 で定義できる。a, b, cは法線ベクトル、x, y, zは座標で、dは係数(内積)。法線ベクトルが正規化されている場合、dには原点から平面までの最短距離が入ることになる。...
Python

CSVの書き出し

Nullノードを使ってボタンを押下した時に実行する仕組みをつくる場合Pythonコードを実行するノードの作成Pointアトリビュートの値を出力する例UIにFileパラメータを追加している。node = hou.pwd()geo = node...
スポンサーリンク