“AGDE 简直太棒了!”;使用 Unreal Engine 进行 Android 开发

Unreal Engine 是由 Epic Games 开发的游戏引擎,可为各行各业的创作者提供自由和控制权,让他们提供先进的娱乐、富有吸引力的可视化内容和沉浸式虚拟世界。一些主要的 Android 游戏都是使用 Unreal Engine 构建的。

在 Pixel 4 上运行的 Unreal Engine Suntemple 示例的屏幕截图 图 1. 在 Pixel 4 上运行的 Unreal Engine Suntemple 示例的屏幕截图

Epic 和其他游戏开发者使用 Android Studio 调试 C++、Kotlin 或 Java 编程语言,但许多游戏开发者都有以 Visual Studio 为中心的其他平台的开发工作流。Unreal Engine 移动团队专注于面向移动平台的 Unreal Engine 功能开发和优化。该团队一直在将 Android Game Development Extension (AGDE) 用于 Unreal Engine Android 开发以及《堡垒之夜》 Android 调试和优化。

使用方式

在采用 Android Game Development Extension (AGDE) 之前,针对 Android 进行调试和构建需要在 Android Studio 中打开生成的 Gradle 项目,然后在两个开发环境之间切换以进行编译或调试,每个环境都有自己的一组按键绑定。这不仅会给开发者带来不快,而且非常耗时,尤其是对于迭代开发。现在,有了 AGDE,Android 游戏的整个开发工作周期都在 Visual Studio 中!迁移到新开发工作流的开发者会发现,对于 Unreal Engine 开发而言,新开发工作流不仅速度更快,而且更方便。

安装 AGDE 后,每当您为 Unreal Engine (UE) 4.26.2 或更高版本生成 Visual Studio 项目文件时,Unreal 构建工具也会生成与 AGDE 搭配使用的 Android 构建目标。从那以后,在 Visual Studio 中,Unreal Engine 开发和调试体验与 PC 及其他平台完全相同。在 Visual Studio 中按 F5 会使 AGDE 生效,然后触发 C++ Android 构建并生成或更新 Android 应用软件包 (APK)。然后,AGDE 会在设备上启动一个 C++ 调试会话,从而允许使用熟悉的 Visual Studio 调试功能,例如断点、监视器以及查看反汇编和寄存器。支持 AGDE 的 Android build 还利用 Unreal Build Tool 的 Incredibuild 集成,为 Android C++ 代码提供跨计算机分发的 build。

使用 Unreal Engine 的 AGDE 的屏幕截图 图 2. 使用 Unreal Engine 的 AGDE 的屏幕截图

成果

“鉴于我们以 Visual Studio 为中心的开发环境,我们很高兴能够将 AGDE 纳入我们的工作流。我们肯定认为使用 AGDE 是成功的,因为《堡垒之夜》和 Unreal Engine 移动工程师每天都在使用 AGDE 来完成工作。”Unreal Engine 移动团队负责人 Jack Porter 表示。“借助 AGDE,Epic 可以更快速、更方便地调试问题,而停留在 Visual Studio 中后,与之前的工作流相比有了显著的改进。使用 AGDE 确实为我们节省了大量时间,并帮助我们发现了通过其他方式找不到的 bug”。

“我们预计会在 Epic 中继续使用 AGDE,并计划在我们的文档中推荐 AGDE 作为所有 Unreal Engine 被许可人的受支持 Unreal Engine Android 开发者工作流。”Porter 说。 Unreal Engine 移动团队开发者 Dmytro Vovk 一直在使用 AGDE 来开发 Unreal Engine 和《堡垒之夜》移动版。他表示:“AGDE 太棒了!最后,我可以调试汇编代码,并在逐步检查代码时看到寄存器正在更新。在 Visual Studio 中轻松进行 Android 调试,让我的日常工作变得更轻松,并让我能够一直按自己的开发流程操作。”

开始使用

了解 Android Game Development Extension 如何帮助您在 Visual Studio 中使用 C/C++ 构建跨平台游戏时以 Android 为目标平台。