这是一个基于 Unreal Engine 4.24 和 C++ 构建的极简自动对战(Auto-battler)原型。单位利用手写寻路系统自动寻路并攻击敌方建筑。
✅ 满足所有课程要求:
- 核心逻辑由 C++ 实现(并与蓝图集成)
- 使用 Git 进行协同开发
- 使用了 OOP(面向对象编程)、STL 以及现代 C++ 特性(如
auto,nullptr)
- 点击 Barbarian 等按钮部署单位。
- 单位使用 Grid(导航网格)自动寻路至敌方基地。
- 到达攻击范围后,它们会持续造成伤害。
- 摧毁敌方基地即可获胜。
这是一个专注于核心系统的技术原型,不包含完整的游戏深度。
- 自定义
AGameMode在运行时生成所有游戏对象 ABase类提供生命值和销毁逻辑- 关卡中不直接放置 Actor —— 所有内容均为动态生成
- 单位实现自主移动
- 使用
Grid Manager启用寻路功能
- UMG UI 通过
UFUNCTION(BlueprintCallable)调用 C++ 函数 - 蓝图类继承自 C++ 基类以实现扩展性
- Windows 10/11
- Visual Studio 2019(需安装 C++ 桌面开发工作负载)
- Unreal Engine 4.24(通过 Epic Launcher 安装)
- 克隆此仓库
- 右键点击
AutoBattleDemo.uproject→ 选择 Generate Visual Studio project files(生成 VS 项目文件) - 在 Visual Studio 中打开生成的
.sln文件 - 将解决方案配置设置为 Development Editor,平台设置为 Win64
- 按 Ctrl+F5 编译并启动编辑器
- 打开
Content/Maps/MainMenu.umap并点击 Play(运行)
AutoBattleDemo/
├── Source/AutoBattleDemo/ # C++ 源码 (GameMode, ABase, 生成逻辑)
├── Content/Blueprints/ # 单位蓝图
├── Content/UI/ # UI蓝图
├── Content/Maps/PlayerBase.umap # 空场景 (所有内容在运行时生成)
└── AutoBattleDemo.uproject
仅供教育用途。
© 2025 Team 657220