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

Quick Facts 原作者, 開發者 ...
GameMaker
Thumb
原作者Mark Overmars英語Mark Overmars
開發者YoYo Games英語YoYo Games
首次發布1999年11月15日,​24年前​(1999-11-15
當前版本
  • 2024.8.0 (2024年9月3日;穩定版本)[1]
編輯維基數據鏈接
編程語言
操作系統
平台
語言
許可協議專有軟件
網站官方網站
Close

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

概述

GameMaker主要用於製作擁有2D圖形的遊戲,允許開箱即用位圖矢量圖形(SWF)[3]和2D骨骼動畫(Esoteric Software的Spine)[4][5]以及用於繪製圖形的大型標準庫。[6] 儘管軟件允許用戶有限地使用3D圖形,但其形式為頂點緩衝區英語Vertex buffer[7]矩陣函數,因此並不適合新手用戶。

該引擎在Windows、UWP和Xbox One上使用Direct3D;在macOS和Linux上使用OpenGL;在Android和iOS上使用OpenGL ES;在HTML5上使用WebGL2D Canvas,在遊戲主機上使用專有API。

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

支持的平台

GameMaker支持為Microsoft WindowsMacOSUbuntuHTML5AndroidIOSAmazon Fire TVAndroid TVRaspberry Pi[11]Windows UWPPlayStation 4Nintendo Switch[12]Xbox One構建軟件;[13][14][15]PlayStation 5Xbox Series X/S也在2021年2月宣布支持。[16]

在過去,GameMaker也支持為Windows Phone(被UWP替代)、TizenPlayStation Vita(GMS2中稱「主要因為業務問題」)。[17]

PlayStation Portable的支持在2010年5月演示,[18]但從未對外公開(僅有少數遊戲使用)。[19]

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

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

拖拽放置

拖拽放置(Drag and Drop,DnD)是GameMaker的可視化腳本工具。

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

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

GameMaker語言

GameMaker語言是GameMaker的腳本語言。這是一種指令式動態類型的,類似JavaScriptC語言的語言。[27][28][29]

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

歷史

GameMaker最初由Mark Overmars英語Mark Overmars開發。該軟件於1999年11月15日以Animo的名義首次發布(當時,它只是一個具有有限視覺腳本功能的圖形工具)。[32]該軟件的第一個版本是在Delphi上開發的。[33]

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

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

6.4版(2004年10月)引入了有限的3D圖形使用功能,並同時將運行時的繪圖通道從可視組件庫英語Visual Component Library遷移至DirectX[35]

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

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

8.1版(2011年4月)將軟件名稱改為GameMaker(無空格)[39]以避免與1991年的軟件Game-Maker英語Game-Maker混淆。該版本還用C++重寫了運行時,[40][與來源不符]以解決之前版本的性能問題。

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

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

2015年2月,Playtech英語PlaytechYoYo Games英語YoYo Games收購了GameMaker,該公告再次聲明,GameMaker將會進一步改進,這些計劃吸引了更多的用戶,其中包括更多的高級開發者。[48][49]

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

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

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

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

反響

根據223條用戶評論,該項目目前在Mod DB上的評分為8.5/10;許多人認為它的靈活性和易用性是積極的,而不穩定、崩潰、項目過老和過時的功能則是消極的。[58] 《獨立遊戲雜誌》(Indie Game Magazine)的Douglas Clements寫到,該軟件「簡化了遊戲的開發流程」,並且「對於初學者來書十分友好,但在開發過程中又足夠強大」,但同時他又指出「resource objects have to be gathered if unable to create[如何翻譯]」,並且「Steam和YoYo Games網站之間的授權『錯綜複雜』」。[59]

參考

外部連結

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.