本页目录

Ikemen GO 开源格斗游戏引擎(支持 MUGEN 资源)

Ikemen-GO · ikemen-engine/Ikemen-GO

Ikemen GO 是一款用 Go 语言编写的开源格斗游戏引擎,可读取 M.U.G.E.N 引擎资源,也是早期 Ikemen 引擎的完整重写。项目以兼容 M.U.G.E.N 1.1 Beta 为目标并在此基础上扩展功能,但不追求逐 bug 复刻,部分行为会刻意不同。仓库 Release...

动作游戏 平台跳跃 SDL 自研引擎 C 角色控制 跳跃与重力 物理系统 关卡管理 高级
★ Stars 358 Forks 68 License 未明确 更新 2026-11-07

国内开发环境适配

Windows
官方声明支持
Linux
官方声明支持
macOS
官方声明支持
引擎 / 框架:SDL 暂无中文教程标记 未标记站长实测
README 中的依赖下载链接指向 libsdl.org、xiph.org、creativelabs.com 等境外站点,国内访问可能较慢或不可达,建议使用镜像或本地缓存;Debian 系包名(libsdl1.2-dev 等)在部分新版发行版中可能已变更,需自行确认,具体可用性待核验。

中文项目介绍

Gish 是一款曾获奖的物理平台跳跃游戏,本仓库是其开放源码版本,主要使用 C 语言编写。仓库描述明确称其为“award-winning physics platformer”的开源版本,因此可以把它理解为对原商业作品的源码公开,而非从零重写的新项目。

README 的结构非常务实,几乎全部围绕“如何把这份源码编译起来”展开:分别给出了 Linux、Windows(VS2008)与 Mac OS X 三条构建路径,随后说明如何运行游戏,最后提到当前分支已与 SysLord 的改动合并,新增特性记录在 Note-SysLord.markdown 中。

需要说明的是,README 并未详细描述玩法机制、关卡数量或运行画面效果,这些内容有待实际编译运行后核验。本文只依据 README 可确认的信息进行整理。

技术架构分析

构建方式(Linux)

Linux 是 README 中描述最简洁的一条路径,依赖 CMake 以及 SDL、OpenAL、Vorbis 的开发库。在 Debian 系发行版上,README 给出的安装命令为:

sudo apt-get install libsdl1.2-dev libopenal-dev libvorbis-dev

安装完成后,标准的 CMake 流程即可:

mkdir build && cd build
cmake ..
make

从依赖可以看出,项目使用 SDL 1.2 负责窗口、输入与基础平台层,OpenAL 负责音频输出,Vorbis 负责音乐资源的解码。这是一套典型的 2000 年代中后期 C 语言游戏技术栈。

构建方式(Windows 与 VS2008)

Windows 路径以 Visual Studio 2008 为基准,README 要求先下载并安装若干依赖库:

  • SDL 1.2.14 的 VC8 开发包
  • SDL_mixer 1.2.11 的 VC 开发包
  • libogg 1.2.0,需用 win32\VS2008\libogg_static.vcproj 编译
  • libvorbis 1.3.1,需分别编译 libvorbis_static.vcproj 与 libvorbisfile_static.vcproj
  • OpenAL 1.1 Core SDK,安装后还需在 include 目录下建立 AL 子目录并复制头文件

随后在 Visual Studio 中把上述各库的 include 路径与 library 路径加入工程配置,打开 gish.sln 编译。运行前需要确保 OpenAL32.dll 与 SDL.DLL 存在。

这套流程对现代开发环境而言较为陈旧,实际复现时可能需要自行处理工具链兼容问题,README 未提供更新的替代方案。

构建方式(Mac OS X)

Mac 路径使用主目录下的 Xcode 工程。README 提示需要对 Gish 可执行文件执行 “Get info”,把工作目录改为 “Project Directory”。若构建失败,应检查依赖:

  • 框架:Cocoa、SDL、OpenAL、Ogg、Vorbis,其中 Ogg 与 Vorbis 框架需从 xiph.org 下载并安装到 /Library/Frameworks/
  • libpng:可通过 macports 等方式获取,并修改 Gish target 的 “Header Search Paths” 指向 libpng 头文件目录

README 特别提醒,不建议对 /opt/local/include 做递归头文件搜索,可能拖慢构建或引入冲突。另外,若你拥有原版游戏资源,可以把工作目录指向 /Applications/Gish.app/Contents/Resources 直接复用,但需注意这同时会使用原版应用的用户文件。

补充说明

玩法与资源说明

README 的运行说明很直接:执行 ./gish 或 gish.exe 即可。仓库内附带了一套代号为 FreeGish 的资源,使 Gish 成为一款完全自由分发的游戏;同时附带一个关卡 freegish.lvl,可在 “Custom Levels” 中找到,README 鼓励玩家试用并替换不满意之处。

如果你拥有原版资源,也可以将其复制到该目录,需要的资源类别包括:animation、level、music、sound、texture,以及 tile01 至 tile07。

分支说明与学习建议

README 末尾指出,当前分支已与 SysLord 的改动合并,新增的若干特性记录在 Note-SysLord.markdown 文件中,建议阅读该文档了解具体变化。

从学习角度看,这个仓库的价值主要在于:

  • 一份完整的 C 语言游戏工程,可观察 SDL 1.2 + OpenAL + Vorbis 的组合方式
  • 跨 Linux、Windows、macOS 三平台的多套构建配置,可作为老项目移植与维护的参考样本
  • 物理平台跳跃类游戏的源码结构,适合对照阅读

由于依赖版本较老,建议在隔离环境或虚拟机中尝试构建,并做好依赖兼容性排查的准备。

开源许可证与版权说明

许可证标识:未明确。源码、资源与依赖许可可能不同,请以官方仓库为准。本站仅做索引,不托管源码。

相似项目