UE5 C++ Interface接口

一.创建接口

声明Attack() 和 Calculatehealth()虚函数

cpp 复制代码
UINTERFACE(MinimalAPI)
class UMyInterface : public UInterface
{
	GENERATED_BODY()
};

/**
 * 
 */
class PRACTICEC_API IMyInterface
{
	GENERATED_BODY()

	// Add interface functions to this class. This is the class that will be inherited to implement this interface.
public:
	virtual void Attack() {};
	virtual void CalculateHealth() {};
};

二.角色的C++类里继承接口

1.头文件设置 添加

cpp 复制代码
#include "MyInterface.h"  
cpp 复制代码
class PRACTICEC_API AMyCharacter : public ACharacter,public IMyInterface
cpp 复制代码
	//重写接口函数
	virtual void Attack() override;
	virtual void CalculateHealth() override;

2.在Character.cpp简单实现, 并在 BeginPlay里调用这两个函数

cpp 复制代码
void AMyCharacter::Attack()
{
	GEngine->AddOnScreenDebugMessage(-1,5.0f,FColor::Red,TEXT("Attack"));
}

void AMyCharacter::CalculateHealth()
{
	GEngine->AddOnScreenDebugMessage(-1,5.0f,FColor::Red,TEXT("Calculate "));
}

3.效果如下

相关推荐
日月云棠2 天前
UE5源码分析之Editor——ConfigEditor模块全面分析
ue5
日月云棠2 天前
UE5源码分析之Editor——CommonMenuExtensions插件全面分析
ue5
日月云棠2 天前
UE5源码分析之Editor——ClothingSystemEditorInterface模块全面分析
ue5
日月云棠2 天前
UE5源码分析之Editor——ClothPainter插件全面分析
ue5
[苦行僧]2 天前
ue5 异步 Task
ue5
曼巴UE55 天前
Unlua UE5.3 调试
ue5·lua·unlua
远离UE47 天前
UE5 母材质 编写笔记
笔记·ue5·材质
远离UE47 天前
UE5 HLSLTranslator 与 ShaderCompiler
ue5
1204157137 肖哥8 天前
UE5.7 场景打光管线流程_【雪山】
ue5
weixin_404679318 天前
虚幻5 替代小白人角色的完整逻辑
ue5