【UE5】開発中プラグインからエンジンプラグインのモジュールを参照する場合

Pocket
LinkedIn にシェア
LINEで送る

今Move Render QueueのShift Lens対応をやり始めたんですがちょっとハマったのでメモ。
色々検証した結果、レンダーパスのところだけ自作したものに差し替えればいいか-という結論に至ったので既存のMovieRenderPipelineプラグインを読み込ませるために、MovieRenderQueueShiftLens.Build.csファイルのPublicDependencyModuleNamesにモジュールを追加した。

PublicDependencyModuleNames.AddRange(
new string[]
{
“Core”,
“MovieScene”,
“MovieSceneTools”,
“MovieSceneTracks”,
“MovieRenderPipelineCore”,
“MovieRenderPipelineRenderPasses”,
“MovieRenderPipelineSettings”,
}
);

ビルドは成功。エンジンの起動もできるんだけど、ロード中に以下のメッセージが出てくる。

モジュール ‘MovieRenderQueueShiftLens’ をロード出来なかったためプラグイン
‘MovieRenderQueueShiftLens’ のロードに失敗しました。OSエラーかモジュールが正しく設定
されていない可能性があります。

依存関係を見てみると、MovieRenderPipelineのDLLを参照したがっている。

MovieRenderQueueShiftLens.Build.csファイルこんな追記をしてみたけど、違った。

DynamicallyLoadedModuleNames.AddRange(
new string[]
{

}
);
/
if (Target.Platform == UnrealTargetPlatform.Win64)
{
string LibPath = “/Plugins/MovieScene/MovieRenderPipeline/Intermediate/Build/Win64/UnrealEditor/Development”;
PublicAdditionalLibraries.Add(EngineDirectory + LibPath + “/MovieRenderPipelineCore/UnrealEditor-MovieRenderPipelineCore.lib”);
PublicAdditionalLibraries.Add(EngineDirectory + LibPath + “/MovieRenderPipelineEditor/UnrealEditor-MovieRenderPipelineEditor.lib”);
PublicAdditionalLibraries.Add(EngineDirectory + LibPath + “/MovieRenderPipelineRenderPasses/UnrealEditor-MovieRenderPipelineRenderPasses.lib”);
PublicAdditionalLibraries.Add(EngineDirectory + LibPath + “/MovieRenderPipelineSettings/UnrealEditor-MovieRenderPipelineSettings.lib”);
PublicAdditionalLibraries.Add(EngineDirectory + LibPath + “/UEOpenExrRTTI/UnrealEditor-UEOpenExrRTTI.lib”);

string LibPathDll = “/Plugins/MovieScene/MovieRenderPipeline/Binaries/Win64/”;
RuntimeDependencies.Add(EngineDirectory + LibPathDll + “UnrealEditor-MovieRenderPipelineCore.dll”);
RuntimeDependencies.Add(EngineDirectory + LibPathDll + “UnrealEditor-MovieRenderPipelineEditor.dll”);
RuntimeDependencies.Add(EngineDirectory + LibPathDll + “UnrealEditor-MovieRenderPipelineRenderPasses.dll”);
RuntimeDependencies.Add(EngineDirectory + LibPathDll + “UnrealEditor-MovieRenderPipelineSettings.dll”);
RuntimeDependencies.Add(EngineDirectory + LibPathDll + “UnrealEditor-UEOpenExrRTTI.dll”);
}

正解

MovieRenderQueueShiftLens.upluginファイルにPluginとして記述するのが正解でした。

 

 

{
	"FileVersion": 3,
	"Version": 1,
	"VersionName": "1.0",
	"FriendlyName": "MovieRenderPipelineSLCEditor",
	"Description": "",
	"Category": "Other",
	"CreatedBy": "",
	"CreatedByURL": "",
	"DocsURL": "",
	"MarketplaceURL": "",
	"SupportURL": "",
	"CanContainContent": false,
	"IsBetaVersion": false,
	"IsExperimentalVersion": false,
	"Installed": false,
	"Plugins": [
		{
			"Name": "MovieRenderPipeline",
			"Enabled": true
		}
	],
	"Modules": [
		{
			"Name": "MovieRenderPipelineSLCEditor",
			"Type": "Editor",
			"LoadingPhase": "Default"
		}
	]
}

 

記事の情報はお役に立ちましたか?

ご支援も承っています。
ご注意:返金のご対応はいたしかねます。あくまでも投げ銭としての位置付けであり、優待・特典等はございません。ご了承下さい。

21798:【UE5】開発中プラグインからエンジンプラグインのモジュールを参照する場合

v3

管理人が読んだおすすめの建築本

    

コメントを残す