Ocean(海洋)モディファイアー#

Ocean(海洋) モディファイアーは、シミュレーションデータのレンダリングに使用される、変形する海面と関連するテクスチャをシミュレートし生成するためのツールです。深海の波と泡沫をシミュレートすることを目的としています。

これは、オープンソースの Houdini Ocean Toolkit からの移植です。

Options(オプション)#

../../../_images/modeling_modifiers_physics_ocean_panel.png

Ocean(海洋)モディファイアー。#

Geometry(ジオメトリ)
Generate(生成)

シミュレーションデータの解像度に正確に対応するタイルメッシュグリッドを作成します。

メッシュサーフェスを生成する場合、既存のメッシュオブジェクトはオーシャングリッドで完全に上書きされます。これには、スタック内の前のモディファイアーから生成されたデータも含まれます。UVチャネルも追加され、(0.0~1.0)のUV空間がシミュレーショングリッドにマッピングされます。

Repeat X, Y(リピート X、Y)

グリッドがX軸とY軸の方向にタイル張りされる回数を制御します。これらのタイルメッシュ領域のUVは、(0.0〜1.0)のUV空間の外側に続きます。

Displace(ディスプレイス)

置き換えるのではなく、既存のジオメトリを使用します。頂点はローカルZ軸に沿って移動します。

Resolution Viewport(ビューポートの解像度)、Render(レンダー)

シミュレーションエンジンの品質vs速度の主制御。これにより、3D Viewport(3Dビューポート)または最終レンダリングのシミュレーションによって生成された内部2Dグリッドの解像度が決まります。

内部グリッドは解像度値の2の累乗であるため、解像度値が 16 の場合、サイズ 256×256 のシミュレーションデータが作成されます。解像度が高いほど、より多くの詳細が生成されますが、計算は遅くなります。

注釈

モディファイアージオメトリを Generate(生成) オプションを使用する場合、この解像度値は、生成されたメッシュサーフェスの解像度も決定します。これは、内部シミュレーションデータの解像度と同じです。

Time(時間)

海面が評価されている時間。アニメーション化された海を作成するには、この値を アニメーション化する 必要があります。時間の値が変化する速度によって、波のアニメーションの速度が決まります。

Depth(深度)

シミュレートされた領域の下の海底の一定の深さ。低い値は、より高い周波数の詳細とより小さな波を生成することにより、より浅い海域をシミュレートします。

Size(サイズ)

波の高さやシミュレーションの動作に影響を与えない単純なスケール係数。

Spatial Size(空間サイズ)

シミュレートされている海面の幅(メートル単位)。これにより、生成されたメッシュのサイズ、つまり変位した領域も決まります。もちろん、Object Mode(オブジェクトモード)で Ocean(海洋) モディファイアーを使用してオブジェクトをスケールし、シーンの見かけのサイズを微調整することができます。

Random Seed(ランダムシード)

Seed(シード) が異なると、シミュレーション結果も異なります。

Generate Normals(法線を生成)

追加の法線マップデータをシミュレートします。これは、法線にマップされたときに海のテクスチャでバンプマップとして使用でき、ベイク処理時に法線マップ連番画像を生成できます。

Waves(波)#

Scale(スケール)

波の振幅の全体的なスケールを制御。これは、ゼロより上または下の、波の高さまたは深さを概算します。海洋オブジェクトをZ軸でスケールするだけでなく、シミュレーションのすべての側面、X軸とY軸の変位、および対応する泡沫と法線もスケールします。

Smallest Wave(最小の波)

生成される波のサイズの最小制限。ローパスフィルターと同様に機能し、高周波のディテールを除去します。

Choppiness(波立ち)

波の途切れがピークになります。Choppiness(波立ち)が0の場合、海面はZ軸方向に上下にのみ変位しますが、Choppiness(波立ち)が高い場合、波はX軸とY軸で横方向にも変位し、より鋭い波のピークを作成します。

Wind Velocity(風速)

メートル/秒の風速。低速では、波はより小さな表面波に制限されます。

Alignment(配置)

風による波形の方向性。値が0の場合、風と波はランダムに均一に方向付けられます。 Alignment(配置) の値を高くすると、風はより一定の方向に吹くようになり、波はより圧縮されて単一の方向に整列しているように見えます。

Direction(方向)

Alignment(配置) を使用する場合、波が整列する度単位の方向(ローカルX軸を参照として使用)。

Damping(減衰)

Alignment(配置) を使用する場合、これは相互反射波が減衰する量を定義します。これには、波の動きを(波形だけでなく)より指向性のあるものにする効果があります。

Damping(減衰) が0.0の場合、波はあらゆる方向に反射され、 Damping(減衰) が1.0の場合、これらの相互反射された波は減衰され、風の方向に進行する波のみが残ります。

Foam(泡沫)#

余分な泡沫のデータをシミュレートします。

これは、テクスチャリングで使用するためにOcean(海洋)テクスチャによって取得でき(おそらくマスクとして)、ベイク処理時に泡沫マップ連番画像を生成できます。

Data Layer(データレイヤー)

頂点データレイヤーの任意の名前。Ocean(海洋)モディファイアーが泡沫マップをColor Attribute(カラー属性)として保存するために使用します。これは、レンダラーで泡沫データにアクセスするために必要です。

Coverage(カバー量)

波を覆う泡沫の量を微調整します。負の値は泡沫の量を減らし(最上部のピークのみを残します)、正の値は追加します。通常、範囲は(-1.0〜1.0)です。

../../../_images/modeling_modifiers_physics_ocean_foam-layer-name.png

名前付きデータレイヤーでの泡沫Color Attributes(カラー属性)の使用。#

Spray(飛沫)#

飛沫の方向マップをColor Attribute(カラー属性)として生成します。このマップを使用して、飛沫パーティクルの速度を定義できます。

Spray Map(飛沫マップ)

飛沫の方向マップに使用するColor Attribute(カラー属性)の名前。

Invert(反転)

飛沫の方向マップを反転します。

Spectrum(スペクトル)#

Spectrum(スペクトル)

使用する波のスペクトルモデルを選択するために使用されます。波のスペクトルは、エネルギーがさまざまな周波数の波の中をどのように移動するかを説明するために使用されます。エネルギーは、水深と風速に応じて異なる方法で波を伝わります。

Turbulent Ocean(荒れた海洋)

泡沫のある荒れた海に使用します(Phillips)。

Established Ocean(従来の海洋)

波が平衡点に到達できるように何日も風が吹いて海が何マイルも伸びる、広大な確立された海に使用します(Pierson-Moskowitz 法)。

Established Ocean (Sharp Peaks)(従来の海洋(尖ったピーク))

ただし、通常の Established Ocean(従来の海洋) と同様に、波は時間とともに成長し続け、より鋭いピークを作成します( JONSWAP 、およびPierson-Moskowitz 法)。これらのピークのシャープを定義するために、追加のパラメータが使用されます。

Shallow Water(浅水域)

深さ約10メートル未満の浅水域に使用すると、強風のない小さな湖や池に最適です(JONSWAP、およびTMA -- Texel-Marsen-Arsloe 方式)。

さまざまなスペクトルの例、それぞれに合わせて設定を調整。#
../../../_images/modeling_modifiers_physics_ocean_spectra-turbulent.png

Turbulent Ocean(荒れた海洋).#

../../../_images/modeling_modifiers_physics_ocean_spectra-established.png

Established Ocean(従来の海洋)。#

../../../_images/modeling_modifiers_physics_ocean_spectra-established-peaks.png

Established Ocean (Sharp Peaks)(従来の海洋(尖ったピーク))。#

../../../_images/modeling_modifiers_physics_ocean_spectra-shallow-water.png

Shallow Water(浅水域)。#

Sharpness Peak(ピークのシャープ化)

Established Ocean (Sharp Peaks)(従来の海洋(尖ったピーク)) 、および Shallow Water(浅水域) のスペクトルモデルで波のピークがどれだけシャープかを制御するための人工的な係数。

Fetch(フェッチ)

フェッチと呼ばれる風下の岸からの距離、または風が一定の速度で吹く距離。 Established Ocean (Sharp Peaks)(従来の海洋(尖ったピーク)) 、および Shallow Water(浅水域) のスペクトルモデルによって使用します。

Bake(ベイク)#

海洋データをライブでシミュレートするのではなく、指定のディレクトリ内のファイルにベイク処理できます。シミュレーションがベイク処理されると、シミュレーターエンジンは完全にバイパスされ、モディファイアーやテクスチャのすべての情報がベイク処理されたファイルから取得されます。

ベイクには次の利点があります:

  • 保存されたデータを使用する方が再計算するよりも高速です。

  • これにより、外部レンダラーで海洋データをレンダリングできます。

  • これにより、より高度な泡沫マップが可能になります。

シミュレーションデータは一連​​の OpenEXR 画像マップとして変位、法線、泡沫(生成が有効になっている場合)ごとに1つずつ保存されます。これらのベイクされたファイルからデータをロードし、ベイクシーケンスのフレームが読み取られると、メモリにキャッシュされます。これは、ロードしたフレームの後続のアクセスが高速であり、ドライブアクセスのオーバーヘッドが発生しないことを意味します。

これらのベイクされたファイルはプレーン OpenEXR であるため、それらをサポートする他のアプリケーションやレンダラーで開いてレンダリングすることもできます。

Cache Path(キャッシュパス)

ベイクされたEXRファイルを保存するフォルダ。シーケンスは、形式 disp_####.exrnormal_####.exrfoam_####.exr となります。ここで、 #### は4桁のフレーム番号です。キャッシュパスフォルダが存在しない場合は作成されます。

Frame Start, End(開始フレーム/フレームの終わり)

ベイク処理するシミュレーションのフレーム(両端を含む)。ベイク範囲外のフレームにアクセスすると、ベイクの開始フレームと終了フレームが繰り返されます。

Foam Fade(泡のフェード)

ベイクはまた、改善された泡沫の能力を提供します。ライブをシミュレートする場合、海洋シミュレーターはその現在のフレームのデータのみを取得します。泡沫マップの場合、これはその指定のフレームの波頭の先端を表します。実際には、泡沫は波の相互作用によって作成された後、消散するため、しばらくの間波のサーフェスの上部にとどまります。ベイクでは、前のフレームから泡沫を蓄積し、サーフェスに残しておくことで、その動作を概算することができます。

#

次の例はBlenderで作成しレンダリングしたもので、波のピークがいかに白いかに注目してください。泡沫データから生成された効果です。