# OpenJKDF2：Jedi Knight: Dark Forces II 的 C 语言重实现

> OpenJKDF2 用 C 语言逐函数重新实现 Jedi Knight: Dark Forces II。README 列出使用 SDL2、OpenAL 和 OpenGL 3.3 的 64 位 Windows、macOS 与 Linux 构建，以及 ARM64 Android、Nintendo DSi、Dreamcast、32 位 Windows 和 Emscripten WebAssembly 构建。源文件布局贴近原版游戏，依据 Grim Fandango Remaster 移植中的符号以及其他游戏中的断言，并包含解析 COG 脚本所用的 byacc 和 flex。

- 类型：案例
- 目标：游戏
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-11-07
- 收录于：2026-11-09
- 原始资源：<https://github.com/shinyquagsire23/OpenJKDF2>
- 一手来源：<https://github.com/shinyquagsire23/OpenJKDF2/blob/ae6ed8a81b316421f08a46719b12a4fa9e2fbed9/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/openjkdf2/>
- 记录 JSON：<https://awesomerea.org/resources/openjkdf2/record.json>
- 英文版：[English](https://awesomerea.org/resources/openjkdf2/index.md)

## 使用条件与局限

- 运行需要一份有效的 Jedi Knight: Dark Forces II 游戏数据。仓库不包含原版游戏资源。README 写明可从 GOG 和 Steam 取得，并推荐 GOG，因为该版本无 DRM，且附带 Ogg Vorbis 音轨。
- README 列出的受支持配置包括：使用 SDL2、OpenAL 和 OpenGL 3.3 的 64 位 Windows、macOS x86_64 与 AArch64、64 位 Linux；使用 OpenGL ES 3 的 ARM64 Android；使用自定义渲染器的 Nintendo DSi 和 Dreamcast；使用 OpenGL 1.1 的 32 位 Windows；以及使用 WebGL 2 的 Emscripten。在 Linux 上，路径和文件名可能区分大小写。
- GitHub 报告该仓库的许可证为 NOASSERTION。

## 一手来源

1. <https://github.com/shinyquagsire23/OpenJKDF2/blob/ae6ed8a81b316421f08a46719b12a4fa9e2fbed9/README.md>

## 同分区更多条目：游戏

- [OpenJones3D：重建《Indiana Jones and the Infernal Machine》引擎](https://awesomerea.org/zh/resources/openjones3d-case/index.md) · 案例
- [OpenJPB：重建《Jedi Power Battles》PC 版](https://awesomerea.org/zh/resources/openjpb-case/index.md) · 案例
- [OpenKeeper：《地下城守护者 II》游戏与引擎重制](https://awesomerea.org/zh/resources/openkeeper-dungeon-keeper-ii-case/index.md) · 案例
- [OpenKingdoms：重建 Total Annihilation: Kingdoms 引擎](https://awesomerea.org/zh/resources/openkingdoms-case/index.md) · 案例
- [OpenLara《古墓丽影》开源引擎](https://awesomerea.org/zh/resources/openlara/index.md) · 案例
- [OpenLF2：Little Fighter 2 引擎重实现](https://awesomerea.org/zh/resources/openlf2-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
