On this page

概要

Houdini Engine for Unityは、Unityメッシュを出力ジオメトリとして生成することができ、さらにUnityメッシュを入力ジオメトリとしてHoudiniにアップロードすることもできます。

入力

ノード入力またはオブジェクトパス入力パラメータを使用することで、UnityメッシュジオメトリをHoudiniにマーシャリング(等価変換)することができます。マテリアルの割り当ては、そのマテリアルパスが入ったPrimiriveアトリビュートとして保存することができるので、同じジオメトリをUnityにエクスポートして戻す双方向変換でも、そのマテリアルの割り当ては維持されます。

出力

Houdiniアセットからのジオメトリ出力は、通常はUnityメッシュで、 MeshFilter または MeshCollider に格納されます。

アセットには通常 オブジェクト が含まれ、そしてそのオブジェクトには ジオメトリ が含まれ、さらにそのジオメトリには パーツ が含まれています。この構造によって、Unityメッシュがどのように生成されるかが決まります。

  • オブジェクト(OBJ) ノードは、Houdiniのトランスフォームノードです。他のOBJノードやジオメトリ(SOP)ノードを含んでいます。

  • ジオメトリ(SOP) ノードは、Houdiniのジオメトリコンテナノードです。ジオメトリを直接含むのではなく、パーツを含んでいます。

  • パーツ は、メッシュを生成するのに使用される実際のジオメトリおよびアトリビュートデータを含んでいます。

通常、パーツ内のすべてのジオメトリは単一メッシュとして生成されます。コリジョングループまたはLODグループを使用した場合のみ、ジオメトリを別々のメッシュに分割することができます。それ以外のグループは1つのメッシュにまとめられ、LODグループが存在した場合は、それ以外のジオメトリが無視されます。

デフォルトでは、メッシュは分割された頂点を使用して生成されます(つまり、それぞれの三角形が固有の頂点を持ちます)。これを変更して、ポイント(共有の頂点)を使用するようするには、 ASSET OPTIONS セクションの Generate Mesh Using Points チェックボックスをオンにします。

三角形と四角形

デフォルトでは、ジオメトリのConnectivityがQuadrilateralsに設定されていても、プラグインは常に三角形トポロジーのメッシュを生成します。四角形トポロジーのメッシュを生成するには以下を実行します:

  1. Plugin SettingsのGEOMETRYセクションで、 Max Vertices Per Primitive4 に変更します。

  2. ジオメトリのConnectivityがQuadrilateralsに設定されていることを確認するか、ジオメトリがすべて四角形で構成されていることを確認します。

  3. HDAを再クックします。これで、四角形トポロジーのメッシュが生成されるはずです。

Notes:

  • 四角形トポロジーを使用する場合でも、Unityはメッシュのワイヤーフレームを三角形で表示します。メッシュトポロジーを照会するには、GameObjectを選択し、 HoudiniEngine ▸ Utility ▸ Query Mesh Topology メニューに移動します。頂点数は三角形の場合より少なくなります。

  • 同一メッシュでのトポロジーの混在(三角形と四角形など)はサポートされておらず、エラーが発生します。混合トポロジーが必要な場合は、メッシュを分割する必要があります。

  • Plugin SettingsのMax Vertices Per Primitiveは3または4でなければなりません。3に設定すると、常に三角形が生成されます。4に設定すると、Connectivityに応じて三角形または四角形が生成されます。

読み取り可能なメッシュ

デフォルトでは、プラグインは読み取り可能なメッシュを生成しません。しかし、 unity_mesh_readable という整数アトリビュートに1を指定すれば、読み取り可能なメッシュを生成することができます。

メッシュ