作者 / Android DevRel 技术主管经理 Wayne Lu
咱们在 7 月公布了 Android 游戏开发工具包 (AGDK),并收集了一些开发者提出的热门问题,包含 AGDK 库和工具、Android 内存优化以及绘制图形等。
AGDK 和游戏引擎
首先,晚期新兴的游戏开发者向咱们发问如何应用此套 AGDK 库和工具。咱们给出如下倡议,具体则取决于您的设置:
- 如果您应用的是 Defold、Godot、Unity 或 Unreal 等 热门游戏引擎,您能够依据咱们的指南,学习如何在 Android 上开发利用。应用这些游戏引擎可助您专一于构建游戏玩法而非整个技术栈。
- 如果您应用 Unreal 引擎且针对多个平台 (例如 PC 或主机),Android 游戏开发工具扩大包 (AGDE) 可能会对您的工作流程起到很好的补充成果。
- 咱们还为想要自定义和编写本人游戏引擎的开发者提供反对,您可通过咱们的 C 或 C++ 文档 理解详情。
抉择游戏引擎和工作流程之后,您能够进一步钻研咱们的工具,例如可查看游戏的 Android Studio 性能分析器、可剖析图形的 Android GPU Inspector 以及可优化帧率和加载工夫的 Android Performance Tuner。
游戏模式 API 和干涉
之后,咱们收到了对于针对 Android 12 进行开发的问题。您无需为在 Android 12 上运行游戏进行任何非凡操作,咱们引入了 游戏模式 API 和干涉,以帮忙玩家自定义其游戏体验。
- 您能够浏览更多对于 游戏模式 API 的内容,理解如何在用户抉择相应的游戏模式时优化游戏,以获得最佳性能或最长电池续航工夫。
- 您能够理解更多 游戏模式干涉,这些干涉由原始设施制造商 (OEM) 设置,以改善那些不再被开发商更新的游戏的性能。例如: 调整 WindowManager 后盾缓冲区的大小,以缩小设施的 GPU 负载。
Android 的内存拜访
其次,有开发者问到在 Android 与 Windows 中进行游戏开发时,内存拜访工作原理的异同。简而言之,要点如下:
- 游戏须要与零碎共享内存。一些设施的可用内存比其余设施少,因而须要发展测试,以查看一系列受反对的设施是否存在内存不足问题。测试应在用户已装置典型利用的设施 (即非全新设施) 上发展。
- 游戏可调配的内存 大小取决于各种因素,例如物理内存量、脏页数和 zRam (用于压缩替换) 总量。
- 内存不足可能体现为 onTrimMemory() 调用、内存抖动或 低内存终止守护过程 (Low Memory Killer) 终止游戏。您能够应用 bugreport 日志查看低内存终止守护过程 (Low Memory Killer) 是否已终止游戏,或者在 Android 11 及更高版本中查看 ApplicationExitInfo,以查看游戏是否因 REASON_LOW_MEMORY 而终止。
- 防止 内存抖动: 当内存较低但又不足以终止游戏时会产生这种状况。您能够通过 零碎跟踪 检测到这一状况,且应该通过缩小整体内存占用以防止此问题。
- 应用 Android 性能分析器 和 其余工具 查看内存应用状况。
在 Android 中绘制图形
第三,咱们收到了无关如何在 Android 中绘制图形的问题。您能够借助以下选项实现此指标: OpenGL ES 或 Vulkan 图形 API:
- 理解如何通过初始化变量以及应用游戏循环、场景和对象进行渲染,为 C++ 游戏引擎 配置 OpenGL ES 图形。
- 浏览咱们的 Vulkan 指南,理解如何绘制立方体、编译着色器、设置验证层及其他最佳实际。
您能够观看 问答视频 查看无关 AGDK 的热门问题,也能够拜访 Android 官方网站 获取无关 Android 游戏开发的最新资源。
欢迎您 点击这里 向咱们提交反馈,或分享您喜爱的内容、发现的问题。您的反馈对咱们十分重要,感谢您的反对!