On this page |
Houdini Engine for Unrealは、Unrealとのメッシュの入力および出力をサポートしています。
入力 ¶
UnrealからHoudiniにメッシュをインポートする方法が複数あります。以下の方法でジオメトリを使用することができます:
-
Geometry Inputを介して、コンテンツブラウザのアセットから
-
World Outliner Inputを使用して、そのレベルのアクターから
-
Landscape Inputを通して、ランドスケープから
-
Asset Inputを使用してHoudiniでHoudiniアセットを接続することで、別のHoudiniアセットから
ソケット、コライダー、LODスタティックメッシュを、グループやアトリビュートとしてHoudiniにインポートすることができます。 入力UIで Export チェックボックスをオンにします。
出力 ¶
メッシュ生成 ¶
Houdiniアセットには、オブジェクト、ジオメトリ、パーツが含まれています。 これらは、Unrealのジオメトリを複数のメッシュに分割する方法を制御します。
-
オブジェクト(OBJ) ノードは、Houdiniのトランスフォームノードです。他のOBJノードやジオメトリ(SOP)ノードを含むことができます。
-
ジオメトリ(SOP) ノードは、Houdiniのジオメトリコンテナノードです。ジオメトリを含むのではなく、パーツを含んでいます。
-
パーツ は、実際のメッシュ/ジオメトリ/アトリビュートデータを含んでいます。
パックプリミティブを使用することで、複数のメッシュを出力で分けることができます。 例えば、結合したジオメトリから複数のパーツを作成することができます。 詳細は、パックプリミティブを参照してください。
パックプリミティブは、独自のパーツとスタティックメッシュを作成します。 パックプリミティブを一度もコピーしていなければ、インスタンサーの代わりにスタティックメッシュが作成されます。 さらにメッシュが分割される可能性があるのは、コリジョングループまたはLODグループくらいです。
パックプリミティブを作成するには:
-
ジオメトリの 出力 を、 Pack SOPの 入力 に接続します。
-
この手順を繰り返し、各ジオメトリを個別の Pack SOP に接続します。
-
各 Pack SOP の 出力 を、 Merge SOPの 入力 に接続します。
-
HDAをインポートすると、ジオメトリが単一のスタティックメッシュとして読み込まれます。これをベイクすると、個別のUnrealアクターになります。
-
スタティックメッシュが生成されると、そのLODが再グループ化されます。 衝突不可ジオメトリや非LODジオメトリには、別のスタティックメッシュが作成されます。 複雑なコリジョンジオメトリグループには、それぞれ追加のメッシュが作成されます。 アセット内のその他のグループは、パーツを別々のメッシュに分割しません。
アセットによって生成されたすべてのメッシュは、マテリアルと共に Houdini Outputs セクションにリストされます。
このセクションでは、呼応するスタティックメッシュに対してプラグインが生成するコライダー、LOD、ソケットのタイプや番号について詳しく説明しています。
マテリアルとアトリビュート ¶
Houdini Engine for Unrealは、様々なアトリビュートを認識して、Unrealの同等のアトリビュートに変換します。
アトリビュート名 |
オーナー |
タイプ |
説明 |
---|---|---|---|
|
point, vertex |
float3 |
メッシュの法線を設定します。プラグインは法線を自動的に再計算します。 これを制御するには、プラグイン設定のStatic Mesh Build SettingsパートにあるRecompute Normals設定の値を変更します。 法線がある場合、Recompute Tangentsプラグイン設定を変更することで、接線も自動的に再計算することができます。 |
|
point, vertex |
float2 |
メッシュのUVセットを設定します。 |
|
任意 |
float3, float4 |
メッシュの頂点カラーを設定します。 |
|
任意 |
int |
メッシュのライトマップ解像度を設定します。 |
|
point, vertex |
string |
メッシュのフェースにUnrealマテリアルを設定します。このアトリビュートの値は、マテリアルを参照するように設定する必要があります。 メッシュによって使用される様々なマテリアルはすべて、DetailsパネルのHoudini Outputsセクションに表示されます。 詳細は、マテリアルを参照してください。 |
|
prim |
int |
メッシュスムージングマスクデータを設定します。 |
|
任意 |
string |
生成されたメッシュに使用する名前を設定します。 |
特別なグループを使用して、ソケットとコライダーをメッシュに追加することもできます。
Nanite設定 ¶
(UE5のみ)プラグインは、以下のアトリビュートを使用して、HDAの出力にあるメッシュのNanite設定を制御することができます:
アトリビュート名 |
オーナー |
タイプ |
説明 |
---|---|---|---|
|
任意 |
int |
生成されたメッシュでNaniteを有効にします。 |
|
任意 |
int |
Naniteメッシュに使用されるPosition Precisionアトリビュート |
|
任意 |
int |
Naniteメッシュに維持する三角形の割合、デフォルトはゼロ(三角形なし) |
これら3つのアトリビュートのいずれかがある場合、生成されたスタティックメッシュでNaniteが自動的に有効になります。 HoudiniのプロキシメッシュはNaniteをサポートしていないため、Refineされたメッシュのみに適用されます。
メッシュを分割する ¶
最新バージョンのプラグインは、単一のHDA出力ノードで複数メッシュに対応しています。 古いバージョンのプラグインはこれに対応していないので、プラグインをアップグレードすると動作が異なる可能性があります。 UnrealでHDA Componentの“Split Mesh Support”のチェックを外すことで、この機能を無効にすることができます。 しかし、この機能を無効にするオプションは近い将来に削除される予定です。
コリジョングループ名またはLODグループ名に固有の識別子を追加することで、異なるメッシュを作成することができます。
例えば、rendered_collision_geo_A
とrendererd_collision_geo_B
は、2つのメッシュを作成します。
lod_1_A
グループは、LODを最初のメッシュに割り当てます。
この機能は、“Static Mesh Method”が“FMesh Description”に設定されていて、且つ、アンパックプリミティブを使用している場合にのみ利用可能です。