Houdini 20.0 Unreal ランドスケープ

レイヤーによるランドスケープのばら撒き

On this page

このワークフローでは、 Heightfield Scatter SOPを使用して、スポーンポイントにUnrealランドスケープレイヤーをインポートする方法を説明します。高度なワークフローでは、unreal_foliageアトリビュートを使用し、インスタンスを使ってフォリッジアクターを作成する方法についても紹介します。

このワークフローでの重要な学習内容:

Unrealでランドスケープをセットアップする

  1. Landscape Modeを使用してランドスケープを作成します。

  2. 新しいマテリアルを作成し、LandscapeScatter_Materialと名前を付けます。

  3. マテリアルグラフで、⇥ Tabをクリックし、2つのConstant3Vectorを作成します。

    1. 1つ目の定数のカラーを に変更します。

    2. 2つ目の定数のカラーを ピンク に変更します。

  4. ⇥ Tabをクリックし、LandscapeLayerBlendを作成します。

    1. Detailsパネルで、 Layers の横の+記号を選択し、2つの配列エレメントを追加します。

    2. インデックス0で、ドロップダウンタブを展開し、名前をbaseに変更します。

    3. インデックス1で、名前をgrassに変更します。

  5. 赤の定数カラー の白の出力を、 Layer base 入力に接続します。

    1. ピンクの定数カラー の白の出力を、 Layer grass 入力に接続します。

    2. Landscape Layer Blend 出力を Base Color 入力に接続します。

  6. アウトライナ で、ランドスケープを選択します。

  7. Detailsパネル で、マテリアルをLandscape Materialに適用します。

  8. Landscape Modeで、Paintタブに移動して Target Layers を見つけます。マテリアルが表示されるはずです。

  9. ウェイトがブレンドされたレイヤーを選択します。

    • それがない場合は、+記号をクリックし、両方のマテリアルに Weight-Blended Layer (normal) を作成します。

  10. grassレイヤーを選択し、ばら撒くランドスケープのセクションをペイントします。

これで、Houdini向けにランドスケープの準備が整いました。

ランドスケープをHoudiniに送信する

  1. Houdini Engine メインメニューで、Open Houdini Session Sync を選択します。

    • 新しいHoudiniアプリケーションが開きます。

  2. アウトライナで、ランドスケープをクリックし、 Send to Houdini を選択します。

  3. Houdiniで、サブネットワークに3つのノードが表示されるはずです。

    • Unrealからの参照を使用したい場合は、 UnrealContent ノードで作業するのが最も安全です。

  4. Surface Operatorネットワークビューで作業するために、 UnrealContent サブネットワークに入り、 Landscape Geometryノード に入ります。

これで、参照したUnrealランドスケープでHeight Fieldのばら撒きをセットアップする準備が整いました。

ランドスケープでばら撒きを作成する

  1. Heightfield Scatter SOPを作成し、input1とinput2を Landscape Object Merge の出力に接続します。

  2. Heightfield Scatter SOP ノードのパラメータで、以下の操作を行ないます:

    • Mask Layer で、名前をgrassに変更します。

    • Keep Incoming Scatter PointsKeep Incoming Terrain パラメータをオフにします。

    • Randomize Yaw で、180と入力します。

  3. シーンビューツールバーで、 Object Visibility 設定を Hide Other Objects に変更します。

    • Unrealからランドスケープを送信したとき、2つの参照が作成されました。

  4. Object Merge SOPを作成し、その出力を Heightfield Scatter SOPノード のinput3に接続します。

  5. Object Merge SOPHeightfield Scatter SOP を選択します。次に、 Subnetwork SOPを作成し、Landscape_Scatterと名前を付けます。

  6. Landscape_Scatterサブネットワークに入ります。

HDAの設定をエクスポートする

  1. Heightfield Scatter SOPObject Merge SOP を選択したら、ViewツールバーのLandscape_Scatterサブネットワークでクリックし、 Create Digital Asset を選択します。

  2. ポップアップウィンドウで、 Asset Label 名をLandscape Scatterに変更します。

    • 他の設定も目的に応じて変更できます。

  3. Edit Operator Type Properties ポップアップウィンドウで、 Existing Parameters タブを見つけます。

    • Heightfield SOPノードからパラメータをエクスポーズ(アクセス可能に)して、それらをUnreal Engineで変更することができます。

  4. Object Merge SOP で、Object1パラメータを Existing Parameters タブにドラッグします。

    • Parameter Description ペインで、 Label パラメータの名前をinstanced_objectsに変更します。

  5. Heightfield Scatter SOP で、以下のパラメータを Existing Parameters タブにドラッグします:

    • mask layerOuter RadiusFalloffMatch Normals with Terrain

  6. Acccept を選択します。

Unrealでばら撒きをセットアップする

  1. Unrealで、 Landscape_Scatter HDAをインポートします。

  2. HDAをクリックし、 Instantiate at the origin を選択します。

  3. アウトライナ で、 Landscape_Scatter HDAを選択します。次に、Detailsパネルを見つけます。

    • Houdiniからオプションとしてエクスポーズ(アクセス可能に)した、CoverageOuter Radiusなどのパラメータも表示されています。

  4. Houdini Inputs で、ドロップダウンをGeometry Inputから World Input に変更します。

  5. Start Selection を選択し、Unrealランドスケープを選択してから Use Current を選択します。

    • これで、Current Selected Actorsウィンドウでランドスケープが表示されるようになるはずです。

  6. Houdini Parameters で、 instanced objects を見つけ、ドロップダウンメニューからスタティックメッシュを選択します。

  7. Rebuild を選択します。

    • これで、ペイントされたgrassセクションで、生成されたスタティックメッシュが表示されるようになりました。

  8. Bake を選択します。

    • アウトライナに、ばら撒かれたスタティックメッシュから作成された新しいアクターが表示されるはずです。

ばら撒きレイヤーのワークフローが完了しました。以下は、フォリッジアクターとしてばら撒きを使用する高度な方法です。

ばら撒きをフォリッジアクターとして使用する

このワークフローはばら撒きレイヤーの続きです。unreal_foliageアトリビュートを使用して、フォリッジアクターとしてインスタンスを使用できるようにします。詳細は、アトリビュートとグループを参照してください。

  1. Houdiniで、 Attribute Create SOPを作成し、その入力を Heightfield Scatter SOPノード の出力に接続します。次に、その出力を Ouput SOPノード に接続します。

  2. Attribute Create SOP ノードのパラメータで、以下の操作を行ないます:

    • Name で、unreal_foliageと入力します。

    • Type で、 Integer を選択します。

    • Default で、最初のボックスを1に変更します。

    • Value で、最初のボックスを1に変更します。

  • ViewツールバーのLandscape_Scatterサブネットワークでクリックして、 Save Node Type を選択します。

Unrealでフォリッジアクターをセットアップする

  • Unrealで、アウトライナで古いHDAとアクターを削除します。

  • コンテンツブラウザ で、Landscape_Scatter HDAを選択し、 Reimport を選択します。

  1. アウトライナ で、 Landscape_Scatter HDAを選択します。次に、Detailsパネルを見つけます。

  2. Houdini Inputs で、ドロップダウンをGeometry Inputから World Input に変更します。

  3. Start Selection を選択し、Unrealランドスケープを選択してから Use Current を選択します。

    • これで、Current Selected Actorsウィンドウでランドスケープが表示されるようになったはずです。

  4. Houdini Parameters で、 instanced objects を見つけ、ドロップダウンメニューからスタティックメッシュを選択します。

  5. Rebuild を選択します。

    • これで、アウトライナにInstancedFoliageActorが表示されるはずです。

  6. Foliage Mode に変更します。

    • フォリッジオプションの1つとして、スタティックメッシュが表示されるはずです。

  7. Landscape Mode に変更し、grassレイヤーを使用して別のセクションをペイントします。

  8. Selection Mode に変更し、アウトライナからLandscape_Scatter HDAを選択し、 Recook を選択します

    • これで、新しくペイントされた領域にフォリッジアクターが追加されるはずです。

See also

ランドスケープ

はじめよう

ランドスケープスプライン

ワークフロー

ランドスケープを使用すると、プロシージャルなノードベースのワークフローを介して、Houdiniで地形や自然環境を作成したり操作することができます。その後、それをUnreal Engineに取り込んで、さらに編集、レンダリング、ベイクすることができます。Houdiniで生成されたランドスケープは、非常に詳細かつダイナミックで、複雑な地形を作成できます。

特長と機能

  • HoudiniのHeight Fieldツールを使用して、Hydro(水)、Thermal(熱)、Flow(流れ)といった侵食をシミュレートします。

このビデオは、Houdiniを使用して、ファークライ5で活用されているランドスケープ機能をいくつか紹介したものです:

  • Houdini Engine for Unrealは、ランドスケープをHeight Field、ポイント、またはメッシュとして読み込みます。

  • ランドスケープレイヤーの作成、テクスチャの作成、マテリアルの生成を行ないます。

  • Unrealからランドスケープを取り込み、Houdini Engineを使用してスタティックメッシュに変換します。

  • Houdiniのばら撒き機能

  • PDGを使用して、大規模なワールドをより小さなサイズに分割し、素早いシミュレーションやチームのコラボレーションに役立てます。

  • ランドスケープで入力と出力をエクスポーズ(アクセス可能に)して、他のHDA間でもシームレスにやり取りできるようにします。

    • 例えば、カーブで制御される川のツールを使用できます。ランドスケープがカーブに作用して、川の流れをガイドし、川のツールによってランドスケープが侵食されます。

関連情報

以下は、ランドスケープを作成する前に理解しておくべきノードおよびコンセプトです: