UE4 C++ 创建自定义的Actor类

MyActor.h

#pragma once						// 防止头文件多次包含

#include "CoreMinimal.h"			// 该文件中,包含了很多经常使用到的类的声明,比如FString、Vector、TArray等
#include "GameFramework/Actor.h"	// AActor类声明的位置
#include "MyActor.generated.h"		// Unreal Header Tool(UHT)生成的,放着反射数据的文件

UCLASS()							// 指明该类暴露给反射系统
class COOKBOOK_API AMyActor : public AActor	// CookBook_API 由UHT创建,表明类AMyActor是模块COOKBOOK中的类,项目生成后,会在对应的DLL中暴露出来
{
	GENERATED_BODY()				// 也是由UHT生成的,不知道有什么用…… 说是UE的类型系统需要生成一些东西
	
public:	
	// Sets default values for this actor's properties
	AMyActor();						// 构造

protected:
	// Called when the game starts or when spawned
	virtual void BeginPlay() override;	// 游戏开始后或对象生成后会触发的

public:	
	// Called every frame
	virtual void Tick(float DeltaTime) override;	// 每帧都会调用

};

MyActor.cpp

#include "MyActor.h"

// 设置默认值
AMyActor::AMyActor()
{
	// 控制Tick函数是否执行,默认执行
	PrimaryActorTick.bCanEverTick = true;
}


void AMyActor::BeginPlay()
{
	Super::BeginPlay();			// 调用父类的实现
}

// 每帧调用
void AMyActor::Tick(float DeltaTime)
{
	Super::Tick(DeltaTime);
}



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