β

GameMaker Studio 2 初体验

引言

这篇文章将简要为大家介绍 GameMaker Studio 2 这款引擎(后文简称为 GMS2)。它是 yoyogames 出品的 GameMaker Studio 系列引擎的最新一代。经常访问 indienova 的读者朋友应该不会对 GameMaker Studio 这个系列的引擎感到陌生,大家熟知的经典独立游戏名作 Nuclear Throne,Undertale、Downwell、Hyper Light Drifter,Crashlands、Hotline Miami,Nidhogg 等等都是利用这款引擎完成的。GMS2 定位则依然和前代保持一致,是一款上手简单,功能强大,适合个人或者小型团队开发 2D 游戏的优秀引擎。

这款软件于2016年11月2号正式公布并开始 beta 内测,正式版本则于上周四,也就是2017年3月9日发布,同步也上架了 steam 版本。本软件采取买断制销售,目前不带移动端和网页端导出功能的桌面基本版官网售价 99 美元,steam 版本国区则仅售人民币 249 元,加上针对一代用户的 40% 折扣优惠,仅需人民币 149 元即可购入。由于 steam 版购入后也能同时获得官网版本,因此对国内用户来说,目前最优惠的购买方案即是从 steam 版本购入。如果没有用过一代无法享受折扣优惠,可以委托拥有一代的朋友购买成礼物,同样能享受折扣优惠。steam 版也需要绑定 yoyogames 帐号登录,在上周刚刚发布时由于使用了某不存在网站的验证导致国内用户难以正常登录,官方已经及时解决了这个问题,目前应该没有这方面的困难。

我也选择在这个时机入手并尝试了这款软件,结合官方分享的资料,希望能为那些想要稍微尝试或者将其作为开发工具的读者朋友提供一些参考。

后文有很多对比是相对一代来说的,如果对 GMS 尚无认知,可以参考 这里

概述

GMS2 相比一代并非简单的功能升级,虽然沿袭了一代的许多特点,并且向上兼容一代项目,但基本上可以认为它是一款全新的引擎。相比主流的商业通用引擎 Unity 或者 UE 来说,GMS2 并不能用来开发次世代画面的3D大作,它虽然提供了简陋的 3D 支持,但主要还是专注于 2D 游戏开发。它提供了一整套方便实用的编辑工具,几乎不对开发者暴露技术的实现细节,而是希望开发者专注于游戏玩法,快捷高效地将自己的创意转变成游戏作品。对于开发2D游戏的个人或者小型开发团队来说, GMS 是非常高效的生产力工具

相比一代显著的改善

GMS2 作为沿袭 GMS 的进化产品,依然使用内置的 GML 编程语言,熟悉一代的开发者能够非常快速地上手使用这款引擎。GMS 在许多方面都有着显著的进步。

界面是最为显而易见的变动:

相比一代其貌不扬的界面,GMS2 的 UI 在视觉方面有非常大的提高,简约大方,很有科技感。布局也合理了许多,很容易找到想要的功能,对初学者十分友好:资源树位于右侧,一目了然;工作空间中的各种资源以链式线框图的形式组织显示,非常直观清晰;新开编辑器会以标签页的形式展示,而不是出现一大堆相互重叠,难以管理的窗口。
firstlook
New_Features_Chaining

将 GMS1 中分裂的图形化编程和代码编程方式有机融合:

在许多不太了解 GMS 的人眼中,GMS 更像是一款玩具而非生产力工具,其中主要的原因之一就在于它拥有一套面向新手的拖拽放置式图形化编程工具。GMS 提供了一些颇为实用但却不那么灵活方便的内置功能,能够让初学者积木式地快速搭建简单的游戏功能。而对进阶的开发者,则可以使用 GML 进行开发。问题症结在于两种开发模式的分裂。习惯全面掌握项目实现细节的开发者会倾向于避免使用内置函数,而使得这套本来非常强大的图形化编程工具显得鸡肋而无意义。GMS2 则在这方面进行了巨大的革新,它允许图形化编程和代码编程实时同步地相互转换,并且废弃了一些过于鸡肋的内置函数。配合多编辑器同步更新的资源编辑工具和全面优化的工作空间,大大改善了 GMS 项目开发的工作流程。另外,图形化编程模式改为类似 UE 蓝图的线框图形式,更加灵活方便。
dnd2code

内置编辑工具有着显著的改善和进步:

一代尽管内置了一整套开发工具,但很多工具功能比较鸡肋,在实际开发时最佳方案还是结合外部工具来使用,但 GMS2 却在这些方面提交了一份令人满意的答卷。
  • 资源树被精简,原来的背景(background)和瓷砖(tileset)都被合并到了精灵(sprite)类型中,统一了处理逻辑,减轻了不少心智包袱;
  • 全面基于图层的地图编辑器(room editor)的进步非常显著,功能层级更加合理,并且允许开发者制作实用的瓷砖笔刷来快速地编辑地图。而地图能够继承的特性则让快速编辑大量关卡成为可能;
    mapeditor
    Room_Editor_Inheritance
  • 内置的精灵(spriter)编辑器不再鸡肋,基于图层,能够实时预览动图,足以胜任制作简单的像素动画。
    animation

性能的显著进步:

GMS2 从一代的 DirectX9 迁移到了 DirectX11,性能据说有 20% 的提升,GMS 官方论坛有人专门针对性能进行了测试,详细可以参考 这里

跨平台支持更加完善:

GMS提供的各种方法原生支持各个平台,大大减少了多平台开发的难度。目前支持 Windows,Mac,Linux,iOS,Andriod 等多个平台。各个平台支持的软件不再以基本版配合DLC的形式发布,而是需要单独购买。引言中所指的特惠版本指 Desktop 版,支持 Windows,Max 和 Linux 平台的打包导出,移动平台,UWP版,网页版导出则需要购买单独软件,我想吐槽的是面向移动端的版本售价远高于桌面版本,好处则是:如果专注开发移动版本,也无需单独购买桌面版,它们都是各自独立的软件。官网中标注支持PlayStation和Xbox平台,但并无单独的版本发布,可能需要专门联系 yoyogames 索取技术支持。
buybuybuy

方便实用的向上兼容特性消除了项目从一代升级的顾虑:

如果已经是 GMS 一代的用户,我建议立即考虑将项目迁移到这款全面升级的新一代引擎中:GMS2 为1代的项目提供了自动迁移功能,使用 GMS2 载入 GMS 项目会将一些废弃的方法自动替换成新 API 中等价的方法(虽然这并不意味着完全没有工作量,但显然能节约大量的迁移时间)。笔者进行测试后发现,GMS1.4的项目导入后 GMS2 没有任何问题就正常运行了起来。

结语

GMS2 在国内并不流行,很多不够了解的开发者以为它只是面向新手,简化游戏开发难度的玩具。另外它采用的买断制经营模式也制造了一些进入门槛。但总的来说,这是一款非常优秀的游戏开发工具,值得游戏开发爱好者甚至专业的游戏开发者尝试和学习。

GMS2 的很多功能沿袭自一代,因此一代用户稍加摸索就能上手,软件也内置详细的帮助功能,详细资料则还是推荐参阅官方手册(目前尚无中文版本),这里有一个在线版本: 点击我 ,快速上手则推荐参考 这里的官方教程 。indienova 在 GDC 期间同 yoyogames 的官方人员取得了联系,得知他们有进入国内市场的计划,后续动态我们会继续保持密切关注。本文只是一篇粗略的初体验分享,稍后还会有 GMS 开发经验更加丰富的开发者在 indienova 分享他的心得体会,容我在这里先卖个关子不透露详情,大家敬请期待~

作者:indienova 独立游戏新闻,评测,开发教学
你的独立游戏第一站
原文地址:GameMaker Studio 2 初体验, 感谢原作者分享。

发表评论