ue蓝图项目添加c++类
时间: 2025-03-03 14:53:12 浏览: 159
### 添加和使用 C++ 类到 Unreal Engine 蓝图项目
#### 创建新的 C++ 类
为了向蓝图项目中添加C++类,首先需要创建一个新的C++类。这可以通过Unreal Editor完成:
1. 打开Unreal Editor并加载目标项目。
2. 导航至`File`菜单下的`New C++ Class...`选项来启动Visual Studio(或其他支持的IDE),以便创建新类。
在弹出窗口里可以选择继承的基础类,比如Actor、Character等基础游戏对象[^1]。
```cpp
// MyCustomActor.h
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "MyCustomActor.generated.h"
UCLASS()
class MYPROJECT_API AMyCustomActor : public AActor
{
GENERATED_BODY()
public:
// 构造函数
AMyCustomActor();
protected:
// 当在游戏中放置或通过其他方式初始化时调用
virtual void BeginPlay() override;
public:
// 每帧调用一次
virtual void Tick(float DeltaTime) override;
};
```
#### 编写 C++ 代码
接着,在对应的`.cpp`文件内实现上述声明的方法和其他任何想要暴露给蓝图的功能。确保所有希望能在蓝图中访问的数据成员都标记有`UPROPERTY()`宏,并且方法前加上`UFUNCTION()`宏以使它们可由蓝图调用。
```cpp
// MyCustomActor.cpp
#include "MyCustomActor.h"
AMyCustomActor::AMyCustomActor()
{
PrimaryActorTick.bCanEverTick = true; // 启动每帧更新机制
}
void AMyCustomActor::BeginPlay()
{
Super::BeginPlay();
}
void AMyCustomActor::Tick(float DeltaTime)
{
Super::Tick(DeltaTime);
}
```
#### 配置模块依赖项
对于涉及额外模块的情况,则需修改项目的`Build.cs`文件,加入必要的公共依赖列表。例如,如果打算利用网络功能,则应包含如下所示的内容:
```csharp
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "Networking" });
```
此操作确保了编译器能够找到所需头文件以及链接相应的库文件[^2]。
#### 使用自定义 C++ 类于蓝图
一旦完成了以上步骤并且成功编译了工程之后,所创建的新类型就会出现在内容浏览器中的“Classes”类别下。此时就可以像平常那样拖拽实例化节点进入场景视图或者直接在蓝图图表里面新建变量引用该类型的实体了。
阅读全文
相关推荐


















