Houdini 21.0 Height Fieldと地形

Flowフィールド

(山から流れ落ちていく)Flowフィールドを生成します。

Flowフィールドは、Heightfield Erode SOPHeightField Slump SOPで利用可能ですが、単独のHeightField Flow Field SOPでも利用可能です。 例えば、これらのフィールドをHeightField Distort by Layer SOPのDistortionレイヤとして使用することができます。 レイヤの別の応用例としてはマスクがあります。 あるいは、岩、木、その他の景観要素を散布するためにこれらのフィールドを使用することもできます。 Flowフィールドは、物質が削られた運搬されるあらゆる種類の侵食において興味深いものです。

Flowフィールドを計算すると、2つのレイヤ(flowflowdir)が生成されます。 flowレイヤは、ボクセル空間における累積した物質の流れを表現します。 flowdirレイヤは、各ボクセルにおける平均的な流れの方向を示します。 そのflowdirレイヤには高さ情報は含まれません。 下図は、Heightfield Erode SOPのflowレイヤ(白)を示しています。

例: 侵食チャネル(流路)

以下の例では、Flowフィールドを用いて歪曲処理によって深い侵食流路を生成する方法を説明しています。

Note

すべての説明と例では、非常に基本的な地形セットアップを使用しています。 そのセットアップは、HeightField SOPHeightField Noise SOPで構成して山や岩の構造を生成します。 十分なディテールが必要であれば、HeightField SOPの Grid Spacing パラメータを1に設定してください。

この基本的なセットアップの操作方法の詳細は、ゼロからHeight Fieldを生成するイントロダクションをお読みください。

  1. 地形には既に垂直オフセットが入っているWorleyノイズを使用していくので、HeightField Noise SOPの Center Noise トグルをオフにします。

  2. Amplitude パラメータを400に設定します。 これによって、山の高さがわずかに低くなります。

  3. Noise Settings セクションの Noise Type ドロップダウンメニューから Worley Cellular F1 を選択します。 これによって、鋭い峰と尾根を持つ山脈が表示されます。

  4. HeightField Distort by Noise SOPを配置して、 1番目 の入力をそのHeightField Noise SOPの出力に接続します。 このノードは、規則的なフラクタルを崩して小さな岩の構造を生成します。

  5. もっとディテールを増やすために、 Element Size パラメータを75に変更します。

Flow

ここでは、後ほど侵食量を制御するFlowフィールドを作成していきます。 HeightField Flow Field SOPは、HeightField Slump SOPを改良したものと考えることができます。 そのHeightField Slump SOPは、斜面を滑り落ちる際の瓦礫や緩い物質の挙動をシミュレーションします。 HeightField Slump SOPの詳細は、別の章で説明しています。

  1. HeightField Flow Field SOPを配置し、その入力をそのHeightField Distort by Noise SOPの出力に接続します。 しばらくすると、赤いマスクが表示されます。

  2. Flow タブにある Slump Mode パラメータを Smooth に変更します。 このモードでは、水はすべての可能な方向に広がります。

  3. より強い降水をシミュレーションするために、 Rain Amount パラメータを0.4に変更します。 雨滴が地形上の広い領域を覆う確率が高まるため、マスクがやや密になります。 Rain Density パラメータを使用すれば、通常から激しいまでの様々な雨のタイプをシミュレーションすることもできます。

Flowレイヤ

イントロダクションで説明している通り、HeightField Flow Field SOPは、水が地形上でどのように広がるのかを表現したいくつかのレイヤを生成しますが、その水自体を表現したwaterレイヤもあります。 waterレイヤは、HeightField Flow Field SOPの Rain Amount パラメータおよび Rain Density パラメータ、地形内に水が集まる箇所から直接影響を受けます。

HeightField Visualize SOPを使用することで、それらのFlowフィールドレイヤを可視化することができます。 単にそのHeightField Visualize SOPの Layer パラメータを使用して、 Color を適用するだけです。 以下の画像は、そのHeightField Visualize SOPでflowdir.xwaterflowflowdir.zのレイヤを表示したものです。

歪曲

この手順では、flowレイヤを使用して地形の変位をスケールさせて、侵食チャネル(流路)のサイズと深さを制御します。

  1. HeightField Distort by Layer SOPを追加して、 両方 の入力をそのHeightField Flow Field SOPの出力に接続します。 この 2番目 の入力は、既存レイヤをすべての関連パラメータで利用可能にします。

  2. Scale Field パラメータのドロップダウンを開いて、flowを選択します。 このフィールドは、マスクされた領域内の地形を変位させるために使用します。

  3. Displace Scale パラメータを2に設定して、より深く、より顕著な流路を生成します。

流路が深すぎたり、微細なスパイクが生じているようであれば、そのHeightField Distort by Layer SOPの後にHeightField Blur SOPを追加すると良いでしょう。 Radius パラメータを0.5または1に設定して、可能な限りディテールを保持します。

そして、マスクを除去するために、ネットワークの最後にHeightField Mask Clear SOPを接続します。 Layer 1 のデフォルト値は既にmaskとなっているため、変更は不要です。 その後、そのHeightField Mask Clear SOPの青い Display/Render フラグを有効にして、最終結果を確認してください。

Height Fieldと地形

生成

  • 地形の生成

    HoudiniのHeight Fieldを用いた基本的なワークフロー。

  • マップからHeight Fieldを生成

    マップからディテールの細かい地形を生成することができます。

  • 単独の山

    必要な場所にカスタムの丘や山を生成します。

  • レイヤ

    レイヤを積み重ねてマスクを適用することで、よりリアルな表現を高めます。

  • 段丘化(Terracing)

    頂上に近いほど段状の地形を生成します。

  • 歪曲(Distortion)

    地形を形作って自然な見た目にします。

  • 地形のペイント

    アーティストの気分で、ご自身で景観をペイントしましょう。

  • 投影

    任意のジオメトリをHeight Fieldの一部に変換します。

  • パッチ(継ぎ合せ)

    パッチ(継ぎ合せ)とカットアウト(切り抜き)を用いて地形を組み立てます。

  • パターン

    基本的なジオメトリパターンからリアルな地形を生成します。

  • リサンプリング

    地形の解像度を段階的に上げます。

  • 様々な特徴部

    地形を変換、エクスポート、特徴豊かにします。

散布

マスク

  • マスキング

    修正したい領域やディテールを加えたい領域を定義します。

  • ライトマスク

    地形上の日照領域からマスクを作成します。

自然現象

VEX

テクスチャ

Shallow Water Solver(浅水ソルバ)