工作不饱和,想自己做个游戏玩玩?无论是网页小游戏还是 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,而功能和特性完爆其它开源游戏引擎。
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 等平台。
Open 3D Engine :实时 3D 开发引擎
Open 3D Engine (O3DE) 是一个模块化、开源、跨平台的 3D 引擎,起源于 Amazon 的 lumberyard 游戏引擎,可用于制作 3A 级游戏、电影级 3D 视觉和高保真模拟,基于 Apache 2.0 许可。
O3DE 的开发考虑到了最先进的实时图形和复杂的交互,具有多线程逼真渲染器、可扩展的 3D 内容编辑器、数据驱动的角色动画系统、实时物理引擎和不断增长的开源社区。
C++ 实现的游戏引擎见得比较多,下面介绍一下其他语言实现的游戏引擎:
LITIENGINE:纯 Java 2D 游戏引擎
LITIENGINE 是一个开源 Java 2D 游戏引擎,可以使用纯 Java 语言来创建 2D 游戏的所有基础结构。该项目最重要的设计原则之一是对纯 Java 的依赖:其将外部依赖项的数量保持在绝对最低限度,以保持整洁轻便的库。
LITIENGINE 游戏引擎包含两个组件:提供基本游戏基础结构的轻量级 Java 库,以及专用的项目管理工具和地图编辑器 utiLITI。
LITIENGINE 基于 MIT 协议开源,原生支持 Windows、Linux 和 Mac OS,简单易上手。
jMonkey Engine:Java 3D 游戏引擎
jMonkey Engine 是一个用 Java 编写的完整的 3D 游戏开发套件,它封装了 OpenGL,提供一个完整的高性能工具包,专为想要创制作 3D 游戏的 Java 开发者设计。
jMonkey Engine 基于 BSD 协议,功能非常强大,支持 3D 音频、有多个物理引擎解决方案、自带创建地形的库和框架和开箱即用的后期处理。
KorGE:Kotlin 多平台游戏引擎
KorGE 游戏引擎是在 Kotlin 中创建的开源现代游戏引擎,体积小巧且易于使用,适用于桌面、Web 和移动设备。
KorGE 是完全异步的,KorGE 使用 intelliJ 作为 IDE + Gradle 进行构建,提供了一个嵌入在 IntelliJ IDE 中的强大编辑器,非常适合 Web 端。
KorGE 基于 MIT/Apache 2.0 双重许可。
Pyxel: Python 像素游戏引擎
Pyxel 是一个 Python 的经典像素风游戏制作引擎,支持 Windows、Mac 和 Linux 平台,内置 16 色调色板、图像和音频编辑器等基本组件,游戏控制台以及 API 的设计参考了经典的 PICO-8 以及 TIC-80。
像素风游戏的机制非常简单(如:最多只能显示 16 种颜色、播放 4 种声音等),任何人都可以轻松地享受这种游戏的制作过程。
注意:Pyxel 需要 Python 3.0 及以上版本。
软件详情:https://www.oschina.net/p/pyxel
下面是一些情怀游戏的引擎:
OpenRA : “命令与征服:红色警戒” 游戏引擎
OpenRA 是开源重新实现的“命令与征服:红色警戒” 游戏引擎(Westwood 工作室的策略类游戏“红警” ),利用 OpenGL 的新一代显卡硬件加速功能,围绕攻击移动、单位指令和战争迷雾等功能进行现代化设计,目标是重做成一款完全支持 Mod 和自定义地图的在线游戏。
OpenRA 包含社区用户创建和策划的地图,以及用于创建新 RTS 游戏的 Mod SDK,原生支持 Windows、macOS 和 Linux 平台,基于 GPL 许可。
Freeablo :暗黑破坏神 1 游戏引擎
Freeablo 是暗黑破坏神 1 游戏引擎的现代化跨平台重新实现,目标是使这个老游戏具有更快的性能、现代分辨率,以及一流的 Mod 支持。
Freeablo 只是暗黑破坏神的引擎实现,美术、音乐等游戏资产受版权保护,因此玩家需要用原始数据文件来玩游戏。目前可以在镇上、玩家和 NPC 动画中跑来跑去,还可以下到地牢的前几级。
Freeablo 基于 GPLv3,采用 C++ 开发,支持 Windows、macOS 和 Linux 平台。不过这个项目的开发已停滞了两年,因为开发者 wheybags 缺少空余时间。
地图制作方面,推荐:
Tiled:2D 关卡制作器
Tiled 是一款 2D 关卡编辑器,风格类似 mini 版的 photoshop,简单易用,基于 Apache/BSD/GPL 等多重许可。
Tiled 的主要功能是编辑各种形式的瓦片地图,它支持直线矩形瓦片层,也支持投影等距、交错等距和交错六边形层。Tiled 还支持对象层,可以自由放置图像和文本,采用对话框/引导文本等信息来注释关卡。
Tiled 还支持通过插件添加自定义地图或瓦片集格式、使用 JavaScript扩展 Tiled、瓦片戳内存、瓦片动画支持和瓦片碰撞编辑器。
祝大家玩得开心!
本文所述软件已收录至 Awesome 软件集锦之开源游戏引擎/框架:https://www.oschina.net/project/awesome?columnId=22。