GameMaker Studio (GMS) 是一个广受欢迎的 2D 游戏开发引擎,由 YoYo Games 开发。它提供了用户友好的界面和强大的脚本语言(GML,GameMaker Language),使得即使是初学者也能轻松上手开发游戏。GMS 支持多种平台,包括 Windows、macOS、Linux、HTML5、iOS、Android 和更专业的平台如 PlayStation、Xbox 和 Nintendo Switch。
2.1.1 为什么选择 GameMaker Studio
-
用户友好的界面:GameMaker Studio 提供了一个直观的拖放界面,使得游戏开发变得简单易懂。
-
强大的脚本语言:GML 是一种易学且功能强大的脚本语言,适合从初学者到高级开发者的各种需求。
-
跨平台支持:开发一次,即可轻松发布到多个平台,大大节省了开发时间和成本。
-
丰富的资源和社区:GMS 拥有庞大的用户社区和丰富的资源库,提供了大量的教程、模板和插件。
-
商业友好:GMS 提供了多种定价模式,包括免费版和专业版,适合个人开发者和小型团队。
2.1.2 GameMaker Studio 的主要功能
-
资源管理:GMS 提供了强大的资源管理器,可以轻松管理游戏中的所有资源,如精灵、声音、背景等。
-
事件系统:通过事件系统,可以轻松地为游戏对象添加各种行为和逻辑。
-
脚本编辑:GMS 内置了代码编辑器,支持语法高亮和智能提示,方便编写 GML 脚本。
-
调试工具:提供了丰富的调试工具,包括断点、日志记录和性能分析,帮助开发者快速定位和解决问题。
-
可视化编程:对于不熟悉代码的用户,GMS 提供了可视化编程工具,通过拖放动作来实现游戏逻辑。
-
多平台发布:支持多种平台的发布,包括桌面、移动和网页平台。
2.2.1 安装前的准备
在安装 GameMaker Studio 之前,确保你的计算机满足以下最低系统要求:
-
操作系统:Windows 7 或更高版本(64 位),macOS 10.13 或更高版本
-
处理器:1 GHz 或更快的处理器
-
内存:2 GB RAM 或更多
-
硬盘空间:1 GB 可用空间
-
显卡:支持 DirectX 9.0c 的显卡
2.2.2 下载 GameMaker Studio
-
访问官方网站:打开浏览器,访问 GameMaker Studio 的官方网站 https://YoYoGames.com。
-
选择版本:根据你的需求选择合适的版本,比如免费版或专业版。
-
下载安装包:点击下载按钮,下载适合你操作系统的安装包。
2.2.3 安装步骤
2.2.3.1 Windows 安装
-
运行安装包:双击下载的安装包,启动安装程序。
-
接受许可协议:阅读并接受许可协议。
-
选择安装路径:选择一个合适的安装路径,点击“下一步”。
-
选择组件:根据需要选择安装的组件,例如核心组件、资源管理器等。
-
完成安装:点击“安装”按钮,等待安装过程完成。
2.2.3.2 macOS 安装
-
运行安装包:双击下载的 文件,挂载安装镜像。
-
拖动应用:将 GameMaker Studio 拖动到“应用程序”文件夹。
-
启动应用:在“应用程序”文件夹中双击 GameMaker Studio 启动应用。
-
接受许可协议:阅读并接受许可协议。
-
完成安装:点击“继续”按钮,等待安装过程完成。
2.2.4 注册与激活
-
创建账户:在启动 GameMaker Studio 后,点击“创建账户”按钮,按照提示完成注册。
-
登录账户:注册完成后,使用你的账户登录 GameMaker Studio。
-
激活许可证:如果你购买了专业版,需要输入许可证密钥进行激活。
-
选择工作区:登录后,选择一个合适的工作区,例如个人或团队。
2.2.5 验证安装
-
启动 GameMaker Studio:确保安装完成后可以正常启动 GameMaker Studio。
-
创建新项目:点击“创建新项目”按钮,选择一个模板,例如“空白项目”。
-
运行示例项目:点击“运行”按钮,验证 GameMaker Studio 是否可以正常编译和运行项目。
2.3.1 项目创建流程
-
启动 GameMaker Studio:打开 GameMaker Studio 应用。
-
选择“创建新项目”:在主界面中点击“创建新项目”按钮。
-
选择项目模板:选择一个合适的项目模板,例如“空白项目”。
-
配置项目设置:在项目设置中,输入项目名称、保存路径等信息。
-
创建项目:点击“创建”按钮,生成新的项目文件。
2.3.2 项目结构概览
创建项目后,你会看到以下主要文件夹和文件:
-
Sprites:用于存储游戏中的精灵资源。
-
Sounds:用于存储游戏中的音效和音乐资源。
-
Backgrounds:用于存储游戏背景图像。
-
Paths:用于存储路径资源,例如角色的移动路径。
-
Scripts:用于存储游戏逻辑脚本。
-
Objects:用于存储游戏对象,例如玩家、敌人、道具等。
-
Rooms:用于存储游戏房间,每个房间可以看作是一个独立的关卡或场景。
-
Extensions:用于存储扩展资源,例如第三方插件。
-
Datafiles:用于存储数据文件,例如配置文件、文本文件等。
2.3.3 添加资源
2.3.3.1 添加精灵
-
创建精灵:在“Sprites”文件夹中右键点击,选择“创建精灵”。
-
导入图像:点击“导入”按钮,选择一个图像文件(例如 PNG 格式)。
-
配置精灵属性:在精灵属性面板中,配置精灵的帧数、速度、碰撞箱等属性。
2.3.3.2 添加音效
-
创建音效:在“Sounds”文件夹中右键点击,选择“创建音效”。
-
导入音效文件:点击“导入”按钮,选择一个音效文件(例如 WAV 格式)。
-
配置音效属性:在音效属性面板中,配置音效的音量、循环等属性。
2.3.3.3 添加背景
-
创建背景:在“Backgrounds”文件夹中右键点击,选择“创建背景”。
-
导入背景图像:点击“导入”按钮,选择一个背景图像文件(例如 PNG 格式)。
-
配置背景属性:在背景属性面板中,配置背景的尺寸、平铺方式等属性。
2.3.4 创建对象
-
创建对象:在“Objects”文件夹中右键点击,选择“创建对象”。
-
配置对象属性:在对象属性面板中,配置对象的名称、碰撞属性等。
-
添加事件:点击“添加事件”按钮,选择一个合适的事件类型,例如“创建事件”或“键盘按键事件”。
-
编写脚本:在事件编辑器中,使用 GML 编写对象的行为逻辑。
2.3.5 编写第一个脚本
2.3.5.1 示例:创建一个简单的玩家对象
-
创建玩家对象:在“Objects”文件夹中右键点击,选择“创建对象”,命名为 。
-
添加创建事件:点击“添加事件”按钮,选择“创建事件”。
-
编写创建事件脚本:
-
添加键盘按键事件:点击“添加事件”按钮,选择“键盘按键事件”,选择上下左右键。
-
编写键盘按键事件脚本:
2.3.6 创建房间
-
创建房间:在“Rooms”文件夹中右键点击,选择“创建房间”,命名为 。
-
配置房间属性:在房间属性面板中,配置房间的尺寸、背景等属性。
-
添加对象实例:在房间编辑器中,点击“添加对象实例”按钮,选择 ,将其放置在房间中。
2.3.7 运行项目
-
保存项目:点击“文件”菜单,选择“保存”或使用快捷键 保存项目。
-
运行项目:点击“运行”按钮,选择一个运行目标,例如“Windows 桌面”。
-
测试游戏:观察游戏是否正常运行,玩家对象是否可以响应键盘按键并移动。
2.4.1 项目设置
-
打开项目设置:点击“文件”菜单,选择“项目设置”。
-
配置基本设置:在“基本设置”选项卡中,配置项目的基本信息,例如项目名称、版本号等。
-
配置游戏选项:在“游戏选项”选项卡中,配置游戏的分辨率、窗口模式、全屏选项等。
2.4.2 资源设置
-
配置精灵:在“Sprites”文件夹中选择一个精灵,配置其属性,例如帧数、速度、碰撞箱等。
-
配置音效:在“Sounds”文件夹中选择一个音效,配置其属性,例如音量、循环等。
-
配置背景:在“Backgrounds”文件夹中选择一个背景,配置其属性,例如尺寸、平铺方式等。
2.4.3 脚本设置
-
创建脚本:在“Scripts”文件夹中右键点击,选择“创建脚本”。
-
编写脚本:在脚本编辑器中编写 GML 脚本,例如一个简单的碰撞检测脚本:
- 调用脚本:在对象的事件中调用该脚本,例如在 的“步进事件”中调用:
2.4.4 调试与测试
-
启动调试模式:在“运行”菜单中选择“调试”选项,启动调试模式。
-
设置断点:在脚本编辑器中,点击行号左侧的空白处设置断点。
-
查看日志:在调试控制台中查看运行日志,帮助定位问题。
-
性能分析:使用内置的性能分析工具,检查游戏的运行效率和瓶颈。
2.5.1 安装问题
-
安装失败:确保你的计算机满足系统要求,关闭所有可能干扰安装的程序,重新下载安装包。
-
许可证激活失败:检查网络连接,确保输入的许可证密钥正确无误,联系 YoYo Games 支持团队获取帮助。
2.5.2 运行问题
-
游戏无法运行:检查项目文件是否保存完整,确保所有资源路径正确无误。
-
性能问题:使用性能分析工具检查游戏的运行效率,优化资源和脚本。
-
调试信息不显示:确保调试模式已启用,查看调试控制台中的日志信息。
2.5.3 资源问题
-
资源无法导入:确保资源文件格式正确,检查文件路径是否正确。
-
资源显示异常:在资源属性面板中检查资源的尺寸、帧数等属性,确保配置正确。
-
资源丢失:检查项目文件夹中的资源文件是否完整,重新导入丢失的资源。
2.5.4 脚本问题
-
语法错误:确保 GML 脚本语法正确,使用代码编辑器中的语法高亮和智能提示功能。
-
逻辑错误:使用调试工具逐步运行脚本,检查变量值和逻辑流程。
-
性能问题:优化脚本中的循环和条件判断,减少不必要的计算。
2.6.1 创建一个简单的弹球游戏
-
创建项目:按照 2.3 节的步骤创建一个新项目。
-
添加资源:导入弹球的精灵、背景和音效。
-
创建对象:创建弹球对象 和墙壁对象 。
-
编写脚本:
- 弹球对象脚本:
- 墙壁对象脚本:
-
创建房间:创建一个房间 ,添加弹球对象和墙壁对象的实例。
-
运行项目:点击“运行”按钮,测试弹球游戏的运行效果。
2.6.2 创建一个简单的射击游戏
-
创建项目:按照 2.3 节的步骤创建一个新项目。
-
添加资源:导入玩家精灵、敌人精灵、子弹精灵和背景音效。
-
创建对象:创建玩家对象 、敌人对象 和子弹对象 。
-
编写脚本:
- 玩家对象脚本:
- 子弹对象脚本:
- 敌人对象脚本:
-
创建房间:创建一个房间 ,添加玩家对象、敌人对象和子弹对象的实例。
-
运行项目:点击“运行”按钮,测试射击游戏的运行效果。
2.7.1 高级项目设置
-
配置签名:在“项目设置”中的“签名”选项卡中,配置 APK 和 iOS 的签名信息。这对于发布到 Android 和 iOS 等移动平台是必要的,确保你的应用可以被正确地识别和安装。
-
配置构建选项:在“项目设置”中的“构建选项”选项卡中,可以配置各种构建选项,例如是否包含调试信息、是否压缩资源文件等。这些选项有助于优化最终发布的游戏性能和大小。
2.7.2 配置多平台发布
-
选择目标平台:在“项目设置”中的“目标”选项卡中,选择你希望发布的平台,例如 Windows、HTML5、iOS、Android 等。
-
配置平台特定设置:每个平台都有其特定的设置选项,例如:
-
Windows:配置图标、启动画面、窗口模式等。
-
HTML5:配置预加载资源、画布大小、是否支持触控等。
-
iOS:配置应用图标、启动画面、设备支持等。
-
Android:配置应用图标、启动画面、权限等。
-
-
生成构建文件:配置完成后,点击“生成”按钮,生成适用于目标平台的构建文件。
2.7.3 使用扩展资源
-
导入扩展:在“Extensions”文件夹中右键点击,选择“导入扩展”,选择你下载的 或 文件。
-
配置扩展:导入扩展后,可以在“Extensions”文件夹中看到扩展的详细信息和配置选项。根据扩展的文档进行配置。
-
使用扩展功能:在脚本或事件中调用扩展提供的函数或资源。例如,使用广告插件的函数来显示广告:
2.7.4 优化性能
-
减少资源占用:优化精灵、背景和音效的文件大小,使用适当的压缩格式,例如 PNG 或 JPEG。
-
减少脚本复杂度:优化脚本中的循环和条件判断,减少不必要的计算。
-
使用对象池:对于频繁创建和销毁的对象,使用对象池技术来提高性能。例如,子弹对象:
- 使用性能分析工具:在“调试”菜单中选择“性能分析”选项,启动性能分析工具。检查游戏的运行效率和瓶颈,优化代码和资源。
2.7.5 高级调试技巧
-
使用调试断点:在脚本编辑器中,点击行号左侧的空白处设置断点。运行调试模式时,程序会在断点处暂停,方便检查变量值和逻辑流程。
-
查看调试日志:在调试控制台中查看运行日志,帮助定位问题。可以使用 函数在控制台中输出调试信息:
- 使用调试器:GameMaker Studio 提供了一个强大的调试器,可以逐行执行代码、查看变量值、调用堆栈等。在调试模式下,使用调试器的“步进”、“继续”、“停止”等功能进行调试。
通过本章的学习,你已经了解了 GameMaker Studio 的基本功能和安装步骤,创建了第一个简单的项目,并掌握了如何添加资源、编写脚本、创建房间和运行项目。此外,我们还介绍了如何进行高级项目设置、配置多平台发布、使用扩展资源、优化性能和高级调试技巧。希望这些内容能帮助你更好地使用 GameMaker Studio 开发 2D 游戏。
2.8.1 进一步学习
-
官方文档:访问 GameMaker Studio 的官方文档,了解更多详细的功能和使用方法。
-
在线教程:在 YouTube、Bilibili 等视频平台上搜索 GameMaker Studio 的教程,跟随教程逐步学习。
-
社区资源:加入 GameMaker Studio 的用户社区,如官方论坛、Reddit、Discord 等,获取更多资源和帮助。
2.8.2 实战项目
-
创建一个横版平台游戏:尝试创建一个包含多个关卡的横版平台游戏,添加敌人、道具、关卡设计等。
-
创建一个 RPG 游戏:尝试创建一个简单的角色扮演游戏,包含角色属性、战斗系统、道具系统等。
-
创建一个益智游戏:尝试创建一个益智类游戏,例如扫雷或俄罗斯方块,练习逻辑和算法的编写。