Skip to content

クラス in Unreal Engine

As Project edited this page Sep 17, 2023 · 8 revisions

前準備

解説記事の実行環境

ソフト名 バージョン
Unreal Engine 4.22.3
Visual Studio 2017
DTL 0.4.11

Unreal EngineVisual Studio は事前に導入していることを前提に進めます。


上記のリンクからダウンロードする。

※なるべく最新のバージョンをダウンロードする。

BP

ダウンロードされたファイル。

BP

ダウンロードしたファイルを 解凍(すべて展開) する。

BP

名前はお好みで。 展開する。

BP

展開後のファイル。中にあるフォルダを開く。

BP

include フォルダを開く。

BP

DTL フォルダと DTL.hpp があることを確認する。

BP


2. UE4のプロジェクトを作成

Epic Games Launcherを起動し、Unreal Engineを起動する。

BP

ライブラリメニューから開く場合。

BP

起動中。

BP

新規プロジェクト を選択。

BP

C++ を選択。

BP

今回は サードパーソン を選択。

BP

今回、プロジェクト名は DTL_Sample にします。

BP

プロジェクトを作成 を選択。

BP

Visual Studioが立ち上がります。

BP

UE4が立ち上がりました。

BP


3. (プロジェクト名)Build.csに追加記述

ここからDTLのヘッダーファイルを取り込むために (プロジェクト名)Build.cs を変更していきます。 先ほど開いたVisual Studioを開きます。

BP

ソリューションエクスプローラー から Source を選択します。

BP

中のフォルダが出てくるので、 (プロジェクト名) フォルダ(説明ではDTL_Sampleフォルダ)の中の (プロジェクト名).Build.cs ファイル(説明ではDTL_Sample.Build.cs)を開きます。

BP

(プロジェクト名).Build.cs ファイルを開けました。

BP

ソリューションエクスプローラー上部の、 ソリューション'(プロジェクト名)' を右クリックします。

BP

メニューが出てくるので エクスプローラーでフォルダーを開く を選択します。

BP

開いたフォルダにある Source フォルダを開きます。

BP

Sourceフォルダにある (プロジェクト名) フォルダを開きます。

BP

ここに新しいフォルダを作っていきます。

BP

右クリックで新規作成を選択し、フォルダーを選択します。新しいフォルダが作成されます。

BP

新しく作ったフォルダの名前は Library にします。

BP

Libraryフォルダを開きます。右クリックで新規作成を選択し、フォルダーを選択します。新しいフォルダが作成されます。

BP

新しく作ったフォルダの名前は DTL にします。

BP

DTL フォルダに先ほどダウンロードしたDTLのヘッダーファイルを移動していきます。

BP

include フォルダにある全フォルダと全ファイルを DTL フォルダへ移動します。

BP

移動が出来ました。

簡単にまとめると、C++プロジェクトとしてUE4プロジェクトの Source/ 以下に library/DTL フォルダを作成します。 そこに、DTLライブラリの include 以下をコピーします。

BP

Visual Studioを開き直します。 (プロジェクト名).Build.cs を開きます。

BP

(プロジェクト名).Build.cs は以下のように変更します。

BP

(プロジェクト名).Build.cs に追加する記述は以下の通りです。

PublicIncludePaths.Add(ModuleDirectory + "/Library/DTL/");

PrivateDependencyModuleNames.AddRange(new string[] { "Landscape", "LandscapeEditor" });

Before

using UnrealBuildTool;

public class DTL_Sample : ModuleRules
{
	public DTL_Sample(ReadOnlyTargetRules Target) : base(Target)
	{
		PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;

		PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "HeadMountedDisplay" });
	}
}

After

using UnrealBuildTool;

public class DTL_Sample : ModuleRules
{
	public DTL_Sample(ReadOnlyTargetRules Target) : base(Target)
	{
		PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;

        PublicIncludePaths.Add(ModuleDirectory + "/Library/DTL/");

        PrivateDependencyModuleNames.AddRange(new string[] { "Landscape", "LandscapeEditor" });

        PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "HeadMountedDisplay" });
	}
}

前準備は以上です。

Clone this wiki locally