GameMaker

出自Local Chinese Wikipedia
(重新導向自Game Maker
跳至導覽 跳至搜尋

package.lua第80行Lua錯誤:module 'Module:Format link' not found頁面Module:Infobox/styles.css沒有內容。

GameMaker
File:GameMaker Studio 2 Logo.svg
原作者package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found
開發者package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found
首次發佈1999年11月15日,​26年前​(1999-11-15
當前版本Template:Software version
原始碼庫頁面Template:Plainlist/styles.css沒有內容。
  • {{URL|example.com|可选的显示文本}}
Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
編程語言
引擎頁面Template:Plainlist/styles.css沒有內容。
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    作業系統
    平台
    語言
    許可協議專有軟件
    網站官方網站
    頁面Module:Infobox/styles.css沒有內容。

    GameMaker(最初為Animo,2011年之前為Game Maker)是一個系列跨平台遊戲引擎,由package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found於1999年創建,2007年後由package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found開發。最新的版本是2017年發佈的GameMaker Studio 2。

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

    概述[編輯]

    GameMaker主要用於製作擁有2D圖形的遊戲,允許開箱即用位圖矢量圖形(SWF)[2]和2D骨骼動畫(Esoteric Software的Spine)[3][4]以及用於繪製圖形的大型標準庫。[5] 儘管軟件允許用戶有限地使用3D圖形,但其形式為package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found[6]矩陣函數,因此並不適合新手用戶。

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

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

    支持的平台[編輯]

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

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

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

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

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

    拖拽放置[編輯]

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

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

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

    GameMaker語言[編輯]

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

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

    歷史[編輯]

    GameMaker最初由package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found開發。該軟件於1999年11月15日以Animo的名義首次發佈(當時,它只是一個具有有限視覺腳本功能的圖形工具)。[31]該軟件的第一個版本是在Delphi上開發的。[32]

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

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

    6.4版(2004年10月)引入了有限的3D圖形使用功能,並同時將運行時的繪圖通道從package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found遷移至DirectX[34]

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

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

    8.1版(2011年4月)將軟件名稱改為GameMaker(無空格)[38]以避免與1991年的軟件package.lua第80行Lua錯誤:module 'Module:Ilh/data' not found混淆。該版本還用C++重寫了運行時,[39][與來源不符]以解決之前版本的性能問題。

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

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

    2015年2月,package.lua第80行Lua錯誤:module 'Module:Ilh/data' not foundpackage.lua第80行Lua錯誤:module 'Module:Ilh/data' not found收購了GameMaker,該公告再次聲明,GameMaker將會進一步改進,這些計劃吸引了更多的用戶,其中包括更多的高級開發者。[47][48]

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

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

    2021年1月,package.lua第80行Lua錯誤:module 'Module:Lang/data/iana languages' not found以1000萬美元的價格出售給Opera軟件。GameMaker的開發團隊保持不變,沒有對GameMaker Studio進行過任何重大的開發更改。[53][54][55]

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

    反響[編輯]

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

    參考[編輯]

    1. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    2. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    3. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    4. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    5. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    6. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    7. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    8. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    9. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    10. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    11. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    12. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    13. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    14. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    15. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    16. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    17. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    18. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    19. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    20. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    21. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    22. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    23. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    24. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    25. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    26. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    27. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    28. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    29. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    30. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    31. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    32. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    33. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    34. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    35. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    36. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    37. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    38. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    39. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    40. 40.0 40.1 package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    41. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    42. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    43. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    44. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    45. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    46. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    47. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    48. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    49. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    50. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    51. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    52. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    53. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    54. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    55. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    56. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    57. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found
    58. package.lua第80行Lua錯誤:module 'Module:Citation/CS1/People' not found

    外部連結[編輯]