HDA Landscape編 -a coffee tips-
HoudiniのHeightFieldをUE4で使う流れ
HoudiniでのLayer設定にしぼった内容
Height Fieldの形状の作り方については特に何もありません。
(Height Field Noiseを使ってるだけ)
1.大筋の流れ
height Fieldを作成し、Noiseなどでゴニョゴニョ形状を作ります
Maskを作成して各レイヤーに変換します。
最後に各レイヤー情報を整えてHDA化してUE4でImportします。
2.Height Fieldの作成と設定
とにかくHeight Fieldを作成します。
Sizeに関してはこちらのリンクを参照に設定してください。
https://www.sidefx.com/docs/unreal/_landscapes.html
UE4では特別なサイズを求められますので、上記URLを参考に各サイズに設定しましょう。
今回は1009*1009で作成しています!
次にHeight Field Noiseに繋いで
Amplitude:745
Element Size:500
にしています。深い意味はありません。適当です。
次にHeight Field Copy Layerに繋いで
Destination:ground
にしています。
このノードでmaskを新しいレイヤーに変換する事ができます。
(何か他に良いノードがあるかもしれません)
3.崖レイヤーを作る
崖レイヤーを作ります。
Height Field Mask by Featureというノードに繋ぎます。
Smooth Radius:6
Slope内
Min Slope Angle : 42.6
Max Slope Angle : 90
Slope Rampを上記の画像の様にしています。
そして次にHeight Field Copy Layerでslopeレイヤーを作成しています。
4.雪レイヤーを作る
またHeight Field Mask by Featureノードを作成し
Smooth Radius : 6
今度はSlopeのチェックを外し、Heightにチェック入れます
Min Height : 29.9
Max Height : 119
Height Rampを上記画像のようにしています。
次にHeight Field Noiseノードに繋ぎ
Combine MethodをSubtractに変更し
Amplitude : 0.98
Element Size : 17
にしています。
そしてHeight Field Wrangleを繋いで
float m = @mask;
m = m*10;
m = clamp(m, 0, 1);
@mask = m;
と入れています。
(簡単に言うと薄くなったmaskを濃くしてる)
その後、HF Copy Layerでsnowレイヤーに変換しています。
★tips
検索時にhfと検索するとHeight Field関連のみ出てきます。
5.道レイヤーを作る
①Curveノードを追加します。これが道になります。
②その後Resampleを追加し、細かいポイントに分割します。
③それをRayノードに繋ぎ、作成したHeight Fieldに形状をフィットさせます。(この際に、次抜けてフィットしないのをTransformで調整している)
④polywireノードに繋いでObject化しています。
Wire Radiusを調整して適当な太さにしておきましょう。
⑤Height Filed Mask by Objectノードを使い、作成した道オブジェクトをつなげると、Maskを作成できます。
道Maskに手を加えます。
左上の画像から、左下の画像の様に、道部分をなめらかにするためにブラーを使っています。
右側:Height Field Mask Expandに接続
右側:Height Field Mask Blurに接続
左下:Height Field Blurに接続
中身のパラメータはこんな感じです。
Height Field Mask Expand
Radius : 7.8
Height Field Mask Blur
Radius : 5
Height Field Blur
Radius : 50
さらに道Maskを調整します。
Height Field Mask BlurでMaskをぼかし
後はSnowで行ったようにノイズ感を追加してあげています。
最後にwayレイヤーに変換。
6.Groundレイヤーを調整する
各レイヤーのマスクがあるので、そこにGroundレイヤーが被らないように処理していきます。
float g = 1 - @snow - @way - @slope;
g = clamp(g, 0, 1);
@ground = g;
1の値を単純にそれぞれのレイヤーで引いて、clampでマイナスを消しています。
(しなくても問題ないかもしれないけど、ほっとくと問題が起きるかもしれない…)
7.UE4で設定
Landscape用のMaterialを作成します。
とりあえず適当に作ります(上記参照)
★Point
Landscape Layer Blendというノードを使って各ノードに対応したTexture等が表現されるようにしておきます。
そして…これベシっと読み込んだHDAに適用させると…
こんな感じになります!
以上、HoudiniからUE4へのLandscape編でした!!
無料領域にすべて記載しています!
ここから先は
¥ 300
この記事が気に入ったらチップで応援してみませんか?