SuperAPI AI 工具集

ue5-cpp-gameplay

编程与开发

查看项目

更新于 10-16 02:22

技能介绍

用途 该技能用于在 Unreal Engine 5.6–5.8 中实现游戏玩法相关的 C++ 代码,主要面向 Actor、Component、DataAsset 以及玩法逻辑的编写。当请求要求编写成对的 .h/.cpp 文件、暴露蓝图可调用 API、处理网络复制或使用 GameplayTag 时,可使用该技能。

主要能力 技能覆盖以下 API 锚点:

  • 反射与 UObject:UCLASS、USTRUCT、UENUM、UINTERFACE、GENERATED_BODY()、UPROPERTY(...)、UFUNCTION(...)。
  • 核心玩法类型:AActor、UActorComponent、UDataAsset、UGameInstanceSubsystem;头文件中使用 TObjectPtr<>,类引用使用 TSubclassOf<>。
  • 复制:GetLifetimeReplicatedProps(...)、Net/UnrealNetwork.h 中的 DOREPLIFETIME(...)、ReplicatedUsing=OnRep_*、UFUNCTION(Server/Client/NetMulticast, ...)。
  • GameplayTag:FGameplayTag、FGameplayTagContainer,显式标签请求/匹配检查并带安全回退行为。

使用方式 快速开始流程为:确认目标类类型;在实现前定义所需的蓝图面向 API;同时输出头文件与源文件。 实现阶段契约要求每个玩法 C++ 任务定义:公共头文件 API 表面(蓝图/API 可见性)、私有运行时实现路径(.cpp)、所有权/生命周期模型(构造、初始化、销毁)、网络权威规则(仅单机或复制流程)、验证方法(编译假设、用法示例、边界情况行为)。若缺少任一项,则实现规格不完整。 工作流分为六步:类型与文件形态(使用 Unreal 宏与 UE5 指针约定,头文件前置声明、源文件具体包含,保持类职责单一可复用);公共 API 设计(先定义蓝图 API,最小可调用表面,明确输入输出契约与失败行为);运行时实现(空检查、权威守卫、显式分支,Tick 按需启用,优先事件驱动,显式处理初始化顺序);复制与 RPC(仅为真正客户端可见状态添加复制属性与 OnRep_*,在 GetLifetimeReplicatedProps 中注册,使用服务器权威 RPC 入口);GameplayTag 与数据驱动钩子(显式标签名,运行时校验并提供回退,优先 DataAsset 驱动配置而非硬编码常量);验证输出(包含两个文件与必要包含,确认蓝图暴露、复制行为与错误处理路径,非平凡行为提供用法片段)。

适用场景 适用于需要编写 UE5 玩法 C++ 类、暴露蓝图接口、实现网络复制与 RPC、使用 GameplayTag 或数据驱动配置的开发任务。

限制 约束包括:创建类时必须提供匹配的 .h 与 .cpp;使用与 UE5.6–5.8 兼容的非弃用 API;保持包含最小化,头文件使用前置声明;除非明确要求,避免硬编码资源路径;头文件 UPROPERTY 对象引用优先使用 TObjectPtr<>;任何影响网络的玩法操作保持显式服务器权威检查。 失败处理覆盖常见症状:类编译但蓝图缺失(检查 BlueprintType/Blueprintable/BlueprintCallable 元数据);未解析符号或包含循环(调整头文件包含图与前置声明);复制属性在客户端不更新(检查 GetLifetimeReplicatedProps 与复制标志);OnRep_* 不触发(检查属性写入路径与网络角色);RPC 可调用但运行时被忽略(检查 RPC 说明符与调用点权威);GameplayTag 逻辑静默失败(校验标签名与配置)。 兼容性说明指出上述反射、复制与 GameplayTag API 在 UE5.6–5.8 间稳定,运行时行为应优先使用稳定核心 API 而非仅编辑器辅助工具。升级条件为:用户要求超出单个玩法类的插件/模块级重构,或解决方案需要自定义引擎源码修改。