【虚幻引擎】UE5 自定义插件Source文件夹代码整理避坑

UE5 自定义插件Source文件夹代码整理避坑

通过UE添加插件

将会在UE项目目录中出现 Plugins文件夹,假定你的插件叫做 MyPlugin,那么就会生成 Plugins/MyPlugin 这个目录。

MyPlugin 当中,会有和UE项目相似的结构,包括 ContentResourcesSource等等,此外还有一个 .uplugin 文件。

!! 注意 !!

  • Source 文件夹当中,存放的就是插件代码,每个代码按照 Module 也就是模块来存放。自己的整理就从这里入手
  • .uplugin 可以理解为UE5的插件编码文件,里面是一些插件信息,以及 Module 部分,这也是整理过程当中需要注意的

整体的目录初始结构如下:

- MyUEProject
|___ Binaries
|___ Config
|___ ...
|___ Plugins
		|___ MyPlugin		// 插件目录
			|___ Content
			|___ ...
			|___ Source		// 按模块存放代码,初始模块默认为插件名
				|___ MyPlugin
					|___ Private	// 存放 MyPlugin.cpp	,模块初始化文件,*** 很重要 ***
					|___ Public		// 存放 MyPlugin.h	,模块初始化文件,*** 很重要 ***
					|___ MyPlugin.Build.cs		// 该文件用于添加额外库目录等,*** 很重要 ***
			|___ MyPlugin.uplugin

其中,MyPlugin.h 文件内容如下:

// Copyright Epic Games, Inc. All Rights Reserved.

#pragma once

#include "CoreMinimal.h"
#include "Modules/ModuleManager.h"

class FMyPluginModule : public IModuleInterface
{
   
public:

	/** IModuleInterface implementation */
	virtual void StartupModule() override;
	virtual void ShutdownModule() override;
};

注意,这里 class 的命名是有要求的!!!FMyPluginModule 需要拆分成 F + MyPlugin + Module 的格式,也就是必须以 F 开头,紧接着是这个模块(Module)的名字,这里默认是插件名,然后跟上 Module表示模块,其他内容默认即可。

然后是 MyPlugin.cpp 文件:

// Copyright Epic Games, Inc. All Rights Reserved.

#include "MyPlugin.h"

#define LOCTEXT_NAMESPACE "FMyPluginModule"

void FMyPluginModule::StartupModule()
{
   
	// This code will execute after your module is loaded into memory; the exact timing is specified in the .uplugin file per-module
}

void FMyPluginModule
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值