-------------------------------------------------------------------------------------------------------------
「PCGグラフのノードパラメータを外部(BP)から設定する方法に関して」
[Content removed]
-------------------------------------------------------------------------------------------------------------
件題に関しまして、以前上記の質問をさせて頂き実現方法に関してご教授頂き解決する事が出来たのですが
その際は UE 5.4にて検証しておりました。
今回実装プロジェクトのバージョンを5.5に上げ、同機能を使用したいと思い、
御社よりご教授頂いた実装方法を元に作成したプロジェクトのバージョンを5.5に上げ
(uprojectファイルの右クリック「Swtich Unreal Engine version」でアップ)検証したところ動作せず
BlueprintやPCGグラフの内容等比較、検証調査を行いましたが原因が分からず詰まってしまった為、
質問させて頂きました。
5.4だと設定項目に各スタティックメッシュ、アクターを設定した際に反映されマップに表示されますが
5.5ですと設定項目に設定はされますがマップには表示されません。
現状特にエラー等は確認できておりません。
御社側で何か分かることがありましたらご教授頂きたく存じます。
詳細は添付のReadmeファイルを御覧ください。
不明点等ありましたらご連絡ください。
以上
宜しくお願い致します。
再現手順
<スタティックメッシュ検証>
使用PCGグラフ:/Game/Projects/PCGGraph/PCG_SurfaceSamplerExternalVariable
1、/Game/Projects/Blueprints/PCG/BP_PCG_ExternalVariableModifi.uasset
をレベルに配置。
2、詳細欄の「Static Mesh Array」に何でも良いのでスタティックメッシュを設定
<アクターBP検証>
使用PCGグラフ:/Game/Projects/PCGGraph/PCG_SurfaceSamplerVariableActorClass
1、/Game/Projects/Blueprints/PCG/BP_PCG_ExternalVariableActorClass.uasset
をレベルに配置。
2、詳細欄の「Actor Class Array」に
/Game/Projects/Blueprints/BP_StaticMeshActor.uasset
を設定
お世話になっております。
お問い合わせありがとうございます。
確認させていただいたところ、BP_PCG_ExternalVariableModifi、BP_PCG_ExternalVariableActorClassともにボリューム情報(そのアクタの空間上での大きさ)がなく、グラフを実行できる空間を確保できていない様子でした。Boxコンポーネントを追加し、適度な大きさをとらせたところ、下図のように動作いたしましたのでお知らせいたします。
[Image Removed]
BP_PCG_ExternalVariableActorClassのほうも同様でした。こちらの画像は投稿に直接貼り付けるにはサイズが大きくなりすぎたため、本投稿に画像ファイルとして添付いたしました。
当方で確認しましたところ、ご提出いただいたUE5.4バージョンのプロジェクトファイルも同じような問題を抱えておりまして、正しく動作させるにはBP_PCGクラスにBoxコンポーネントを追加する作業が必要でした。
一度ご確認いただけますと幸いです。
以上、よろしくお願いいたします。
お世話になっております。
返信有り難うございます。
こちらの返信が遅くなり失礼致しました。
早速、教えて頂いた通り、Boxコンポーネントを追加し確認したところ、正常に設定したメッシュが表示される事を確認致しました。
Boxコンポーネントの使用が必要と言うのを全く知らず教えて頂きありがとうございます。
その中でいくつか気になる事があるのですが
1、基本的にBPでPCGグラフコンポーネントとして持たせ使用する場合、Boxコンポーネントも基本必須で追加すべきなのか。
それとも使用が必要な場合とそうでない場合があるのか。
2、お渡しした5.4バージョンでは問題が発生してはいたが自分の手元の環境ではBoxコンポーネントを使用していなくても
メッシュが表示されていたのはどういう理由があり得るのか。
以上
追加質問となりお手数お掛け致しますが
何卒、宜しくお願い致します。
返答ありがとうございます。
1、に関して承知致しました。
2、に関しまして確認したところ
・バウンズ(境界ボックス)は表示されていない
・インスタンス(アクタ)に独自に空間を主張するコンポーネントは付与されていない(DefaultScecneRootとPCGコンポーネントのみ)
状況でした。
目標である5.5環境では問題を解決できているのと現状優先度は低い為、このスレッドは
Closeして頂き、引き続き調査は行う予定です。
御社へ質問させて頂きたい場合は新規で作成し質問させて頂きたいと思います。
ご返答頂きありがとうございました。
お世話になっております。
回答のご確認をありがとうございます。
> 1、基本的にBPでPCGグラフコンポーネントとして持たせ使用する場合、Boxコンポーネントも基本必須で追加すべきなのか。
> それとも使用が必要な場合とそうでない場合があるのか。
PCGグラフコンポーネントが動作するには、空間上でPCGを動作させる範囲をPCGに知らせる必要があります。
ネイティブのPCG VolumeクラスではVolumeコンポーネントを使用しています。
BPのみで似たようなものを構築する場合は、Boxがもっとも手軽だと思いますが、空間を主張できるのであればどのようなコンポーネントも使用できます。
> 2、お渡しした5.4バージョンでは問題が発生してはいたが自分の手元の環境ではBoxコンポーネントを使用していなくても
> メッシュが表示されていたのはどういう理由があり得るのか。
・お手元の環境で配置したインスタンス(アクタ)をクリックした際にバウンズ(境界ボックス)は表示されておりますでしょうか?
いただいたサンプルと完全に同じであれば、バウンズは表示されず、PCGの動作エリアも決定できない・・・となるはずではあります。
→表示されている場合
・お手元の環境で配置したインスタンス(アクタ)に独自に空間を主張するコンポーネントが付与されているということはないでしょうか?
(現在のUEでは、BPクラス側がBoxコンポーネントを持っていない設計であっても、レベル上に配置したアクタだけにコンポーネントを追加することが可能です)
→表示されない場合
・PCGグラフのオプションで、一度生成したものをすべてCleanし、Rebuildしても正しく動作しますでしょうか?
一度ご確認いただけますと幸いです。
以上、よろしくお願いいたします。
お世話になっております。
ご確認ありがとうございました。
5.4でバウンズなしで動作している件の調査の優先度は低いとの旨、承知いたしました。
それでは、本件は一旦回答済みとしてCloseさせていただきます。
以上、よろしくお願いいたします。