PCG アセットが [World Partition] - [Data Layer] および [HLOD Layer] に割り当てられると、PCG グラフによってアクタが生成され、同じデータ レイヤーと HLOD レイヤーに割り当てられます。
データ レイヤーを使用する
以下の例では、パーティション化された PCG ボリュームが 2 つあります。 1 つは岩石メッシュを生成し、DL_Rocks データ レイヤーに割り当てられます。 もう 1 つはツリー メッシュを生成し、DL_Trees データ レイヤーに割り当てられます。
データ レイヤーウィンドウで生成されたメッシュを選択すると、岩が自動的に DL_Rocks に割り当てられ、木が自動的に DL_Trees に割り当てられていることがわかります。
Spawn Actor ノードと Create Target Actor ノードのデータ レイヤー設定
Spawn Actor ノードと Create Target Actor ノードにはそれぞれ、データ レイヤー ソース タイプと呼ばれる設定があります。この設定は、ノードがアクタをデータ レイヤーに割り当てる方法を制御します。
[Data Layer Source Type (データ レイヤー ソース タイプ)] は次のオプションに設定できます。
Self: Spawn Actor または Create Target Actor ノードは、スポーンされたアクタに、ソース PCG コンポーネント アクタとして同じデータ レイヤーを割り当てます。
Data Layer References: このノードは、Data Layer Reference 属性によって設定された input Param Data set (入力パラメータ データ セット) を使用してデータ レイヤーを割り当てます
Spawn Actor ノードと Create Target Actor ノードは、Included Data Layers プロパティと Excluded Data Layers プロパティを使用したフィルタリングをサポートしています。これらは入力または直接参照です。
また、Add Data Layers カテゴリもあります。ここでは、入力または直接参照として割り当てる追加のデータ レイヤーを指定できます。
アクタデータレイヤーを取得
Get Actor Data Layers ノードは入力から ActorReference 属性を読み取り、それらの入力で使用される全てのデータ レイヤーを DataLayerReference 属性に出力します。 出力は、データ レイヤー アセットごとに 1 つのエントリを含む単一のパラメータ データです。
Partition By Actor Data Layers
Partition By Actor Data Layers ノードはポイント データを入力として受け取り、入力ポイント データ内のデータ レイヤーに基づいてポイント データの 1 つ以上のパーティションを出力します。
このノードは、ActorReference 属性を使用して入力ポイントを解決し、アクタが使用するデータ レイヤーを取得します。 次に、入力で見つかったこれらのデータ レイヤーの全ての組み合わせに、ポイント データとデータ レイヤー パーティションを作成します。
データ レイヤーをプロセスに含めるか除外するには、ノードで Included Data Layers 入力および Excluded Data Layers 入力を使用するか、ノード設定で DataLayer アセット参照を使用します。
Included Data Layers を使用する場合、その他全てのデータ レイヤーは無視されます。 Excluded Data Layers を使用する場合、除外データ レイヤーを除く全てのデータ レイヤーが考慮されます。
例 1
入力データには、3 つの異なるアクタを指す 3 つのポイントがあります。 1 つのアクタが DataLayerA を使用し、他の 2 つのアクタは DataLayerB を使用します。
出力には、2 つのポイント データと 2 つのデータ レイヤー パーティション (パラメータ データとして格納) が含まれます。
最初のポイント データは、DataLayerA を使用しているポイントを含みます。2 つ目のポイント データには、DataLayerB を使用している両方のポイントが含まれます。
最初のデータ レイヤー パーティションには、DataLayerA アセットを指す DataLayerReference 属性を持つ 1 つのエントリが含まれます。 2 つ目のパーティションには、DataLayerB アセットを指すDataLayerReference 属性を持つ 1 つのエントリが含まれます。
例 2
入力には以下のポイントがあります。
DataLayerA に解決されるポイント
DataLayerB に解決されるポイント
DataLayerA と DataLayerB の両方に解決されるポイント
出力には、それぞれ 1 つのポイントを含む 3 つのポイント データと、3 つのパラメータ データが含まれます。
最初のポイント データは、DataLayerA を使用しているポイントを含みます。2 つ目のポイント データは、DataLayerB を使用しているポイントを含みます。 3 番目のポイント データは、DataLayerA と DataLayerB の両方を使用しているポイントを含みます。
最初のデータ レイヤー パーティションには、DataLayerA アセットを指す DataLayerReference 属性を持つ 1 つのエントリが含まれます。 2 つ目のパーティションには、DataLayerB アセットを指す DataLayerReference 属性を持つ 1 つのエントリが含まれます。3 番目のパーティションには 2 つのエントリが含まれており、1 つは DataLayerA アセットを指し、もう 1 つは DataLayerB アセットを指しています。
HLOD レイヤーを使用する
下の例には、岩メッシュを生成する Surface Sampler があります。
このサンプラを含む PCG グラフは、そのコンポーネントとアクタの全てを MyHLODLayer という HLOD レイヤーに割り当てるように設定されています。
生成されたメッシュを選択すると、生成された岩が自動的に MyHLODLayer に割り当てられていることがわかります。
Spawn Actor ノードおよび Create Target Actor ノードの HLOD 設定
Spawn Actor ノードと Create Target Actor ノードには、ノードが HLOD Layer へのアクタの割り当て方法を制御する HLODSource Type という設定があります。
HLODSource Type は次のオプションに設定できます。
Self: Spawn Actor または Create Target Actor ノードは、同じ HLOD レイヤーをソース PCG コンポーネント アクタとしてスポーンされたアクタに割り当てます。
Reference: このノードは、ノード設定で HLOD レイヤーへの直接参照を使用して、HLOD レイヤーを割り当てます。
Template: このノードはテンプレート アクタから HLOD レイヤー参照を使用します。