LoginSignup
0
1

More than 3 years have passed since last update.

【UE4】エディター用のモジュールを作るまで【UnrealEngine】【Module】

Posted at

概要

UE4でアプリをパッケージ化する際に
実際のアプリでは使用しないエディター用のコードをパッケージに入れたくない時があります。
この問題を解決する方法として今回はモジュールを分割する方法を紹介します。

1.エディター用のモジュールを作る

新しいモジュールのフォルダを元からあるモジュールのフォルダをコピペしてSourceの直下に作ります。
今回はモジュール名をMyProjectEdにしています。
2.gif

作ったフォルダに最低限必要なコード MyProjectEd.Build.cs MyProjectEd.cpp MyProjectEd.h を用意します
ファイルの中身も全て新しいモジュール名でリネームを行います。
(デフォルトから存在するモジュールからコピーしてリネームするのが安全)
2.PNG

2.作ったモジュールをビルドの対象にする

エディターのみ追加されてほしいモジュールの場合〇〇Editor.Target.csが
エディター起動時用なのでこちらに作ったエディターのみ使用したいモジュール名を追加
MyProjectEditorTarget.cs

public class MyProjectEditorTarget : TargetRules
{
        public MyProjectEditorTarget(TargetInfo Target) : base(Target)
        {
        Type = TargetType.Editor;

        ExtraModuleNames.AddRange( new string[] { "MyProject" , "MyProjectEd" } );
    }
}

3.最後にGenerate VisualStudio project filesを実行

MyProject.uprojectの右クリックメニューからGenerate VisualStudio project filesを実行し、ビルドをすれば完成

4.gif

気を付けたい事

エディター用のモジュールでランタイム用のモジュールを使用したい場合は
エディター用のBuild.csのDependencyで参照する対象のModuleを指定する必要があります。
※これをしていないとエディター用のソースからパッケージ用のソースをインクルードした時エラーがでます。
3.PNG

まとめ

エディター拡張に必要なUnrealEdをRuntime用のモジュールに含めたままだとパッケージが作れない問題が起きたりするので、
エディター拡張を行う場合は必要になりそうです。

参考にしたサイト

モジュールについて
新しいエディターモジュールを作る

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1