從畫素遊戲到 3A 大作的遊戲引擎/框架
工作不飽和,想自己做個遊戲玩玩?無論是網頁小遊戲還是 3A 大作,這裡的遊戲引擎/框架都能輕鬆駕馭,準備動手準備動手!
Godot :2D/3D 遊戲引擎
Godot 是一個 MIT 協議下的 2D/3D 遊戲引擎,其功能集類似閉源跨平臺遊戲引擎 Unity,可用於開發 PC、主機、移動和 Web 遊戲,支援 Linux、Windows 和 OSX 開發平臺。
Godot 引擎內建了類似 Unity 的編輯器,GUI 工具包,2D/3D 物理支援,支援 OpenGL ES 2.0 功能集的 3D 渲染器,易於學習的語言和 API,支援用 ASM.js 或 Google Native Client 輸出 HTML5 程式碼。
開發者稱該引擎的 2D 和動畫支援要強於 Unity,而功能和特性完爆其它開源遊戲引擎。
軟體詳情:http://www.oschina.net/p/godot
Cocos2D-X:跨平臺手機遊戲開發框架
Cocos2d-x 是一款國產的跨平臺手機遊戲開發框架,基於MIT許可證開源。引擎提供了圖形渲染、GUI、音訊、網路、物理、使用者輸入等豐富的功能,主要優勢是跨平臺、高效能、高相容性、可熱更新、可定製及易用性,目前被廣泛應用於遊戲開發及互動式應用的構建。
Cocos 引擎實在是赫赫有名,保衛蘿蔔 2、捕魚達人 2、開心消消樂這些大熱遊戲都基於該引擎,盛大遊戲、崑崙萬維 、暢遊、完美世界、4399、廣州菲音、西山居等國內頂尖遊戲公司都在用它,還有來自 Google、Zynga、Microsoft、Intel、Samsung、BlackBerry 等公司的老碼農在貢獻程式碼。
Cocos2d-x 引擎的核心採用 C++ 編寫,支援使用 C++、Lua 或 JavaScript 進行開發。它文件齊全,易學易用,目前已經支援 iOS、Android、Windows、Mac OS、Linux、BlackBerry、Windows Phone 等平臺。
軟體詳情:http://www.oschina.net/p/cocos2d-x
Open 3D Engine :實時 3D 開發引擎
Open 3D Engine (O3DE) 是一個模組化、開源、跨平臺的 3D 引擎,起源於 Amazon 的 lumberyard 遊戲引擎,可用於製作 3A 級遊戲、電影級 3D 視覺和高保真模擬,基於 Apache 2.0 許可。
O3DE 的開發考慮到了最先進的實時圖形和複雜的互動,具有多執行緒逼真渲染器、可擴充套件的 3D 內容編輯器、資料驅動的角色動畫系統、實時物理引擎和不斷增長的開源社群。
軟體詳情:http://www.oschina.net/p/open_3d_engine
C++ 實現的遊戲引擎見得比較多,下面介紹一下其他語言實現的遊戲引擎:
LITIENGINE:純 Java 2D 遊戲引擎
LITIENGINE 是一個開源 Java 2D 遊戲引擎,可以使用純 Java 語言來建立 2D 遊戲的所有基礎結構。該專案最重要的設計原則之一是對純 Java 的依賴:其將外部依賴項的數量保持在絕對最低限度,以保持整潔輕便的庫。
LITIENGINE 遊戲引擎包含兩個元件:提供基本遊戲基礎結構的輕量級 Java 庫,以及專用的專案管理工具和地圖編輯器 utiLITI。
LITIENGINE 基於 MIT 協議開源,原生支援 Windows、Linux 和 Mac OS,簡單易上手。
軟體詳情:http://www.oschina.net/p/litiengine
jMonkey Engine:Java 3D 遊戲引擎
jMonkey Engine 是一個用 Java 編寫的完整的 3D 遊戲開發套件,它封裝了 OpenGL,提供一個完整的高效能工具包,專為想要創制作 3D 遊戲的 Java 開發者設計。
jMonkey Engine 基於 BSD 協議,功能非常強大,支援 3D 音訊、有多個物理引擎解決方案、自帶建立地形的庫和框架和開箱即用的後期處理。
軟體詳情:http://www.oschina.net/p/jmonkeyengine
KorGE:Kotlin 多平臺遊戲引擎
KorGE 遊戲引擎是在 Kotlin 中建立的開源現代遊戲引擎,體積小巧且易於使用,適用於桌面、Web 和移動裝置。
KorGE 是完全非同步的,KorGE 使用 intelliJ 作為 IDE + Gradle 進行構建,提供了一個嵌入在 IntelliJ IDE 中的強大編輯器,非常適合 Web 端。
KorGE 基於 MIT/Apache 2.0 雙重許可。
軟體詳情:http://www.oschina.net/p/korge
Pyxel: Python 畫素遊戲引擎
Pyxel 是一個 Python 的經典畫素風遊戲製作引擎,支援 Windows、Mac 和 Linux 平臺,內建 16 色調色盤、影象和音訊編輯器等基本元件,遊戲控制檯以及 API 的設計參考了經典的 PICO-8 以及 TIC-80。
畫素風遊戲的機制非常簡單(如:最多隻能顯示 16 種顏色、播放 4 種聲音等),任何人都可以輕鬆地享受這種遊戲的製作過程。
注意:Pyxel 需要 Python 3.0 及以上版本。
軟體詳情:http://www.oschina.net/p/pyxel
下面是一些情懷遊戲的引擎:
OpenRA : “命令與征服:紅色警戒” 遊戲引擎
OpenRA 是開源重新實現的“命令與征服:紅色警戒” 遊戲引擎(Westwood 工作室的策略類遊戲“紅警” ),利用 OpenGL 的新一代顯示卡硬體加速功能,圍繞攻擊移動、單位指令和戰爭迷霧等功能進行現代化設計,目標是重做成一款完全支援 Mod 和自定義地圖的線上遊戲。
OpenRA 包含社群使用者建立和策劃的地圖,以及用於建立新 RTS 遊戲的 Mod SDK,原生支援 Windows、macOS 和 Linux 平臺,基於 GPL 許可。
軟體詳情:http://www.oschina.net/p/openra
Freeablo :暗黑破壞神 1 遊戲引擎
Freeablo 是暗黑破壞神 1 遊戲引擎的現代化跨平臺重新實現,目標是使這個老遊戲具有更快的效能、現代解析度,以及一流的 Mod 支援。
Freeablo 只是暗黑破壞神的引擎實現,美術、音樂等遊戲資產受版權保護,因此玩家需要用原始資料檔案來玩遊戲。目前可以在鎮上、玩家和 NPC 動畫中跑來跑去,還可以下到地牢的前幾級。
Freeablo 基於 GPLv3,採用 C++ 開發,支援 Windows、macOS 和 Linux 平臺。不過這個專案的開發已停滯了兩年,因為開發者 wheybags 缺少空餘時間。
軟體詳情:http://www.oschina.net/p/freeablo
地圖製作方面,推薦:
Tiled:2D 關卡製作器
Tiled 是一款 2D 關卡編輯器,風格類似 mini 版的 photoshop,簡單易用,基於 Apache/BSD/GPL 等多重許可。
Tiled 的主要功能是編輯各種形式的瓦片地圖,它支援直線矩形瓦片層,也支援投影等距、交錯等距和交錯六邊形層。Tiled 還支援物件層,可以自由放置影象和文字,採用對話方塊/引導文字等資訊來註釋關卡。
Tiled 還支援通過外掛新增自定義地圖或瓦片集格式、使用 JavaScript擴充套件 Tiled、瓦片戳記憶體、瓦片動畫支援和瓦片碰撞編輯器。
軟體詳情:http://www.oschina.net/p/tiled
祝大家玩得開心!
本文所述軟體已收錄至 Awesome 軟體集錦之開源遊戲引擎/框架:http://www.oschina.net/project/awesome?columnId=22。