| On this page |
HoudiniのHeight Field用の歪曲メソッドは、地形に複雑なパターンを追加することができます。 これによって、溶岩地帯、河川堆積物、乾燥した平原といった地質学的な構造だけでなく、様々な侵食構造や抽象的な風景も模倣することができます。 歪曲は、地形の外観を良くしたりランダムにするだけでなく、変化やディテールを加えるのにも非常に効果的な手法です。
基本的に、歪曲には4つの手法(Warp(撓曲:とうきょく)、ノイズ、レイヤベースの歪曲、パターンベースの歪曲)があります。
Note
すべての説明と例では、非常に基本的な地形を使用しています。
これは、山や岩の構造を得るために、HeightField SOPと
HeightField Noise SOPで構成されています。
十分なディテールを得るには、HeightField SOPの Grid Spacing を
1に設定してください。
この基本設定の操作方法に関する詳細は、ゼロからHeight Fieldを生成する方法のイントロダクションを参照してください。
Lattice Warp ¶
Warp(撓曲)は、HeightField Noise SOPの一部であり、 Distortion セクションに2つの基本的な手法のパラメータがあります。
まずは Lattice Warp から始めましょう。
Lattice Warp が地形の外観をどのように変化させるかをより明確に把握するために、 Amplitude を100に設定します。
-
Enable Lattice Warp トグルを有効にします。地形への影響は非常に微細で、ほとんど目立ちません。
-
Accumulate Lattice Warp トグルを無効にします。
-
Lattice Warp パラメータを
2まで上げます。 -
Freq パラメータを
6に変更すると、クレーター状の表面構造が得られます。
Lattice Warp 機能は、地形に渦巻くような外観を加え、この効果は Accumulate Lattice Warp トグルを有効にすると非常に顕著になります。
これによって、褶曲して練り上げられたような地形が表示されます。
Freq パラメータを例えば0.6まで下げると、表面は再び自然な外観を取り戻し、水によって形成された景観を彷彿とさせます。
Gradient Warp ¶
Gradient Warp 機能は、ノイズの山と谷を広げて、プラスとマイナスの値によってまったく異なる外観を表現します。 Lattice Warp 機能と同様に、この Gradient Warp 機能は、 Accumulate Gradient Warp トグルに強く依存します。 この機能は、歪曲効果を強調し、特徴的なパターンを生成します。
下記の設定効果を確認するために、 Enable Lattice Warp トグルを無効にして、 Amplitude パラメータと Element Size パラメータをそれぞれ500にリセットしてください。
-
Gradient Warp パラメータにマイナスの値を設定すると、鋭い山頂を特徴とする地形が生成されます。 画像比較で示されている結果を得るには、
-0.1の値を試しください。 -
0.2程度のプラスの値を設定すると、丸みを帯びた、ほぼ枕状の構造を持った地形が生成されます。 -
もちろん、両方の歪曲手法を組み合わせてハイブリッドなHeight Fieldを作成することもできます。
ノイズベースの歪曲 ¶
このタイプの歪曲は、HeightField Distort by Noise SOPで利用可能です。
このノードには、 Noise Type ドロップダウンメニューが用意されており、 Curl と Simplex の2つのメソッドを選択することができます。
ノイズ制御用のパラメータは、どちらのタイプでも同じです。
このノードのノイズタイプを扱う際には、 Amplitude パラメータと Element Size パラメータの比率を考慮してください。 Amplitude パラメータの値が高いと、ノイズとスパイクが大量に生成されます。 ノイズパターンを“引き伸ばして”使い物になるパターンを得るには、 Element Size パラメータを上げてください。 極端なスパイクを平坦化し、細かいディテールの量を減らすのに活用できるパラメータは、 Roughness です。 ノイズ関数における極端な差異を調整するための、もう1つの興味深いパラメータは、 Substeps です。
-
Curl は、Height Fieldを歪めるためのこのノードのデフォルトのノイズタイプです。 このメソッドを用いることで、河川敷、氷河、固化した溶岩地帯、さらには有機的な効果など、“流れるような”構造を作成することができます。 また、このノイズは山岳の崖に段丘の効果も加えます。
-
Simplex は、Perlinノイズに似たノイズタイプですが、より滑らかな結果を生成します。 Simplex を用いることで、適度な段丘効果と“流れるような”構造も実現可能です。
HeightField Noise SOPの Noise Type の Worley F1 と組み合わせることで、鋭い山頂を特徴とするリアルな山脈を作成することができます。
レイヤベースの歪曲 ¶
HeightField Distort by Layer SOPを使用します。
-
Layers パラメータは、歪ませたいレイヤ(s)を定義します。通常では
heightやmask、あるいは両方を歪ませます。 -
Control Layer パラメータでは、スカラーまたはベクトルのフィールドを指定する必要があります。これは、同じHeight Fieldでも別のHeight Fieldでも構いませんが、その他のボリュームフィールドも指定することができます。
-
Scale Field を指定することで、このノードの Displacement Scale を駆動させることもできます。
2番目 の入力にマスクや別のHeight Fieldネットワークを接続することで、そのレイヤを Control Layer に指定することもできます。 とはいえ、パラメータの組み合わせがほぼ無限であるため、その結果は予測が困難です。 たいていの場合、目に見える効果を得るには、かなり高い Displace Scale 値が必要となります。 Substeps も地形の外観に大きな影響を与えます。
パターンベースの歪曲 ¶
面白い形状やより抽象的な地形を作成する別のメソッドとして、パターンベースの歪曲があります。
HeightField Pattern SOPを使用する際は、ノイズやその他の歪曲/隆起処理を施していない単純なHeightField SOPから始めることをお勧めします。
その後、そのHeightField Pattern SOPの 1番目 の入力をベースグリッドの出力に接続すれば、準備完了です。
このノードには Pattern ドロップダウンメニューがあり、6つのパターンを選択することができます。 デフォルトは Stars ですが、最も汎用性が高くてカスタマイズ可能なのは、独自のカーブを定義することができる Ramp です。 下図は、HeightField Noise SOPと組み合わせた歪曲ランプパターンを示しています。 侵食とノイズ歪曲が地形に最終的な外観を与えています。
地形の基本波形パターンを取得するには、以下の手順に従ってください。
-
Heightfield Pattern SOPで Ramp を選択すると、ノコギリ歯状のパターンが表示されます。
-
Pattern ▸ Position セクションで、 Remap Remapping に進んで、
Presets ボタンをクリックします。 そのメニューから Hill を選択すると、丸みを帯びた縞模様が生成されます。 このパターンは砂丘の表現にも適しています。
-
同じセクションにある Size パラメータを
200に設定して、波の数を減らします。 -
帯状模様が非常に高くなっているので、 Scale パラメータを
20まで下げます。 -
Distortion セクションにある Distort Pattern トグルを有効にします。これによってパターンがわずかに変位します。
-
次に、 Amplitude パラメータと Element Size パラメータを調整して、その縞模様へカール状のノイズパターンを追加します。 以下の画像では、その値は
600と500になっています。 -
地形が極端に変形しています。これを修正するために、 Roughness パラメータを
0.2まで下げてください。 このパラメータは、ノイズの粗さを制御し、値を大きくすると高周波スパイクが増加します。
Ramp Remapping から別のプリセットを試したり、独自のカーブを定義することもできます。 もう1つ面白い手法として、 Pattern ▸ Position ▸ Mode を Concentric に設定する方法があります。 このモードでは、SF的な趣きを帯びた非常に有機的なパターンが生成されます。 また、パターンの“目”の位置を調整するために、 Center パラメータの変更も検討してください。
マスクによる歪曲 ¶
上記の歪曲メソッドは、マスクとの併用も可能です。
例えば、HeightField Mask Noise SOPは、通常の
HeightField Noise SOPで、 Noise Layer パラメータを
maskに設定したものです。
Lattice Warp や Gradient Warp といったメソッドを有効にして、そのメソッドをマスクに適用することもできます。
これは、HeightField Distort by Noise SOPやHeightField Distort by Layer SOPにも適用することができます。 以下に、様々な歪曲マスクを並べて比較した例を載せています。