Firemonkeys 運用 AGDE 縮短了開發和偵錯時間
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
Electronic Arts (EA) 是一家總部設於美國美國加州的遊戲公司。可以製作不同類型的遊戲,例如運動、動作、賽車和模擬。EA 的開發工作室 Firemonkeys 是 Real Racing 3、The Sims FreePlay 和 Need For Speed: No Limits 的開發團隊。Firemonkeys 使用自訂遊戲引擎開發遊戲,現在會在開發工作流程中使用 Android Game Development Extension (AGDE) 處理所有 Android 遊戲。該公司希望能簡化建構和偵錯工作流程,進而節省開發時間和成本,而 AGDE 可以滿足這個需求。
圖 1:The Sims: Freeplay 的螢幕截圖
使用方式
Firemonkeys 使用 AGDE 產生所有 Android 版本進行測試,以及對 Android 上的原生 C/C++ 程式碼進行偵錯。遊戲建構工作流程包含預先編譯的標頭與 Unity 版本,縮短編譯時間,兩者都受到 AGDE 支援。Firemonkeys 經常使用 AGDE 對 C/C++ 程式碼進行偵錯。EA 技術總監 Patrick Broddesson 表示:「我們對偵錯介面和效能很滿意,當較複雜的問題出現時,我們會使用拆解檢視畫面,而 AGDE 也有絕佳工具。」在分析時,您可以透過擴充功能本身快速啟動 Android Studio Profilers,如此一來,當您尋找特定裝置的問題時,剖析程序就能更輕鬆快速。
Firemonkeys 的工程團隊已經很熟悉 Visual Studio,將 AGDE 整合到現有的工作流程中,在幾天內就可輕鬆完成。Broddesson 表示:「整合程序很簡單,擴充功能也隨附說明文件和範例應用程式,可提供指南。」
圖 2:AGDE 偵錯正在進行中
成果
使用 AGDE 可讓 Firemonkeys 統合開發環境,並自動跨平台和裝置建構建構管道。AGDE 可讓 Firemonkey 搭配使用現有的 Visual Studio IDE,以及 AGDE 的偵錯介面,以滿足 Firemonkey 的 Android 開發需求。Broddesson 表示整合已順利完成,且先前工作流程有明顯的改善。「使用 AGDE 大幅縮短了 Android 新功能的開發時間,同時縮短對複雜 Android 特定錯誤進行偵錯所花費的時間。」Firemonkeys 團隊發現,使用 AGDE 可減少維護成本,並縮短新專案的設定時間,特別是已經將 Visual Studio 設定為主要 IDE 的跨平台專案。「對我們使用 AGDE 的最大好處,在於我們不必在不同 IDE 和偵錯工具之間移動,就能大幅減少工程團隊的環境切換。」
整體而言,Firemonkey 認為使用 AGDE 的建構、偵錯和剖析工具可將 Android 特定功能的開發成本降低 10% 至 15%。Broddesson 表示:「減少我們團隊中工程工作流程的障礙,進而節省成本」
開始使用
瞭解 Android Game Development Extension 如何在 Visual Studio 中使用 C/C++ 建構跨平台遊戲。
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2021-07-12 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間: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."]]