查看原文
其他

欢迎体验 Android 游戏开发工具包

以下文章来源于Android 开发者 ,作者Android

作者 / Android Games 产品经理 Scott Carbon-Ogden


我们在 2021 Google 游戏开发者峰会发布了 Android 游戏开发工具包 (AGDK)。它是一整套工具和库,可以帮助您开发、优化和交付高品质的 Android 游戏。


  • Android 游戏开发工具包 (AGDK)
    https://developer.android.google.cn/games/agdk
△ Android 游戏开发新工具

AGDK 中的功能遵循以下三个关键原则:

  • 专为游戏开发编写的代码。我们使用 C 或 C++ API 构建和测试所有库,同时兼顾性能。

  • 减少碎片化。AGDK 工具和库可以在多个不同的 Android 版本中运作。大部分功能可以在当下绝大多数设备上运行。

  • 由 Android 构建,为 Android 而生。在未来更新 Android 平台时,这些功能将一并更新,这些库还有可能支持向下兼容。


在首次发布中,我们重点关注以下三个收到大量开发者社区反馈的主要领域: 集成式工作流、C/C++ 游戏库以及性能优化。



集成式工作流


通常来说,您需要切换的工具越少,效率也就越高。借助 AGDK,我们提供了新的工具以助您在主要 IDE 中轻松开发 Android 游戏。我们将专注于 Google 可以为其增添独特价值和解决 Android 特定问题的工作流程部分,同时与您目前工作流程中惯用的部分进行兼容。

  • Android 游戏开发工具扩展包 (Android Game Development Extension) 将 Android 作为平台目标添加到 Visual Studio 中。这样一来,现有的多平台 Visual Studio 游戏项目就能够快速集成 Android 作为新平台。您可以在下面的视频中了解详情:

△ 用于虚拟工作室的 Android Game Development Extension

  • 我们正与一些主流的游戏引擎开发商合作,直接将我们的工具和库集成到游戏引擎中,这样一来,您无需做出任何改变,即可享受性能的增强和稳定性的提升。


  • 针对上述集成无法满足的情况,我们已着手构建适用于 Unity 等游戏引擎的插件。这些插件都集于一处,方便您快速找到所需。

  • 适用于 Unity 等游戏引擎的插件
    https://developers.google.cn/unity/packages#android



C/C++ 游戏库


借助我们用于 C/C++ 开发的游戏库,您可以以更少的 Java 原生接口 (JNI) 开始 C 语言开发。大多数游戏和游戏引擎均使用 C++ 编写,而 Android 开发通常需要使用 Java 编程语言。使用 Java 原生接口连接这两种编程语言较为复杂,并且可能引入错误或导致性能衰退。AGDK 将提供 C 语言游戏库,尽可能减少 Java 编程语言和 JNI 的使用,从而帮助您构建和自定义游戏引擎。这可以帮助您更加轻松地构建、调试和维护游戏。

我们会重点关注您反馈的痛点。短期包括为活动和输入构建基本类。而从长远来说,我们计划构建更多的 C 语言库,以提供跨游戏引擎常用的功能。我们准备将现有的帧同步和高性能音频库整合到构建的 C 语言库中,同时添加三个全新的库:
  1. Game Activity 为 C++ 游戏提供构建基础。该库能为您预期的所有 Android 事件 (包括屏幕旋转和应用生命周期) 提供 C 语言接口。这有助于您尽可能减少在 Java 语言上花费的开发时间。不同于原生 Activity 的是,Game Activity 不仅能与 fragment 兼容,还可以进行扩展,让您能够更轻松地集成一些喜爱的 SDK。

  2. 游戏文本输入 (Game Text input) 可让您在 C 语言中稳定地使用软件键盘,该库已得到官方支持,并且可在多个 Android 版本中使用。

  3. 游戏控制器 (Game Controller) 能以 C 语言处理游戏控制器传来的输入信号,以映射控制器的功能,并在必要时重新连接至设备。


  • Game Activity
    https://developer.android.google.cn/games/agdk/integrate-game-activity
  • 游戏文本输入
    https://developer.android.google.cn/games/agdk/add-support-for-text-input
  • 游戏控制器
    https://developer.android.google.cn/games/sdk/game-controller


请在下面这个视频中详细了解以上 C/C++ 库:

△ 用于 Android 游戏的 C/C++ 库

为尽可能简化集成过程,您可以选择以 Maven 依赖项、预编译的 Zip 文件或源代码的形式获取我们所有的库。



性能优化


我们的目标是帮助您在发布前发现任何稳定性或性能方面的问题,并在游戏发布后对其进行监测分析,以发现任何存在的问题。我们首先将关注帧率、加载时间和内存等最为重要的指标,并会随着时间的推移加入新指标。


  • 我们即将发布有关 Android GPU Inspector 的重大更新,其中包括帧分析功能。该功能将与现有的 GPU 分析元素配合工作,以帮助您充分了解任何与 GPU 相关的问题。AGI 现推出公开 Beta 版,您可以在这个视频中了解更多 GPU Inspector 的相关内容:

△ 利用 Android GPU Inspector 帧分析器优化图形

  • 我们还在 Android Studio 和 AGDE 中提供了一套用于系统、电源和 CPU 的性能剖析器 (Android Profiler),以及游戏开发者可以用来找出低效问题的全新原生内存性能剖析器。


  • Android Performance Tuner 提供了用户遥测方案。借助 Android Performance Tuner,您可以查看游戏不同部分的具体表现,以及游戏在不同设备上的表现。您可能已在使用该工具监控帧率,而现在我们将加入全新的加载时间监控功能。您可以在关于 Android Performance Tuner 的精彩视频中了解详情:

△ 规划并优化您的游戏,在 Google Play 获得更大成功
  • Android GPU Inspector
    https://developer.android.google.cn/agi

  • 一套用于系统、功耗和 CPU 的性能剖析器 (Android Profiler)
    https://developer.android.google.cn/studio/profile/android-profiler

  • Android Performance Tuner
    https://developer.android.google.cn/games/sdk/performance-tuner


您可以访问官方文档,获取有关 Android 游戏开发的最新资源,以及下载 AGDK。也可以查看视频合集,了解 2021 Google 游戏开发者峰会的全部会议内容。同时,欢迎您持续关注 "谷歌开发者" 和 "Android 开发者" 官方微信公众账号,随时获取最新的 Android 游戏开发资源。


  • 官方文档

    https://developer.android.google.cn/games/agdk

推荐阅读

如页面未加载,请刷新重试

 点击屏末 | 阅读原文 | 即刻体验 Android 游戏开发工具包



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存