【UE4】エンジンに登録したプラグインの関数を、プロジェクト内のプラグインから呼び出す【C++】

Pocket
LinkedIn にシェア
LINEで送る

やり方はだいたい予想はついてたけど、あえてググって確認すると意外に見つからなかったのでメモ。

先日、あおり補正の機能が付いたCineCameraActorのプラグイン『ShiftLensCamera』を作成しましたね。例えばUE4.25プラグイン一式をC:\Epic Games\UE_4.25\Engine\Plugins\フォルダに置くことで、アンリアルエンジンエディタのバージョン4.25の全プロジェクトであおり補正カメラShiftLensCineCameraActorアクターやクラスが使えるようになる話はしました。

今回はさらに、ShiftLensCameraプラグインで定義されているSetShiftLens()関数を呼び出したい場合の記述方法です。

やり方

C:\Epic Games\UE_4.25\Engine\Plugins にあるいろんなプラグインのソースを参照すことで答えが見つかります。えっ、これいいのか…って感じが最初したんですがまあOKなのかな。AppleARKitやOculusAudioとかもこの記述していますので。

1.Build.csファイル

プロジェクト内に作成したプラグインの、Build.csファイルに追記します。予想通りでしょうけど。(『PluginHoge』というプラグインを作った場合の例)

C:\Epic Games\Unreal Projects\{プロジェクト名}\Plugins\PluginHoge\Source\PluginHoge\PluginHoge.Build.cs

PublicIncludePaths.AddRange(
new string[] {
// … add public include paths required here …

“../../../../../../Plugins/Cameras/ShiftLensCamera/Source/ShiftLensCamera/Public”,

}
);

PrivateDependencyModuleNames.AddRange(
new string[]
{
// ・・・略・・・
// … add private dependencies that you statically link with here …

“CinematicCamera”,
“ShiftLensCamera”,

}
);

2.cppファイル

あとは目的のCPPファイルに使いたい関数が定義されているヘッダーファイルを記述するだけです。

C:\Epic Games\Unreal Projects\{プロジェクト名}\Plugins\PluginHoge\Source\PluginHoge\Private\PluginHoge.cpp

#include “ShiftLensCineCameraActor.h”
#include “ShiftLensCineCameraComponent.h”

void FPluginHogeModule::PluginButtonClicked()
{
// こんな感じで呼べるようになる

AShiftLensCineCameraActor* camera = new AShiftLensCineCameraActor;
camera->SetShiftLens(0.5f);

}

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

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

16897:【UE4】エンジンに登録したプラグインの関数を、プロジェクト内のプラグインから呼び出す【C++】

v3

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

    

コメントを残す