【GameMaker】安卓导出设置

在这篇文章中,我们将介绍设置Android(同时支持Amazon Fire设备和商店发布)所需的步骤。

你必须始终使用Required SDKs FAQ中建议的特定版本,并且不要假设比我们列出的版本更新的工具会更好,因为使用比GameMaker支持的版本更新的SDK很可能会导致构建失败,而如果你遵循本指南,这些失败是可以轻松避免的。

在按照以下Android Studio的截图操作时,请确保你使用的是从另一个FAQ中获取的版本,而不是直接复制此处图片中显示的值。

概述

在您的PC或Mac上安装并运行GameMaker后,您可以使用目标管理器窗口为Android构建项目。该窗口通过点击主窗口右上角的“目标”按钮打开:

在这里插入图片描述

在目标平台中,您可以看到有两个输出选项:

  • VM - 这将使用解释型代码构建您的游戏。
  • YYC - 这将使用编译后的原生代码构建您的游戏。

VM选项将构建您的游戏,并在一个特殊的YoYo Runner中使用解释型代码运行。此目标的性能不如YYC优化,但编译速度更快,并且支持在调试模式下运行。而YYC目标则能显著提升性能,尤其是对于逻辑复杂的游戏,但大型项目可能需要较长的编译时间,并且无法使用调试器。

无论您选择哪种输出方式,在继续之前,您都需要在开发计算机上安装一些额外的构建工具……

安装 Android Studio

关于您需要安装的 Android Studio 版本,请参阅 Required SDKs FAQ - 不要直接安装最新版本!

要开始使用您的 Android/Amazon 设备进行开发,您需要下载并安装 Android Studio。点击安装程序后,系统会要求您选择组件:

在这里插入图片描述

AVD(安卓虚拟设备)支持是完全可选的,且会占用大约1GB的存储空间。因此,如果您确定不会使用模拟器,建议取消勾选此选项(我们不会为使用模拟器时遇到的问题提供技术支持,仅支持在真实设备上运行的问题)。

选择您希望安装的位置(默认位置即可),是否添加快捷方式取决于您的个人偏好。

等待安装程序完成,安装结束后 Android Studio 将自动启动。

设置您的 SDK 安装文件夹

如果您是 Android 开发的新用户,那么您首先会看到的是一个略显复杂的界面(您可能会在此界面上方看到一个弹窗,询问是否愿意向 Google 发送分析数据——这取决于您的选择):

在这里插入图片描述

在此界面点击 Next,接下来系统会询问您要安装哪些组件以及安装位置:

在这里插入图片描述

对于上面高亮的 “Android SDK Location” 路径值,Google 的路径名称可能会变得非常长,并可能导致 Windows 的路径长度限制(256 个字符)问题。因此,我们强烈建议将 SDK 安装到尽可能靠近驱动器根目录的位置,并且不要使用任何空格,以避免在构建项目时出现错误。对于 Mac 和 Ubuntu IDE 用户,我们仍然建议使用简短且易于记忆的路径,但重要性相对较低。

  • Windows IDE 用户: 我们通常使用 C:\AndroidSDK\ 作为安装路径,但您也可以选择将 SDK 安装到其他驱动器(如截图所示)。
  • Mac 和 Ubuntu IDE 用户: 我们使用 ~/AndroidSDK/ 作为安装路径。

请注意,您不能直接通过文本字段编辑路径——您需要点击右侧的小文件夹按钮,然后导航到您希望的位置(如果需要,可以创建该文件夹)。

设置好较短的 SDK 安装路径后(如果是 PC),点击 Next,接受组件列表及其许可证,然后点击 Finish

最后,当您选择的组件下载并安装完成后,Android Studio 将很快启动。

完成/更新您的 SDK 安装

当 Android Studio 启动时,可能会有一个更新通知等待处理。请忽略此更新提示,因为我们将在指南中逐步安装所需的包。

在这里插入图片描述

相反,请点击 SDK Manager 选项,开始安装我们所需的工具:

在这里插入图片描述

这将打开一个窗口,您可以在其中选择并安装所需的 SDK 平台

在继续之前,请勾选 Hide Obsolete Packages(隐藏过时的包)和 Show Package Details(显示包详细信息)这两个复选框,因为您不需要下载 API 的所有内容来使其与 GameMaker 兼容。同样,稍后我们将选择特定的工具版本,这些版本可能不是列出的最新版本。

SDK Platforms 选项卡中,通常只需要安装 Required SDKs FAQ 中建议的一个 API 版本。但是,如果您的项目中使用了扩展,这些第三方 SDK 可能要求您稍后安装额外的包。

如上所述,请注意,对于每个您希望安装的 API,您只需要安装一个 “Android SDK Platform …” 部分,如下所示(以 Tiramisu 为例):

在这里插入图片描述

选择所需的 SDK 平台后,切换到 SDK Tools 选项卡,并确保您也在此处添加了合适的工具。

您可能会发现 Android Studio 的安装程序已经为您安装了最新的非 Beta 版 Android SDK Build Tools,因此您的安装界面可能如下所示:

在这里插入图片描述
不要安装带有任何 “-rc” 后缀的 Android 测试版(如上图中高亮显示的版本)。

同样,它可能已经安装了当前版本的 Android SDK Platform Tools

在这里插入图片描述

您可能还希望移除模拟器工具,正如我们在安装程序中建议的那样(如果您在安装时取消勾选了 AVD 设置,那么这些工具会占用不必要的磁盘空间……):

在这里插入图片描述

接下来,如果您希望进行任何 Android YYC 构建,还需要安装 Android NDK。因此,找到 NDK (Side by side) 组,并再次选择与 Required SDKs FAQ 中建议的版本匹配的条目——例如,这里我们将下载 NDK 25 版本:

在这里插入图片描述

完成后,点击 SDK Manager 底部的 Apply 按钮,确认更改,然后等待下载过程完成。

现在,您已经准备好设置 GameMaker 以进行 Android 开发——您可以关闭 SDK Manager 和 Android Studio,因为在 GameMaker 中工作时不需要运行这些工具。

请注意(除了 NDK 安装外),如果您没有在 SDK Manager 中安装所有必需的内容,每当您下次在 GameMaker 中尝试进行 Android 构建时,Android 的工具会尝试通过下载缺失的部分来“修复您的安装”。然而,我们不建议您依赖此功能,并且这可能不适合您的防病毒/防火墙设置。

同样,请注意,默认情况下 Gradle 会假定/需要互联网连接,并在每次 GameMaker 项目构建开始时执行更新检查并下载任何未安装的必需组件。我们建议您保持此功能启用,但如果需要,您可以在 Android Studio 中禁用它(当然,如果您开始发现项目构建失败,在联系我们之前,您应该手动更新 Gradle 并下载任何缺失的组件,以确认是否解决了问题):https://developer.android.com/studio/intro/studio-config#offline

如果出现下载失败的错误,请尝试按照这篇文章进行手动下载:https://blog.youkuaiyun.com/weixin_38858037/article/details/114907925

设置 GameMaker 的首选项

现在回到 GameMaker,您需要在 Preferences 中设置 Platform Settings 部分:

在这里插入图片描述

Android SDK 位置

输入或选择您在 Android Studio 中安装 SDK 的路径。

假设您确实使用了我们之前推荐的路径作为 SDK 安装路径,那么它应该是:

  • Windows: C:\AndroidSDK\
  • macOS: /Users/[您的 macOS 用户名]/AndroidSDK/

如果您之前选择了不同的安装位置,现在希望更改以匹配我们的建议,或者您只是需要提醒,可以在 Android Studio 的 SDK Manager 界面中查看或修改。

Android NDK 位置

Android Studio 始终将 NDK 安装到 SDK 安装位置的子文件夹中,因此请使用文件选择按钮找到此文件夹。

假设您确实使用了我们推荐的路径,那么它应该是:

  • Windows: C:\AndroidSDK\ndk\[版本号]\
  • macOS: /Users/[您的 macOS 用户名]/AndroidSDK/ndk/[版本号]/

Java JDK 位置

Android Studio 自带 OpenJDK 版本,这是 Google 构建工具唯一支持的 JDK 版本,因此请使用文件选择按钮找到此文件夹。

您不需要单独安装 Oracle 的 JDK,因此请不要仅仅因为“最新版本”而去获取 Oracle Java。 此外,Oracle 几年前更改了 Java 的许可协议,您可能需要在商业应用开发中为其支付费用,因此最好避免使用它,并坚持使用 Google 提供的安装……

同样,假设您确实使用了 Android Studio 安装程序推荐的默认路径,您的 JDK 将安装到:

  • Windows: C:\Program Files\Android\Android Studio\jbr
  • macOS: /Applications/Android Studio.app/Contents/jbr/jdk/Contents/Home

旧版 SDK 用户: 在 Electric Eel 版本之前,上述路径中的 “jbr” 文件夹名为 “jre”。因此,如果您使用的是 Electric Eel 之前的任何 Android SDK 版本,请在此路径中输入 “jre” 而不是我们上面显示的内容。同时请注意,如果您已经有一个 “jre” 文件夹,因为您在旧版 Android Studio 安装基础上安装了新版本 SDK,并且在安装 Android Studio 时保留了其默认安装路径,那么您必须删除该 “jre” 文件夹(不仅仅是里面的内容——整个文件夹!),否则在稍后尝试在 GameMaker 中进行构建时,Electric Eel 将无法找到您的 Java 可执行文件。

生成 Keystore 文件

现在,您可以向下滚动并创建您的 Keystore 文件。这是一个用于为所有 Android 应用程序签名的文件,因此请正确填写所有详细信息,*然后备份此文件以及用户名和密码的截图或其他记录*

我们建议您为您的组织创建一个单一的 keystore 文件,并在所有项目中使用此文件,而不是为每个项目生成单独的 keystore。

在创建 keystore 文件时,您需要提供以下详细信息:

  • 文件名 - 由 GameMaker 自动填充,显示 keystore 的位置(除非您要导入现有的 keystore 文件,否则无需填写此字段)。
  • 密码 - 您希望用于 keystore 文件本身的密码,长度必须至少为六个字符。
  • 别名 - 这是 keystore 的“用户”名称,可以与上面的名称字段不同。
  • 别名密码 - 此密码需要与上面的密码相同,这是 Google 工具的要求。

其他所有字段都是可选的,GameMaker 不会使用它们,但如果您希望填写:

  • 通用名称 - 通常是您的全名或其他标识符。
  • 组织单位 - 您所在公司内的部门名称。
  • 组织 - 您的公司名称。
  • 位置 - 您所在的城市或城镇名称。
  • 国家/地区 - 您所在国家/地区的两字母代码

请注意,所有名称必须仅包含字母、数字和空格——不能包含其他“特殊”字符!

填写完此信息并确认无误后,点击标记为“生成 Keystore”的按钮,GameMaker 将创建必要的 keystore 文件。这可能需要一些时间,然后您应该看到密钥字段已自动填充。

您可以忽略有关 keystore 格式过时的任何警告,并且请勿使用外部工具“升级”您的 keystore。

现在,您可以点击 Apply/OK,设置完成。

导入现有的 Keystore

如果您已经有一个现有的 Keystore 文件,只需将 GameMaker 指向该文件,并按照首次生成时的详细信息填写上述必填字段。

这次不要点击 生成 Keystore 按钮,而是点击 显示密钥哈希 以确认一切正常,然后点击 Apply/OK

Keystore 文件的规范确实允许您在单个 keystore 文件中包含多个用户(“别名”)。GameMaker 不支持以这种方式创建 keystore,但如果您导入的 keystore 中已经包含多个别名,则只需提供主密码和您希望使用的别名的详细信息。

设置您的 Android 设备

在目标管理器窗口中,您可以看到一个标记为 Devices 的部分,旁边有一个小的“铅笔”图标:

在这里插入图片描述

点击此图标将打开 Android 设备管理器,您可以在其中添加一个或多个 Android 设备,以便在运行和构建 Android 平台项目时使用。

为了让 GameMaker 检测到您的设备,必须首先使用 USB 数据线将其连接到 PC 或 Mac,并且必须启用 开发者模式和 USB 调试。在 Mac 上,您还需要安装 Android 文件传输应用

设备连接后,点击 检测设备 应会自动检测到设备并将其添加到已连接设备列表中:

在这里插入图片描述

如果您在 GameMaker 检测设备时遇到问题,或遇到其他连接问题,请参阅 Android 故障排除 文章。

完成后,您可以点击 测试连接 按钮,如果 Android 设备可见并通过 USB 正确连接,则应显示“连接成功!”:

在这里插入图片描述

设置您的游戏选项

与其他一些目标平台不同,在测试游戏之前,您需要在 Game Options > Android 中设置一些内容,即初始的 构建设置

在这里插入图片描述

GameMaker 允许您选择性地针对特定版本的 Android,这主要是由于 Android 操作系统在设备上的碎片化特性以及某些扩展需要不同的 SDK 或构建工具。对于一个“纯净”项目(即没有扩展或额外要求的项目),您只需在此部分顶部的下拉菜单中选择已安装的最新 API 级别即可,这是您在此处需要做的全部工作。

(请注意,此下拉菜单将显示所有 API,包括您在本指南中安装的最新版本,但如果您按照本指南的指示操作,您可能只安装了一两个 API,因此请谨慎选择。)

如果您需要自定义任何其他字段,请始终参考您在 Android Studio 中实际安装的内容,并从那里获取版本号。

  • Build Tools 值:如果您选择了 API 30 或更高版本,您会看到此字段留空,因为 Google 已更改此设置,您只需指定 Compile SDK 值,Android SDK 会自动确定您需要的正确构建工具。如果您使用 API 30+ 进行编译,则在此处输入的任何版本都将被 Google 的工具忽略。如果您针对的是 API 低于 30 的 Android,则会为您设置合适的构建工具值。
  • Compile SDK 版本是项目编译所针对的 API 版本。这意味着您可以使用该 API 版本中包含的 Android API 功能——例如,如果您尝试在游戏中使用 API 28 的功能,但仅将 Compile SDK 设置为 26,则会出现编译错误。请注意,如果您设置了较新的版本,通常仍然可以在较旧的 API 设备上运行应用程序。
  • Target SDK 与应用程序的编译方式或您可以使用的 API 无关。Target SDK 表示您已在(包括)指定版本上测试了您的应用程序。这只是为了让 Android 操作系统了解应如何处理您的应用程序的操作系统功能。出于所有实际目的,大多数应用程序都会希望将 Target SDK 设置为 API 的最新发布版本(与 Compile SDK 设置使用的版本相同)。这将确保您的应用程序在最新的 Android 设备上尽可能正常运行。
  • Minimum SDK 版本是运行您的项目所需的最低 API 级别。GameMaker 设置的默认值通常是可以的,但如果您添加了扩展,则它们可能需要更高的最低 API 级别,因此您需要在此处提高该值。

如果您只是测试项目,则无需在此处提供更多信息,因此您可以关闭游戏选项并继续。

在 Android 设备上测试

完成上述部分并准备好测试项目后,您可以打开目标管理器并选择要使用的 目标输出设备 选项:在这里插入图片描述

然后,您可以点击 GameMaker IDE 中的“播放”按钮来编译项目并将其推送到您的测试设备。

请注意,第一次尝试测试 Android 游戏时,Google 的编译工具可能需要连接到互联网以下载额外的文件和工具,这可能会触发防火墙警报——如果发生这种情况,您应该允许连接,否则构建将失败。这是正常现象,如果您正确遵循了上述指南,这种情况只会在首次使用这些 SDK 值构建时发生。

请注意Gradle(相关的 Google 工具)在您进行 Android 构建时,如果当时在线,会偶尔检查其自身的更新。

如果一切顺利,您应该很快就能看到您的游戏项目在目标设备上运行!

<think>好的,我现在需要处理用户关于GameMaker游戏开发引擎的查询。首先,用户提供了几个系统级指令,要求使用正确的中文回答,生成相关问题,并引用给定的参考资料。我需要仔细分析用户的需求,并确保回答符合所有要求。 首先,用户希望了解GameMaker的总体介绍。根据提供的引用内容,我需要整合各个引用的信息,确保涵盖物理引擎、高级动作系统、保存与读取功能,以及资源管理等方面。同时,要使用正确的LaTeX格式,虽然这里可能数学公式较少,但需要注意行内和独立公式的格式。 接下来,我需要检查每个引用的内容。引用[1]提到物理引擎基于Box2D,引用[2]讨论高级动作系统,引用[3]关于保存与读取进度,引用[4]涉及资源管理。这些部分应该构成回答的主要结构:核心功能、资源管理、脚本系统、物理引擎、保存功能,以及跨平台支持。 然后,生成相关问题。需要根据回答的内容提出相关问题,确保问题与引用内容相关,比如性能优化、物理引擎应用、保存功能实现等。同时,引用标识需要自然地添加在相关段落末尾,例如在提到物理引擎时引用[^1],高级动作系统引用[^2]等。 需要注意回答的结构要清晰,分点列出,帮助用户逐步了解GameMaker的特点。同时,确保语言流畅,使用中文,避免使用Markdown格式,但用户提供的示例中使用了代码块,因此可能需要适当调整,但根据用户指令,用户可见层需要结构清晰,所以可能需要使用标题和分点。 最后,验证是否所有引用都被正确使用,并且问题部分涵盖了回答中的关键点。确保没有遗漏任何用户提供的引用信息,同时保持回答的真实性和可靠性。</think>### GameMaker游戏开发引擎介绍 GameMaker Studio(现更名为GameMaker)是一款面向2D游戏开发的跨平台引擎,以其**低门槛、高效开发流程**和**内置功能模块**著称,适合独立开发者和教育领域使用。以下从核心功能、资源管理、物理引擎等方面进行介绍: --- #### 一、核心功能与开发特点 1. **可视化编程与GML语言** 提供拖拽式可视化编程接口(DnD),同时支持自研脚本语言**GameMaker Language (GML)**,允许开发者根据需求选择编程方式。例如,物理引擎的碰撞检测可通过简单配置实现[^1],复杂逻辑则可用GML编写。 2. **资源管理系统** 游戏资源(如图片、音频、字体)统一存储在`data.win`文件中。需注意:在YYC编译模式下,脚本和文本内容会被编译为二进制,无法直接查看[^4]。 3. **跨平台发布** 支持导出至Windows、macOS、Linux、HTML5、移动端(iOS/Android)等多个平台,极大扩展了游戏受众。 --- #### 二、物理引擎与动作系统 1. **基于Box2D的物理模拟** 内置物理引擎基于**Box2D**,提供刚体动力学、碰撞响应、关节约束等功能。开发者可通过配置物理属性(密度、摩擦力)和施加力/冲量实现真实交互[^1]。 $$F = m \cdot a \quad \text{(经典力学公式应用于物理对象)}$$ 2. **高级动作系统** 支持平滑移动、路径跟随等复杂运动逻辑。例如,通过插值算法实现角色移动的流畅过渡[^2]: ```python # 伪代码:线性插值实现平滑移动 current_position = lerp(start_pos, target_pos, t) ``` --- #### 三、数据持久化与扩展 1. **游戏进度保存** 使用`ini`文件或二进制格式存储玩家数据,支持关键游戏状态的序列化与反序列化操作[^3]。例如: ```gml // 保存分数示例 ini_open("save.ini"); ini_write_real("Player", "Score", global.score); ini_close(); ``` 2. **扩展性与社区支持** 提供市场(Marketplace)下载插件和资源包,可快速集成第三方功能(如成就系统、广告模块)。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值