Can not invoke OnRequestDefaultDataInterface. Delegate was never set.

1339 ワード

これは編集とは関係ありませんが、LaunchやPackagingで発生した問題です.
コラボレーションツールをGITHUBからPerforceに変換します.
Market PlaceプラグインWeatherシステムをプロジェクトモジュールに変更しました(ダウンロードが必要でしたが、公開されたプロジェクトではありません).
これが問題だと思った.
確実な手がかりはありませんが、モバイルコラボレーションツールに伴い、多くのエラーが発生しました.
ログの表示中にweather systemの初期化中にエラーが発生したためです.
まずdependencyを見て、
予想とは異なり、天気システムの構築.csをよく観察すると、これはナイアガラが公共依存をよく宣伝しているからではないことが分かった.
2回目はUBT(Unreal Build Tool)の初期化順のせいかと思います.
Unrealは、モジュールの初期化フラグによって順序を決定します.
したがって,Delegateになっていないのは,NiagaraとWeatherSystemが順番に呼び出されていないためであると考えられる.
		"Name": "WeatherSystem",
		"Type": "Runtime",
		"LoadingPhase": "Default",
		"WhitelistPlatforms": [
			"Win64"
		]
残念ながらLoading PhaseはDefaultに設定されており、他に変更しても結果は変わりません.
念のためメインプロジェクトも建てておりますcsファイルにNiagaraを追加しました.
PublicDependencyModuleNames.AddRange(new string[] { "WeatherSystem", "Core", "CoreUObject", "Engine", "InputCore", "Niagara"});
しかし、同じようにNever setだけが発行されます.
結果的に課題時間を逃した翌日...
グーグルを再検索してみると、ナイアガラの画像のGPUをCPU-SIMに変えればいいのです.
やってみました...
起動しました.言葉がない.
本当に思いがけないところが気になると思います.
しかし,誤りをよく考慮するとUBTの動作方式や初期化順序が重要である.
さらに建造する.cs/target.これはcs/uplugin/uprojectがどのように働いているのか、そしてそれが何を意味するのかを考える貴重な時間です.
この2,3日4時間寝て得た結果ですが...(実際には、これに加えて、1つのパッケージングエラーと2つのランタイムエラーを解決する必要があります)