Houdini 20.5 Unreal

アトリビュートとグループ

On this page

HoudiniとUnreal間でデータをマーシャリング(等価変換)する際は、特別なグループとアトリビュートが使用されます。

詳細については、以下の参照トピックをご覧ください。

Note

アトリビュートには推奨されている型があるわけですが、プラグインは、その期待とは異なる型を持つアトリビュートに対して変換を試みます。 例えば、int型を必要としているのにfloat型のアトリビュートがある場合です。 アトリビュート値がその必要とする型に変換されると、プラグインはその警告をログに記録します。

Note

パックプリミティブを使用して複数のメッシュ出力をインスタンス化したり作成する際は、アトリビュートの場所が重要になります。 パック前に作成されたアトリビュートは生成されたメッシュに適用され、パック後に作成されたアトリビュートは生成されたコンポーネント/アクターに適用されます。

HoudiniからUnreal

以下のテーブルには、HDAで設定することができ、HoudiniデータからUnreal出力への変換時にプラグインによって認識される特別なアトリビュートを載せています。 アセットにこれらのアトリビュートを設定すると、生成されたUnreal出力の一部のプロパティや動作を制御したり、上書きすることができます。

Bake Outputs

アトリビュート名

オーナー

説明

unreal_uproperty_tag_*

any

string

出力オブジェクトでタグを指定するために使用される接頭辞。これは、アクターとこの出力オブジェクトに関連するすべてのコンポーネントにタグを適用します。

unreal_uproperty_actorTag_*

any

string

出力オブジェクトでActorタグを指定するために使用される接頭辞

unreal_uproperty_componentTag_*

any

string

出力オブジェクトのすべてのコンポーネントにComponentタグを指定するために使用される接頭辞

unreal_uproperty_mainComponentTag_*

any

string

出力オブジェクトのメインのコンポーネントにのみComponentタグを指定するために使用される接頭辞。出力オブジェクトがアクターの場合、これらのタグはルートコンポーネントにのみ適用されます。

unreal_output_curve

Primitive

int

このアトリビュートが1に設定されているカーブは、SplineComponentsとして出力されます。

unreal_output_curve_linear

Primitive

int

出力カーブを線形にすべきかどうかを示します。

unreal_output_curve_closed

Primitive

int

出力カーブを閉じるべきかどうかを示します。

unreal_level_path

any

string

アクター/フォリッジへのベイク時、出力がベイクされるレベルを決定します。メッシュ、インスタンサー、フォリッジ、ランドスケープは、指定されたレベルにベイクされます。 これは、World Composition向けに特に便利です。ランドスケープタイルと関連インスタンサーまたはフォリッジを、タイル毎に個別のレベルにベイクできます。このアトリビュートは入力でも使用できます(入力が発生するレベルのパスに設定されます)。 デフォルト値は.で、現行のパーシスタントワールドにジオメトリを生成します。 /で開始するパスは絶対パスとみなされ、それ以外のパスは現行のパーシスタントワールドのマップを基準とした相対パスです(String Tokenをサポートしています)。

unreal_bake_folder

Primitive, Detail

string

このアセットのデフォルトのベイクフォルダを上書きするのに使用されるフォルダのUnrealパス。デフォルト値: {bake} (String Tokenをサポートしています)。

unreal_bake_name

any

string

(廃止) 代わりにunreal_output_nameを使用してください。

unreal_bake_actor

any

string

指定した出力のベイク時に作成/使用されるアクターのUnrealパス

unreal_bake_actor_class

any

string

ベイクアクターの生成時に使用するアクタークラスのUnrealパス(またはクラス名)。ない/空白の場合、アクターが使用されます。

unreal_bake_outliner_folder

any

string

指定した出力のベイク時に作成/使用されるWorld OutlinerフォルダのUnrealパス

汎用UProperty

アトリビュート名

オーナー

説明

unreal_uproperty_*

any

int, float, string

生成された出力オブジェクト/アクター/コンポーネントのUPropertyを変更するのに使用されるアトリビュート接頭辞

ジオメトリコレクション

アセット上に以下のアトリビュートを設定すると、生成されたUnreal出力の一部のプロパティと挙動を制御およびオーバーライドすることができます。

アトリビュート名

オーナー

説明

unreal_gc_piece

Primitive

int

プリミティブをGeometryCollectionピースとして指定します。 この値はクラスタリングレベルを示し、0はこの挙動を無効にします。

unreal_gc_cluster

Primitive

int

同じレベルの複数のピースを別々のグループに分けるためのプリミティブクラスタリングインデックスを指定します。

unreal_gc_clustering_damage_threshold

Detail

float

クラスタリングダメージ閾値を指定します。

unreal_gc_collisions_collision_type

Detail

int

コリジョンタイプを指定します。0 = Implicit-Implicit, 1 = Particle-Implicit。

unreal_gc_collisions_implicit_type

Detail

int

コリジョン暗黙タイプを指定します。0 = Box, 1 = Sphere, 2 = Capsule, 3 = Level Set, 4 = None, 5 = Convex。

unreal_gc_collisions_min_level_set_resolution

Detail

int

コリジョン最小レベルセット解像度を指定します。

unreal_gc_collisions_max_level_set_resolution

Detail

int

コリジョン最大レベルセット解像度を指定します。

unreal_gc_collisions_min_cluster_level_set_resolution

Detail

int

コリジョン最小クラスタレベルセット解像度を指定します。

unreal_gc_collisions_max_cluster_level_set_resolution

Detail

int

コリジョン最大クラスタレベルセット解像度を指定します。

unreal_gc_collisions_min_level_set_resolution

Detail

int

コリジョン最小レベルセット解像度を指定します。

unreal_gc_collisions_collision_object_reduction_percentage

Detail

float

コリジョンオブジェクト削減割合を指定します。

unreal_gc_collisions_mass_as_density

Detail

int

コリジョン質量を密度として設定します。0 = unset, 1 = set。

unreal_gc_collisions_mass

Detail

float

コリジョン質量を指定します。

unreal_gc_collisions_minimum_mass_clamp

Detail

float

コリジョン最小質量クランプを指定します。

unreal_gc_collisions_collision_particles_fraction

Detail

float

コリジョンパーティクル割合を指定します。

unreal_gc_collisions_maximum_collision_particles

Detail

int

コリジョン最大コリジョンパーティクルを指定します。

unreal_gc_name

Primitive, Detail

string

GeometryCollectionの名前を指定します。 複数のGC出力を区別するのに使用されます。

ジオメトリコレクション - Unreal Engine 5

以下のアトリビュートはUnrel Engine5特有のものです。 UE5では、複数の“Size Specific Data”を指定することができます。 さらに、“Size Specific Data”の各エレメントには、コリジョンシェイプの配列を指定することができます。

アトリビュート名

オーナー

説明

unreal_gc_clustering_cluster_connection_type

Detail

int

クラスタリング接続タイプを指定します。0 = Point implicit, 1 = MinimalSpanningSubsetDelaunayTriangulation, 3 = PointImplicitAugmentedMinimalDelaunay。

unreal_gc_collisions_max_size

Detail

float, float

Size Specific Dataの最大サイズ。 複数のSize Specific Dataを指定する必要があります。

unreal_gc_collisions_damage_threshold

Detail

int, int

各Size Specific Dataのコリジョンダメージ閾値。

unreal_gc_collisions_collision_type_X

Detail

int, int

クラスタリングダメージ閾値を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_implicit_type_X

Detail

int, int

コリジョン暗黙タイプを指定します。0 = None, 1 = Box, 2 = Sphere, 3 = Capsule, 4 = Level Set。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_min_level_set_resolution_X

Detail

int, int

コリジョン最小レベルセット解像度を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_max_level_set_resolution_X

Detail

int, int

コリジョン最大レベルセット解像度を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_min_cluster_level_set_resolution_X

Detail

int, int

コリジョン最小クラスタレベルセット解像度を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_max_cluster_level_set_resolution_X

Detail

int, int

コリジョン最大クラスタレベルセット解像度を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_collision_object_reduction_percentage_X

Detail

float, float

コリジョンオブジェクト削減割合を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_collision_particles_fraction_X

Detail

float, float

コリジョンパーティクル割合を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_maximum_collision_particles_X

Detail

int, int

コリジョン最大コリジョンパーティクルを指定します。 _Xには、Size Specific Dataのインデックスを指定します。

unreal_gc_collisions_collision_margin_fraction_X

Detail

float, float

コリジョンマージン割合を指定します。 _Xには、Size Specific Dataのインデックスを指定します。

_Xを含んだアトリビュート内のXは、Size Specific Dataのインデックスを示します。 さらに、一部のコリジョンアトリビュートは、値または値の配列のどちらにも対応しています。 インデックスiのエレメントは、インデックスiでのコリジョンオブジェクトの値を示します。

値は、下位互換のために、その値のみを含んだサイズ1の値配列と同等です。

_X接尾辞を追加しなかった場合、それはインデックス0と同等になります。

2つ以上のSize Specific Dataを指定したい場合、unreal_gc_collisions_max_sizeアトリビュートを使用して指定する必要があります。 例えば、unreal_gc_collisions_max_size = {1234, 12345}unreal_gc_collisions_collision_type_1 = {0, 1}のアトリビュートシーケンスは、2つのSize Specific Dataを持つGeometryCollectionを意味し、 その2つ目のSize Specific Dataには2つのコリジョンシェイプがあります: 1つ目のコリジョンシェイプのタイプはImplicit-Implicit、2つ目のコリジョンシェイプタイプはParticle-Implicitです。

インスタンサー

アトリビュート名

オーナー

説明

unreal_instance

Point, Detail

string

指定したトランスフォームでインスタンス化されるアセットのUnrealパス。バージョン2では、このアトリビュートはクラス名にもなります(PointLightなど)。

unreal_foliage

Detail, Primitive, Point

int, float

インスタンスで使用(および1に設定)されるとき、プラグインは、新しいアクター/コンポーネントを作成する代わりに、現行レベルのFoliageシステムにインスタンスを追加します。

unreal_foliage_attachment_type

Point

int

フォリッジをそのレベルの他のオブジェクトに追加すべきかどうかを決定します。Yesなら1、Noなら0、ランドスケープのみに追加する場合は2です。

unreal_foliage_attachment_distance

Point

float

unreal_foliage_attachment_typeの使用時に、垂直に検索する距離。デフォルトは1000です。

unreal_split_attr

any

string

2つ目のアトリビュート値に基づいてインスタンサーを複数のコンポーネントに分割するために使用される、もう1つのアトリビュートの名前を示します。

unreal_split_instances

Detail, Primitive

any

(廃止) 代わりにunreal_split_attrを使用してください。生成されたインスタンスを1つのInstancedStaticMeshComponentではなく、StaticMeshComponentsに分割すべきかどうかを示します。

unreal_instance_color

Primitive

float(4)

(廃止) unreal_split_instancesと共に使用して、インスタンス毎のカラーを指定し、生成されたStaticMeshComponents頂点カラーを上書きします。

unreal_hierarchical_instancer

any

int

1に設定すると、InstancedStaticMeshComponentsではなくHierarchicalInstancedStaticMeshComponentの作成を強制できます。 またこれは、インスタンス数がわずか1の場合でも、HierarchicalInstancedStaticMeshComponentの作成を強制することができます。

unreal_force_instancer

any

int

1に設定すると、スタティックメッシュにインスタンスが1つしかない場合でも、インスタンサーコンポーネント(InstancedStaticMeshComponentまたはHierarchicalInstancedStaticMeshComponent、後者はLODまたはunreal_hierarichal_instancer == 1に基づいています)の作成を強制することができます。

unreal_num_custom_floats

any

int

インスタンサーのインスタンス毎のカスタムデータに使用される、カスタム浮動小数点の数を示します。

unreal_per_instance_custom_dataX

any

float

インスタンス毎のカスタム浮動小数点データ(Xはカスタムデータのゼロベースのインデックス)

ランドスケープ

アトリビュート名

オーナー

説明

unreal_material_hole

Primitive, Detail

string

ランドスケープの穴に使用するマテリアルアセットのUnrealパス

unreal_landscape_shared_actor_name

any

string

ランドスケープストリーミングプロキシを使用する際の主要/共有ランドスケープアクターの名前。ランドスケープタイルアクターの名前は、unreal_output_nameから読み込まれます。デフォルト名: {hda_actor_name}_SharedLandscape (String Tokenをサポートしています)。

unreal_landscape_layer_min

any

float

Height Fieldレイヤ/高さの値をランドスケープに変換する際に使用される最小値を指定します。これは、すべてのタイルを確実に同じように変換したい場合に特に便利です。

unreal_landscape_layer_max

any

float

Height Fieldレイヤ/高さの値をランドスケープに変換する際に使用される最大値を指定します。これは、すべてのタイルを確実に同じように変換したい場合に特に便利です。

unreal_landscape_write_locked_layer

any

int

ロックされたLandscape Edit Layerに対してレイヤのデータの書き込みを許可します。

unreal_landscape_lock_layer

any

int

書き込み後にEdit Layerをロックします。

unreal_landscape_section_size

any

int

ランドスケープのセクションのサイズを指定します。unreal_landscape_sections_per_componentも設定する必要があります。

unreal_landscape_sections_per_component

any

int

ランドスケープのコンポーネント毎のセクションを指定します。unreal_landscape_section_sizeも設定する必要があります。

unreal_unit_landscape_layer

Primitive, Detail

int

1に設定すると、ランドスケープレイヤに変換される際、Height Fieldマスクの値は0, 1であるとみなされます。

unreal_landscape_layer_nonweightblended

Primitive, Detail

string

ウェイトがブレンドされていないランドスケープレイヤとして作成される、スペース区切りのHeight Fieldマスクの名前。

unreal_landscape_layer_info

Primitive

string

指定したHeight Fieldマスクをランドスケープレイヤに変換する際に使用される、既存のLandscapeLayerInfoオブジェクトのUnrealパス

unreal_landscape_layer_noweightblend

Primitive, Detail

int

Unreal内の呼応するペイントレイヤのLayerInfoオブジェクトで、NoWeightBlendプロパティを、チェックを外した0またはチェックが有効な1に設定します。このアトリビュートは、unreal_landscape_layer_nonweightblendedよりも優先されます。

unreal_landscape_output_mode

any

int

ランドスケープ出力モードをGenerate Landscapeの0、またはModify Edit Layerの1に設定します。

unreal_landscape_editlayer_name

any

string

ターゲットの編集レイヤの名前

unreal_landscape_editlayer_target

any

string

(廃止) 代わりにunreal_output_nameを使用してください。

unreal_landscape_editlayer_type

any

string

出力されるレイヤのタイプ。0 - ベースレイヤ、1 - 加算レイヤ(デフォルト: 0)。

unreal_landscape_editlayer_clear

any

int

出力Heightfieldを描画する前に編集レイヤ全体をクリアするかどうか(デフォルト: 0)。

unreal_landscape_editlayer_after

any

string

ターゲットランドスケープのレイヤ。そのレイヤの後に、この出力レイヤを配置します。

unreal_landscape_editlayer_subtractive

Primitive, Detail

int

このアトリビュートをHeight Fieldマスクに設定することで、UnrealのペイントレイヤのSubtractive Blendプロパティを、チェックを外した0またはチェックが有効な1に設定できます。

unreal_landscape_partition_grid_size

Primitive

int

このアトリビュートは、ランドスケープの作成時、World Partitionグリッドのサイズを制御します。World Partitionが有効なレベルでのみ適用できます。

unreal_landscape_landscape_size

Primitive

int2

単一のタイルのインポート時、ランドスケープ全体のサイズを示すのに使用されます。

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

以下のテーブルには、ランドスケープスプライン出力に影響を与える全般的なトリビュートを載せています。

アトリビュート名

アトリビュートオーナー

説明

unreal_landscape_spline

Point, Vertex, Primitive, Detail

1に設定すると、このプラグインは、カーブプリミティブをランドスケープスプラインとして認識します。

unreal_landscape_spline_target_landscape

Primitive

ランドスケープスプラインが作成されるランドスケープ。 HDAの入力ランドスケープをターゲットにするには、ここをInputX(0, 1, …)に設定すると良いでしょう。

ランドスケープスプライン編集レイヤ

アトリビュート名

アトリビュートオーナー

説明

unreal_landscape_editlayer_name

Point, Vertex, Primitive

スプラインを作成して適用する編集レイヤの名前。

unreal_landscape_editlayer_clear

Point, Vertex, Primitive

ランドスケープスプライン変換で最初に編集レイヤを変更する時にその編集レイヤをクリアするかどうか。

unreal_landscape_editlayer_after

Vertex, Primitive

unreal_landscape_editlayer_nameで指定された編集レイヤがこのレイヤの後へ移動します。

ランドスケープスプラインコントロールポイント

以下のテーブルには、ランドスケープスプラインのコントロールポイントでサポートされているアトリビュートを載せています。 多くのアトリビュートがカーブのポイント、頂点のどちらにも適用することができますが、両方を同時に適用することはできません。

アトリビュート名

アトリビュートオーナー

説明

rot

Point, Vertex

コントロールポイントの回転。

unreal_landscape_spline_control_point_id

Point, Vertex

コントロールポイントのID。 有効なIDは0以上です。 0未満の値は、そのポイントがコントロールポイントでないことを示します。

unreal_landscape_spline_control_point_lower_terrain

Point, Vertex

コントロールポイントの Raise Terrain プロパティ。

unreal_landscape_spline_control_point_mesh

Point, Vertex

コントロールポイント静的メッシュ。

unreal_landscape_spline_control_point_mesh_material_overrideX

Point, Vertex

コントロールポイントメッシュマテリアルのオーバーライド。

unreal_landscape_spline_control_point_mesh_scale

Point, Vertex

コントロールポイントメッシュのスケール。

unreal_landscape_spline_control_point_paint_layer_name

Point, Vertex

コントロールポイントの Paint Layer Name プロパティ。

unreal_landscape_spline_control_point_raise_terrain

Point, Vertex

コントロールポイントの Raise Terrain プロパティ。

unreal_landscape_spline_end_falloff

Point, Vertex

コントロールポイントの End Falloff プロパティ。

unreal_landscape_spline_half_width

Point, Vertex

コントロールポイントの Half-Width プロパティ。

unreal_landscape_spline_side_falloff

Point, Vertex

コントロールポイントの Side Falloff プロパティ。

ランドスケープスプラインセグメント

以下のテーブルには、ランドスケープスプラインのセグメントとセグメント接続でサポートされているアトリビュートを載せています。 これらのアトリビュートは、各ポイントまたは頂点に適用することができ、そのポイントまたは頂点で始まるセグメントに影響します。 これらのアトリビュートがカーブのポイントまたは頂点に存在しなかった場合、プリミティブがチェックされ、そこで見つかったアトリビュートがスプラインのすべてのセグメントに適用されます。

アトリビュート名

アトリビュートオーナー

説明

unreal_landscape_editlayer_name

Point, Vertex, Primitive

スプラインを作成して適用する編集レイヤの名前。

unreal_landscape_editlayer_clear

Point, Vertex, Primitive

ランドスケープスプライン変換で最初に編集レイヤを変更する時にその編集レイヤをクリアするかどうか。

unreal_landscape_editlayer_after

Point, Vertex, Primitive

unreal_landscape_editlayer_nameで指定された編集レイヤがこのレイヤの後へ移動します。

unreal_landscape_spline_segment_connectionX_mesh_socket_name

Point, Vertex, Primitive

セグメント接続 01: セグメントコントロールポイント接続で使用するコントロールポイント上のソケット名。

unreal_landscape_spline_segment_connectionX_tangent_length

Point, Vertex, Primitive

セグメント接続 01: このセグメント端点での接続ポイントの接線長。

unreal_landscape_spline_segment_lower_terrain

Point, Vertex, Primitive

セグメントの Raise Terrain プロパティ(スプラインが適用された時にランドスケープを引き上げることができるかどうか)

unreal_landscape_spline_segment_meshX

Point, Vertex, Primitive

セグメントメッシュ。Xは最初のメッシュでは省略され、以降のメッシュは1, 2, 3…となります。

unreal_landscape_spline_segment_meshX_material_overrideY

Point, Vertex, Primitive

セグメントメッシュマテリアルオーバーライド。

unreal_landscape_spline_segment_meshX_scale

Point, Vertex, Primitive

セグメントメッシュスケール。

unreal_landscape_spline_segment_paint_layer_name

Point, Vertex, Primitive

セグメントの Paint Layer Name プロパティ(スプラインがランドスケープに適用された時にペイントされるレイヤ)。

unreal_landscape_spline_segment_raise_terrain

Point, Vertex, Primitive

セグメントの Raise Terrain プロパティ(スプラインが適用された時にランドスケープを引き上げることができるかどうか)。

LOD(詳細レベル)

汎用UPropertyアトリビュートのLOD設定を変更することができます。

アトリビュート名

オーナー

説明

unreal_uproperty_LODForCollision

Detail

コリジョンに使用されるLODを設定します。

unreal_uproperty_MinLOD

Detail

最小LODを設定します。

unreal_uproperty_LODGroup

String

LODグループを設定します。

lodX_screensize

Detail

スクリーンサイズ値を設定します。lodXはLODの名前です。

Note

スクリーンサイズ値の手動による変更は、静的メッシュのAutoComputeLODScreenSizeを無効にします。

lod_screensize

Primitive

LODのスクリーンサイズ値を設定します。

Note

スクリーンサイズ値の手動による変更は、静的メッシュのAutoComputeLODScreenSizeを無効にします。

Houdini Engineで生成されたLOPグループを持つメッシュは、インスタンス化された時に、パックプリミティブまたはオブジェクトインスタンサー上に自動的に Hierarchical Instanced Static Mesh Components を作成します。

Note

各LOPグループ内のジオメトリは パック されてないようにしてください。 このプラグインは、パックジオメトリに対してLOPレベルの代わりに別のインスタンサーを作成します。

マテリアル

アトリビュート名

オーナー

説明

unreal_material

any

string

出力に適用するマテリアルアセットのUnrealパス。 マテリアルスロットを指定するには、大括弧の中にスロット番号を指定したものをパスの前に追加します:[0]path/to/mat

unreal_physical_material

Primitive, Detail

string

出力で物理マテリアルとして使用されるPhysicalMaterialアセットのUnrealパス

unreal_simple_physical_material

Primitive, Detail

string

単純なUnrealコリジョンで使用されるPhysicalMaterialのUnrealパス

unreal_face_smoothing_mask

Primitive

int

メッシュスムージングマスクデータ

マテリアルインスタンス

アトリビュート名

オーナー

説明

unreal_material_instance

Primitive, Detail

string

インスタンスを作成するマテリアルアセットのUnrealパス

unreal_material_hole_instance

Primitive, Detail

string

インスタンスを作成するマテリアルアセットのUnrealパスで、ランドスケープの穴に使用されます。

unreal_material_parameter_*

Detail

any

生成されたマテリアルインスタンスのパラメータを変更するのに使用されるアトリビュート接頭辞

メッシュ

アトリビュート名

オーナー

説明

unreal_lightmap_resolution

any

int

メッシュコンポーネントのライトマップ解像度

unreal_output_name

any

string

出力に使用される名前。単一のランドスケープアクターのデフォルト値: Landscape

unreal_disable_gamma_correction

any

int

0でない場合、'Cd'アトリビュートを読み込んだ時にガンマ補正は実行されません。

unreal_generated_mesh_name

any

string

(廃止) 代わりにunreal_output_nameを使用してください。

unreal_nanite_enabled

any

int

生成されたメッシュでNaniteを有効にします(UE5)。

unreal_nanite_position_precision

any

int

Naniteメッシュに使用されるPosition Precisionアトリビュート(UE5)

unreal_nanite_percent_triangles

any

int

Naniteメッシュに維持する三角形の割合、デフォルトはゼロ(三角形なし)(UE5)。

Naniteメッシュ

(UE5のみ)このプラグインは、以下のアトリビュートを使用して、HDAの出力で見つかったメッシュのNanite設定を制御することができます:

アトリビュート名

オーナー

説明

unreal_nanite_enabled

any

int

生成されたメッシュに対してNaniteを有効にします。

unreal_nanite_position_precision

any

int

Naniteメッシュの位置精度アトリビュート。

unreal_nanite_percent_triangles

any

int

Naniteメッシュで残す三角形の割合。デフォルトは0です(三角形なし)。

unreal_nanite_fallback_relative_error

any

float

代替の相対誤差 - ソースメッシュから細部を除去する時に許可される相対誤差の最大量。この相対誤差値には単位サイズがなく、メッシュのサイズに比例します。

unreal_nanite_trim_relative_error

any

float

トリム相対誤差 - この相対誤差量より小さい視覚的なインパクトのないソースメッシュのすべての細部が除去されます。この相対誤差値には単位サイズがなく、メッシュのサイズに比例します。

上記のどれかのアトリビュートがあれば、生成された静的メッシュに対して自動的にNaniteが有効になります。 Houdini Proxy MeshesはNaniteをサポートしていないので、これは、細かくなったメッシュにのみ適用されます。

メッシュソケット

アトリビュート名

オーナー

説明

mesh_socket_name

Point

string

ポイントグループによって生成されるメッシュソケットの名前

mesh_socket_tag

Point

string

ポイントグループによって生成されるメッシュソケットのタグ

mesh_socket_actor

Point

string

ポイントグループによって生成されるソケットに自動的にアタッチされるアクターの名前。V2では、これは、アクターとしてインスタンス化され、ソケットにアタッチされるアセットのパスである場合もあります。

mesh_socketX_pos

Detail

float3

メッシュソケットの位置を示したvector3

mesh_socketX_rot

Detail

float4

メッシュソケットの回転に使用されるクォータニオン

mesh_socketX_scale

Detail

float3

メッシュソケットのスケールを示したvector3

mesh_socketX_name

Detail

string

生成されたメッシュソケットの名前

mesh_socketX_tag

Detail

string

生成されたメッシュソケットのタグ

mesh_socketX_actor

Detail

string

自動的にアタッチされるアクターの名前

UnrealからHoudini

これらのアトリビュートは、入力タイプを使用してUnrealからHoudiniへデータをマーシャリングする際に、Houdiniで利用可能です。

位置のp、頂点カラーのCdAlpha、法線のN*、UVセットのuv*uvXなどの標準のHoudiniアトリビュートも通常利用可能です。

これらのアトリビュートとその値は、アセットの入力を初期化した後、内部のHoudiniシーン( File ▸ Open Scene In Houdini )のデバッグを行なうことで確認できます。

このテーブルには、UnrealからデータをHoudiniに取り込んだ時にこのプラグインによって作成される特殊アトリビュートを載せています。

ジオメトリコレクション

上記のテーブルのすべての出力アトリビュート、さらに以下のアトリビュートがHoudiniに取り込まれます:

アトリビュート名

オーナー

説明

unreal_input_gc_name

Detail

string

ジオメトリコレクションのパス名。

unreal_actor_path

Detail

string

入力データを含んだ/生成させたいアクターのパス。 Actorが入力として指定されている場合にのみ利用可能です。

unreal_level_path

Detail

string

アクターが生成される、または、入力データが含まれたレベルのパス。 Actorが入力として指定されている場合にのみ利用可能です。

入力

アトリビュート名

オーナー

説明

unreal_object_path

Primitive

string

入力オブジェクトへのパス

unreal_level_path

Primitive

string

入力データを含むレベルへのパス

unreal_actor_path

Primitive

string

選択した入力アクターへのパス

unreal_input_mesh_name

Primitive

string

入力に接続されたメッシュuassetのUnrealパス

unreal_input_source_file

Primitive

string

入力に接続されるuassetのソースパス(ソース.fbxへのファイルパスなど)

unreal_material

Primitive

string

入力で使用されるマテリアルアセットへのパス

unreal_material_hole

Primitive

string

入力ランドスケープで穴のマテリアルとして使用されるマテリアルアセットへのパス

unreal_material_parameter_*

Primitive

string

マテリアルのすべてのスカラー/ベクトル/テクスチャパラメータをアトリビュートとしてインポートする際に使用される接頭辞。この接頭辞の後にパラメータ名が続きます。

lodX_screensize

Detail

Float

入力メッシュのLOD番号Xのスクリーンサイズ値

unreal_tag_*

Primitive

string

入力オブジェクト/アクタータグをアトリビュートとしてインポートするのに使用される接頭辞

unreal_data_table_*

Point

string

ジオメトリ入力を介してテーブルをインポートする際に使用される接頭辞。各アトリビュートにはunreal_data_table_COL::_NAMEという名前が付けられます。

unreal_datatable_rowstruct

Point

string

入力データテーブル用のデータテーブルのタイプ(FDataTableRowStruct)を格納するアトリビュート

unreal_level_instance_name

Point

string

レベルインスタンスアクターでインスタンス化されるレベルの名前

マテリアル

アトリビュート名

オーナー

説明

unreal_simple_physical_material

Primitive

string

単純なコリジョンから取り込まれるPhysicalMaterialアセットのUnrealパス

メッシュソケット

アトリビュート名

オーナー

説明

mesh_socket_name

Point

string

入力オブジェクトからインポートされるメッシュソケットの名前

mesh_socket_tag

Point

int

入力オブジェクトからインポートされるメッシュソケットのタグ

mesh_socketX_pos

float3

int

入力オブジェクトからインポートされるソケットの位置を示したvector3

mesh_socketX_rot

float4

string

入力オブジェクトからインポートされるソケットの回転を示したクォータニオン

mesh_socketX_scale

float3

int

入力オブジェクトからインポートされるソケットのスケールを示したvector3

mesh_socketX_name

Detail

string

インポートされるメッシュソケットの名前

mesh_socketX_tag

Detail

string

インポートされるメッシュソケットのタグ

ランドスケープ

アトリビュート名

オーナー

説明

unreal_vertex_index

Point

int2

コンポーネントの頂点インデックス(グリッドx、y内の頂点インデックス)

unreal_landscape_streaming_proxy

Primitive

int

入力のランドスケープアクターをストリーミングプロキシにするかどうかを設定します。

グループ

いくつかの特別なグループ名には命名規則があり、HoudiniからUnrealにデータをマーシャリングする際の生成動作を指定します。 それぞれの仕組みの詳細については、以下で参照されているトピックをご覧ください。

コリジョン

複雑なコリジョン

グループ名

説明

collision_geo

複雑なコリジョン(不可視)を作成します。

rendered_collision_geo

複雑なコリジョン(可視)を作成します。

Warning

カスタムコリジョンにはrendered_collision_geoアトリビュートを 使用しないでください 。 これをしてしまうと、Unrealは、カスタムコリジョンではなく、元のアセットに基づいてコリジョンを生成してしまいます。

凸コリジョン

グループ名

説明

collision_geo_ucx

凸ハルコリジョン(不可視)を作成します。

rendered_collision_geo_ucx

凸ハルコリジョン(可視)を作成します。

単純なコリジョン

グループ名

説明

collision_geo_simple

デフォルトの単純なコリジョン(不可視)を作成します。

rendered_collision_geo_simple

デフォルトの単純なコリジョン(可視)を作成します。

collision_geo_simple_box

デフォルトの単純なボックスコリジョン(不可視)を作成します。

rendered_collision_geo_simple_box

デフォルトの単純なボックスコリジョン(可視)を作成します。

collision_geo_simple_sphere

単純な球コリジョン(不可視)を作成します。

rendered_collision_geo_simple_sphere

単純な球コリジョン(可視)を作成します。

collision_geo_simple_capsule

単純なカプセルコリジョン(不可視)を作成します。

rendered_collision_geo_simple_capsule

単純なカプセルコリジョン(可視)を作成します。

collision_geo_simple_kdop10x

単純な10DOP-Xコリジョン(不可視)を作成します。

rendered_collision_geo_simple_kdop10x

単純な10DOP-Xコリジョン(可視)を作成します。

collision_geo_simple_kdop10y

単純な10DOP-Yコリジョン(不可視)を作成します。

rendered_collision_geo_simple_kdop10y

単純な10DOP-Yコリジョン(可視)を作成します。

collision_geo_simple_kdop10z

単純な10DOP-Zコリジョン(不可視)を作成します。

rendered_collision_geo_simple_kdop10z

単純な10DOP-Zコリジョン(可視)を作成します。

collision_geo_simple_kdop18

単純な18DOPコリジョン(不可視)を作成します。

rendered_collision_geo_simple_kdop18

単純な18DOPコリジョン(可視)を作成します。

collision_geo_simple_kdop26

単純な26DOPコリジョン(不可視)を作成します。

rendered_collision_geo_simple_kdop26

単純な26DOPコリジョン(可視)を作成します。

LOD(詳細レベル)

グループ名

説明

lod_*

メッシュのLODレベルを定義するのに使用される接頭辞

メッシュソケット

グループ名

説明

socket_*

ソケットの追加に使用される接頭辞

標準のHoudiniアトリビュート

HoudiniとUnreal間でデータをマーシャリングする際は、特定の標準Houdiniアトリビュートが使用されます。

アトリビュート名

説明

instance

オブジェクトレベルのインスタンス化向け。インスタンサーを参照

p

位置

rot

回転

scale

スケール

pscale

不均等なスケール

Cd

カラー

Alpha

不透明度

N

法線

uv

UV

uvX

追加のUVチャンネルX(2から8)

Note

Houdini16.5以降、UV SOPノードを使用して、UVの格納に使用されるアトリビュート名を変更することができます。 これらのアトリビュートはプラグインでサポートされており、UVアトリビュートの総数がUnrealのMAX_STATIC_TEXCOORDS値(デフォルトは8)を超えない限り、UVに変換することができます。

UnrealでのHoudiniアセットのトランスフォームは、Houdiniでのアセットの親オブジェクトのトランスフォームで利用可能です。 例えば、HDAでこのPythonエクスプレッション(hou.parent().worldTransform().extractTranslates('trs').x())を使用して、Xの位置を取得することができます。

パラメータタグ

特定のパラメータタグを使用することで、Unreal内に露出されるパラメータの挙動を制御することができます:

パラメータタグ名

関連パラメータの型

説明

unreal_ref

string

1に設定すると、文字列パラメータがUnrealでAssetPickerとして作成され、文字列の値を選択したアセットのパスに設定します。

unreal_ref_class

string

“unreal_ref”タグと共に使用すると、アセットピッカーをフィルタリングするのに使用するクラスを指定できます。

hengine_noswap

Float (tuple3)

vector3 YおよびZの値がUnrealで入れ替わらないことを示します。

filechooser_mode

File

読み取りに設定されているとき、ファイルパラメータは読み取り専用になります。

default_dir

File

Browseダイアログを開く際に使用されるデフォルトディレクトリ

汎用UPropertyアトリビュート

このシステムの目的は、汎用アトリビュートを使用して、プラグインによって生成されたオブジェクトやメッシュで利用可能なプロパティを変更できるようにすることです。 プラグインによって生成されたコンポーネントですべてのプロパティを設定することはできないため、このシステムにより、アトリビュートを使用してこれらのプロパティを事前に設定できるようにします。

これらのプロパティを設定するには:

  1. アトリビュートを、unreal_uproperty_で始まるHDAに追加します。

  2. 変更したいupropertyの名前を追加します。

  3. するとHoudini Engineが、生成されたメッシュコンポーネントのアトリビュートに呼応するupropertyを見つけ、そのプロパティの値を設定しようと試みます。

例えば、アセットによって生成されたスタティックメッシュコンポーネントで Simulate Physics プロパティをアクティブ化する必要がある場合、unreal_uproperty_SimulatePhysicsというDetailアトリビュートを追加して、その値を1に設定します。 これで、アセットによって生成されたスタティックメッシュで、 Simulate Physics が有効になります。

upropertyアトリビュートは、float(浮動小数点)、int(整数)、またはstring(文字列)です。プラグインは常に、アトリビュートの値をupropertyの型に変換しようとします。

例えば、ブーリアンuproperty UseEmissiveForStaticLightingは、アトリビュートがunreal_uproperty_UseEmissiveForStaticLightingという名前の場合、intアトリビュートを1、floatアトリビュートを1.0、またはstringアトリビュートを true に設定することで、trueに設定することができます。

Center Of Mass Offsetをはじめとする、vector型Upropertyは、サイズ3のアトリビュートを使用して設定することができます。

Upropertyとアトリビュートを一致させるには、upropertyの名前(ソースコード内のupropertyの名前)またはスペースなしの表示名(Detailsパネルで使用される名前)のいずれかを使用します。

例えば、Center of Mass Offsetプロパティは、unreal_uproperty_centerofmassoffset (表示名を使用)またはunreal_uproperty_comnudge (uproperty名を使用)のいずれかのアトリビュートを使用して、変更することができます。

一般的なプロパティアトリビュートを使用しても、Houdiniアセットコンポーネント自体のプロパティを変更できます。 これを使用することで、Houdiniアセットコンポーネントのデフォルトプロパティの一部(Cook Triggers、Auto Bake、Use Output Nodesなど)を、事前に設定することができます。Houdiniアセットコンポーネント自体に適用するには、これらのアトリビュートをDetailsパネルで設定する必要があります。

例:

i@unreal_uproperty_bUseOutputNodes = 1;

指定したオブジェクトのタイプ/クラスのプロパティアトリビュートのリストを取得したいのであれば、Houdini.DumpGenericAttributeログコマンドを使用すると良いでしょう。 これは、指定したタイプに対してこのプラグインが見る汎用プロパティアトリビュートすべてをリストし、そのアトリビュート名、Unreal名と表示名、さらにはUnrealタイプとHoudiniタイプをリストします。

使い方は、単に“Output Log”パネルを開き、“Cmd”ボックス内に“Houdini.DumpGenericAttribute XXXX”(XXXXはリストが欲しいクラスに置換)と入力します。

例:

Houdini.DumpGenericAttribute StaticMesh
Houdini.DumpGenericAttribute InstancedStaticMeshComponent
Houdini.DumpGenericAttribute Landscape

文字列トークン

すべてのアトリビュートを事前に決定できるわけではありません。 出力値を完全に計算するには、さらなるコンテキスト情報が必要になることもあります(クック後)。 例えば、スタティックメッシュアセットのデフォルトの出力名またはパスは、HDAが現在実行されているのがTempモードかBakeモードかによって異なります。

トークン

説明

world

現行のパーシスタントワールドを含むマップへのパス

hda_level

現行のHDAが配置されているレベルを含むマップへのパス

hda_name

現行のHDAのタイプ名

hda_actor_name

現行のHDAアクターの名前

object_name

作成したいパッケージの名前。Nullの場合は、ASSET_OBJ_GEO_PART_SPLIT (PDGなし)またはASSET_TOPNET_TOPNODE_WORKITEMINDEX_PART_SPLIT (PDG付き)から作成されます。

pdg_topnet_name

一時的なPDG出力向け: TOPネットワーク名

pdg_topnode_name

一時的なPDG出力向け: TOPノード名

pdg_workitem_name

一時的なPDG出力向け: TOPノード名

guid

所有するHoudiniアセットコンポーネントを識別するGUID

out

コンテキスト出力フォルダ。HDAを実行しているのがTempモードかBakeモードかによって変わります。HDAがTempモードで実行されている場合、この値はtempトークンの値と一致します。HDAがBakeモードで実行されている場合、この値はbakeトークンの値と一致します。

temp

Tempモードでアセットを作成するときに使用される基本フォルダ

bake

Bakeモードでアセットを作成するときに使用される基本フォルダ

サンプル

HDAレベルにベイクする

  • パーシスタントレベルではなく、HDAを含む同じレベルにアクターをベイクするには、unreal_level_pathアトリビュートを“{hda_level}”に設定します。

ターゲットレベルにベイクする

  • アクターを現行のパーシスタントレベルに 相対的な レベル(MySubLevelという名前)にベイクするには、unreal_level_pathアトリビュートを{world}/MySubLevelに設定します。

  • アクターを特定のレベルに(絶対パスを使用して)ベイクするには、unreal_level_pathアトリビュートをパッケージパス /Game/Maps/MyTargetLevel に設定します。

Unreal

はじめよう

基本

Houdini Engineを使用する

スクリプト

リファレンス