GameMaker

GameMaker（最初為Animo，2011年之前為Game Maker）是一個系列跨平台遊戲引擎，由Mark Overmars於1999年創建，2007年後由YoYo Games開發。最新的版本是2017年發布的GameMaker Studio 2。

GameMaker支持使用自定義拖放式視覺化程式語言或稱為Game Maker Language的腳本語言創建跨平台和多類型的電子遊戲。該語言可用於開發拖放功能無法創建的更加高級的遊戲。GameMaker最初的設計目的是讓新手程式設計師能夠在沒有太多編程知識的情況下製作遊戲。最新版本的軟體也開始注重吸引高級開發人員。

## 概述

GameMaker主要用於製作擁有2D圖形的遊戲，允許開箱即用的位圖、矢量圖形（SWF）和2D骨骼動畫（Esoteric Software的Spine）以及用於繪製圖形的大型標準庫。

儘管軟體允許用戶有限地使用3D圖形，但其形式為頂點緩衝區和矩陣函數，因此並不適合新手使用者。

該引擎在Windows、UWP和Xbox One上使用Direct3D；在macOS和Linux上使用OpenGL；在Android和iOS上使用OpenGL ES；在HTML5上使用WebGL或2D Canvas，在遊戲主機上使用專有API。

該引擎的主要元素之一是帶有光柵圖形、關卡設計、腳本、路徑和著色器（GLSL或HLSL）編輯器的IDE。其他功能可以通過軟體的腳本語言或特定平台的本地拓展來實現。在GameMaker Studio 2中，你可以選擇將遊戲導出為NSIS安裝包，或導出為包含遊戲data.win文件和編輯器「包含的文件」選項卡中的所有文件的.zip文件。

### 支持的平台

GameMaker支持為Microsoft Windows、MacOS、Ubuntu、HTML5、Android、IOS、Amazon Fire TV、Android TV、Raspberry Pi、Windows UWP、PlayStation 4、Nintendo Switch和Xbox One構建軟體；PlayStation 5和Xbox Series X/S也在2021年2月宣布支持。

在過去，GameMaker也支持為Windows Phone（被UWP替代）、Tizen、PlayStation Vita（GMS2中稱「主要因為業務問題」）。

PlayStation Portable的支持在2010年5月演示，但從未對外公開（僅有少數遊戲使用）。

2007年至2001年間，YoYo Games曾為GameMaker遊戲維護了一個定製的web播放器插件，在2011年年中以開源的形式發布，並最終放棄了HTML5導出。

在2021年8月之前，使用者必須獲得五個不同平台中的任意一個許可（不包括主機平台），這取決於使用者想要發布的目標平台（例如桌面端或移動端）。發布主機版需要年度許可證，該許可證也包含在涵蓋所有受支持平台的全面年度最終許可證中。YoYo Games在2021年8月更改了許可方式，允許用戶免費用於學習用途，同時取消了單一購買選項。同時，許可方案被簡化為兩種，一種支持在所有非主機平台上發布，另一種添加了主機平台發布支持。這些改變得益於Opera對YoYo Games的財務投資，已幫助降低遊戲作者的製作成本。

### 拖拽放置

拖拽放置（Drag and Drop，DnD）是GameMaker的可視化腳本工具。

DnD允許執行常見的開發人員命令（例如實例化對象、調用函數、處理文件和數據結構）而無需編寫代碼，拖拽放置主要針對新手使用者。

雖然從歷史上看，DnD能在輕鬆完成的事情上的使用相當有限，但GameMaker Studio 2對該系統進行了徹底的改進，能夠使用DnD完成更多的任務，並將其直接轉換為代碼（為有興趣遷移到代碼的使用者提供IDE內預覽）。

## GameMaker語言

GameMaker語言是GameMaker的腳本語言。這是一種指令式、動態類型的，類似JavaScript和C語言的語言。

該語言在本機平台上的默認操作模式通過堆棧機實現；它也可以通過LLVM編譯為C++源碼以提高性能。在HTML5上，GML是源到源編譯成JavaScript的，在非調試版本中實現了優化和壓縮。

## 歷史

GameMaker最初由Mark Overmars開發。該軟體於1999年11月15日以Animo的名義首次發布（當時，它只是一個具有有限視覺腳本功能的圖形工具）。該軟體的第一個版本是在Delphi上開發的。

在隨後的版本中，該軟體更名為Game Maker，同時也朝著更通用的2D遊戲開發方向發展。

5.0版及以下版本為免費軟體；5.1版本引入了可選註冊費用；5.3版為註冊使用者引入了許多新功能，包括粒子系統、網路以及使用DLL擴展遊戲內容的可能性。

6.4版（2004年10月）引入了有限的3D圖形使用功能，並同時將運行時的繪圖通道從可視組件庫遷移至DirectX。

公眾越來越大的專注度促使Overmars尋求幫助來擴大項目，並於2007年與YoYo Games建立了合作關係。從那時起，開發工作由YoYo Games負責，而Overmars則繼續擔任公司董事之一。7.0版是在此合作關係下發布的第一個版本。

第一個兼容macOS的版本於2009年發行，只需要稍作改動即可在兩個作業系統上製作遊戲。

8.1版（2011年4月）將軟體名稱改為GameMaker（無空格）以避免與1991年的軟體Game-Maker混淆。該版本還用C++重寫了運行時，以解決之前版本的性能問題。

2011年9月「GameMaker: HTML5」首次發布——這是一個全新的軟體，能夠將桌面遊戲和瀏覽器遊戲一併導出。

GameMaker: Studio於2012年3月進入公測階段，並與2012年5月全面發布。最初支持的平台包括Windows、Mac、HTML5、Android和iOS。在接下來的幾年裡引入了其他平台和功能；2012年末，一些正版使用者遇到了反盜版措施失靈的事故。

2015年2月，Playtech和收購了GameMaker，該公告再次聲明，GameMaker將會進一步改進，這些計劃吸引了更多的使用者，其中包括更多的高級開發者。

2016年11月，GameMaker Studio 2的Beta版首次發布，完整版於2017年3月發布。這個版本展示了一個完全重新設計的IDE（使用C#編寫），以及一些新的編輯工具和運行時功能。

2020年8月，主要更新2.3版本發布，為IDE、運行時和腳本語言帶來了大量的新功能。

2021年1月，YoYo Games以1000萬美元的價格出售給Opera軟體。GameMaker的開發團隊保持不變，沒有對GameMaker Studio進行過任何重大的開發更改。

2021年8月，YoYo Games聲稱他們正在改變許可證策略，並會提供一個免費版本的GameMaker引擎。

## 反響

根據223條使用者評論，該項目目前在Mod DB上的評分為8.5/10；許多人認為它的靈活性和易用性是積極因素，而程序不穩定、易崩潰、項目年久失修及功能過時等問題則受到詬病。《獨立遊戲雜誌》（Indie Game Magazine）的Douglas Clements評價該軟體"簡化了遊戲的開發流程"，認為其"對初學者十分友好，但在開發過程中又足夠強大"，但同時也指出若無法自主創建所需資源，則需從外部獲取現成素材，並批評"Steam平台與YoYo Games網站之間的授權機制'錯綜複雜'"。

## 外部連結

- YoYo Games — 官方網站
- Game Maker Community — 官方論壇
- YoYo Games Wiki — 官方維基
- GMking Network — GMking Network
- Game Maker Technology Magazine — Game Maker Technology Magazine

## 基本資料

- 作者：Mark Overmars
- 開發者：YoYo Games
- 程式語言：C++ (運行時)、C# (IDE)
- 作業系統：Microsoft Windows、macOS
- 平台：Microsoft Windows、macOS、Ubuntu、HTML5、Android、iOS、Amazon Fire TV、Android TV、通用Windows平台、PlayStation 4、Xbox One
- 語言：英語、法語、西班牙語、德語、中文
- 許可協議：專有軟體