Firemonkeys 借助 AGDE 缩短了开发和调试时间
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
Electronic Arts (EA) 是一家总部位于美国加利福尼亚州的游戏公司。它制作了各种不同类型的游戏,例如体育、动作、赛车和模拟游戏。EA 的开发工作室 Firemonkeys 因开发真实赛车 3、模拟人生自由玩和 Need For Speed: No Limits 而闻名于世。Firemonkeys 使用自定义游戏引擎来开发游戏,现在他们的所有 Android 游戏都在其开发工作流中使用 Android Game Development Extension (AGDE)。该工作室一直在寻找一种方法来简化其构建和调试工作流,最终节省开发工作和费用,而 AGDE 就实现了这一点。
图 1:“模拟人生:自由玩”的屏幕截图
使用方式
Firemonkeys 使用 AGDE 生成他们的所有 Android build 以用于测试,以及在 Android 上调试原生 C/C++ 代码。他们的游戏构建工作流包括预编译头文件和 Unity build 的组合,以缩短编译时间,两者都得到 AGDE 的良好支持。在调试时,Firemonkeys 经常使用 AGDE 调试 C/C++ 代码。EA 技术总监 Patrick Broddesson 表示:“我们对调试界面和性能很满意。当出现更复杂问题时,我们会使用拆解视图,而 AGDE 有强大的工具可以解决这个问题。”在性能分析方面,通过扩展程序本身快速启动 Android Studio 性能分析器的功能使得分析过程在调查设备特定问题时变得更加轻松快捷。
Firemonkeys 的工程团队已经非常熟悉 Visual Studio,并且可在几天内轻松地将 AGDE 集成到其新项目或现有项目的现有工作流中。Broddesson 表示:“集成过程很简单,扩展程序附带文档和示例应用,以方便指导。”
图 2:正在进行 AGDE 调试
成果
使用 AGDE 可让 Firemonkeys 统一开发环境,并跨平台和设备自动执行构建流水线。借助 AGDE,Firemonkeys 能够利用其现有的 Visual Studio IDE 和 AGDE 的调试界面,满足 Firemonkeys 的 Android 开发需求。Broddesson 表示,该集成已成功完成,并且与之前的工作流相比有了显著的改进。“使用 AGDE 无疑减少了开发新 Android 功能的开发时间,并且节省了调试 Android 特定 bug 所花费的时间。”Firemonkeys 团队发现,使用 AGDE 可以减少新项目的维护并缩短设置时间,尤其是对于已经使用 Visual Studio 作为主 IDE 设置的跨平台项目。“使用 AGDE 对我们来说最大的好处是,我们可以通过不需要在不同 IDE 和调试工具之间切换,最大限度地减少工程团队的上下文切换。”
总体而言,Firemonkeys 预计,使用 AGDE 的构建、调试和分析工具可将 Android 特定功能的开发成本降低 10-15%。Broddesson 表示:“我们团队能够减少工程工作流中的障碍,从而节省成本。”
开始使用
了解 Android Game Development Extension 如何帮助您在 Visual Studio 中使用 C/C++ 构建跨平台游戏时以 Android 为目标平台。
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2021-07-12。
[null,null,["最后更新时间 (UTC):2021-07-12。"],[],[],null,["# Firemonkeys reduced development and debugging time with AGDE\n\n[Electronic Arts](https://play.google.com/store/apps/dev?id=6605125519975771237)\n(EA) is a game company headquartered in California, USA. It produces a wide\nvariety of games across different genres, such as: sports, action, racing,\nand simulation. EA's development studio, Firemonkeys, is best known as the\ndeveloper of\n[Real Racing 3](https://play.google.com/store/apps/details?id=com.ea.games.r3_na),\n[The Sims FreePlay](https://play.google.com/store/apps/details?id=com.ea.games.simsfreeplay_na),\nand\n[Need For Speed: No Limits](https://play.google.com/store/apps/details?id=com.ea.game.nfs14_row).\nFiremonkeys uses a custom game engine to develop games, and now uses\n[Android Game Development Extension (AGDE)](/games/agde) in its development workflow for\nall of their Android games. The studio was looking for a way to streamline\ntheir build and debugging workflows, to ultimately save development effort\nand cost, and AGDE provided that.\n\n\n**Figure 1**: Screenshot from The Sims: Freeplay\n\nHow they use it\n---------------\n\nFiremonkeys uses AGDE to produce all of their Android builds for testing, as well as\nto debug native C/C++ code on Android. Their game building workflow\nincludes a combination of precompiled headers and\n[Unity](https://en.wikipedia.org/wiki/Single_Compilation_Unit) builds to\nimprove compile times - both of which are well supported by AGDE. For\ndebugging, Firemonkeys frequently uses AGDE to debug C/C++ code. Patrick Broddesson,\nTechnical Director at EA, said, \"We are happy with the debugging interface\nand performance. We use the disassembly view for those times when more\ncomplex issues arise, and AGDE has great tools for that.\" When it comes to\nprofiling, the ability to quickly launch Android Studio Profilers from the\nextension itself made the profiling process easier and faster when looking\ninto device specific problems.\n\nFiremonkeys' engineering team was already intimately familiar with Visual Studio,\nand integrating AGDE into their existing workflow for a new or existing\nproject was easily achieved within a few days. \"The integration process is\nsimple, and the extension comes with documentation and sample apps for\nguidance,\" said Broddesson.\n\n\n**Figure 2**: AGDE debugging in progress\n\nResults\n-------\n\nUsing AGDE allows Firemonkeys to unify development environments, and automate build\npipelines across platforms and devices. AGDE enabled Firemonkeys to take advantage\nof their existing Visual Studio IDE together with AGDE's debugging\ninterfaces to address Firemonkeys' Android development needs. Broddesson states\nthat the integration has been successful and a marked improvement over\ntheir previous workflows. \"Using AGDE has most definitely reduced the\ndevelopment time of new Android features, as well as the time spent\ndebugging complex Android specific bugs.\" The Firemonkeys team found that using AGDE\nresulted in less maintenance, and quicker setup time for new projects,\nespecially for cross-platform projects that are already setup with Visual\nStudio as the main IDE. \"The biggest win for us from using AGDE is that we\ncan minimize context switching for our engineering team by not having to\nmove between different IDEs and debugging tools.\"\n\nOverall, Firemonkeys expects that using AGDE's building, debugging, and profiling\ntools will reduce the development costs for Android specific features by\n10-15%. \"The cost savings result from reducing obstacles in engineering\nworkflows for our teams\", said Broddesson.\n\nGet started\n-----------\n\nLearn how the\n[Android Game Development Extension](/games/agde)\nenables you to target Android when building cross-platform games with C/C++\nin Visual Studio."]]