UE4 Plugin的封装

原创文章,转载请注明出处。

1>新建一个Plugin

参考下图

{
	"FileVersion": 3,
	"Version": 1,
	"VersionName": "1.0",
	"FriendlyName": "MyTest1",
	"Description": "created by whitetian",
	"Category": "Other",
	"CreatedBy": "tianhuajian",
	"CreatedByURL": "",
	"DocsURL": "",
	"MarketplaceURL": "",
	"SupportURL": "",
	"CanContainContent": true,
	"IsBetaVersion": false,
	"IsExperimentalVersion": false,
	"Installed": false,
	"Modules": [
		{
			"Name": "MyTest1",
			"Type": "Runtime",
			"LoadingPhase": "Default"
		}
	]
}

​​​​​​在这里插入图片描述

2>在plugin中创建一个Actor类,并在里面写一个UE4的Log输出函数。

MYTEST1_API等价于#define MYTEST1_API DLLEXPORT等价于调用
__declspec(dllexport)
__declspec(dllimport)
 
 
// DLL export and import definitions
#ifndef DLLEXPORT
    #define DLLEXPORT
    #define DLLIMPORT
#endif

// Copyright Epic Games, Inc. All Rights Reserved.
 
#pragma once
 
#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "MyActor.generated.h"
 
/**
 * 
 */
UCLASS()
class MYTEST1_API AMyActor : public AActor
{
	GENERATED_BODY()
	
public:
	UFUNCTION(BlueprintCallable)
	void MyPrint();
};

// Copyright Epic Games, Inc. All Rights Reserved.
 
 
#include "MyActor.h"
 
 
 
void AMyActor::MyPrint()
{
	GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Green, TEXT("AMyActor::MyPrint()"));
}

在这里插入图片描述
在这里插入图片描述

3>对其进行编译,编译出不同模式的dll出来

选择Development Editor/Debug Game Editor

在这里插入图片描述

4>在UE4场景中测试我们Log函数

在这里插入图片描述

5>删除cpp文件

在这里插入图片描述

6>在我们的.build.cs中添加不参数编译的参数 bUsePrecompiled = true;

在这里插入图片描述

7>再到UE4场景中测试我们Log函数。发现也能成功

在这里插入图片描述

8>注解

在这里插入图片描述

谢谢,创作不易,大侠请留步… 动起可爱的双手,来个赞再走呗 <( ̄︶ ̄)>


版权声明:本文为u011718663原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。