
楚河漢界 · 3D 中国象棋 是一个运行在浏览器中的 Web应用,使用 Three.js 构建 3D 棋盘与战场环境,支持 godogpaw 和 Pikafish 双引擎人机、本地双人以及 WebSocket 联机对弈。项目代码采用 GPL-3.0-or-later 许可证,并在 GitHub 上以 开源项目 形式维护,是一个值得收藏的 有趣的网站。
这个 软件工具 适合想在不安装客户端的情况下体验中国象棋、或希望自建一个带 AI 和联机功能的网页象棋平台的用户。3D 战场视角、人物模型和击杀特写让它更像一款桌面级 有趣软件,同时完整保留了中国象棋的规则细节。如果你正在寻找类似的 实用软件,可以把它列入 工具推荐 清单。
界面预览
主界面:3D 战场视角下的中国象棋棋盘,红蓝双方棋子以人物模型呈现,顶部可切换模式、悔棋、重开和换边。
场景痛点
传统网页象棋大多采用 2D 平面棋盘,视觉表现单一;而客户端象棋软件又需要下载安装,跨设备访问不便。如果你想在浏览器里获得更具代入感的对弈体验,同时支持人机、本地双人和联机三种模式,可选方案并不多。现有的一些在线象棋站点通常只提供单一模式,AI 难度固定,联机房间也缺乏状态恢复机制,断线后往往只能重开。
楚河漢界把 3D 渲染、双引擎人机和房间制联机整合到一个网页里,并且提供 Docker、二进制发行包和 Cloudflare Pages 等多种部署方式,让普通用户可以直接打开网页游玩,也让有自建需求的用户能够快速部署到服务器或内网环境。
核心功能
3D 棋盘与视觉表现
项目使用 Three.js 渲染 3D 棋盘、战场环境和棋子模型,在 视觉设计 和 设计工具 层面都有不少看点,也给网页象棋带来了新的 创意灵感。棋子以人物造型呈现,「帅 / 将」击杀时还会触发全屏特写。用户可拖拽旋转视角、滚轮缩放,视角不可平移,但顶部「换边」按钮可快速在红黑双方视角之间切换。界面提供两种主题:「3D 战场」保留人物与环境特效;「经典大字」使用正交俯视棋盘、隐藏卡通人物并减少动效。动效强度可在「完整 / 简化 / 关闭」之间选择,系统启用减少动态效果时会默认使用简化动效。画面与动效偏好保存在当前浏览器,下次进入自动恢复。
对弈模式
楚河漢界提供四种对弈模式:
| 模式 | 说明 | 是否需要 Rust 服务端 |
| godogpaw 人机 | 浏览器 Web Worker 中运行 WASM | 否 |
| Pikafish 人机 | 服务端通过 UCI 调用 Pikafish 与 NNUE | 是 |
| 本地双人 | 同一设备轮流行棋 | 否 |
| 联机对弈 | 房间制 WebSocket 对局 | 是 |
godogpaw 和 Pikafish 均支持入门、中等、困难、大师四档难度。Pikafish 不可用时只会禁用该选项,不影响 godogpaw、本地双人和联机模式。规则层面完整支持蹩马腿、塞象眼、炮翻山、兵过河、九宫、飞将、将军、绝杀、困毙和悔棋(联机模式暂不支持悔棋)。
联机对弈采用房间制:创建者执红并获得 6 位房间号和邀请链接,对手加入后执黑;服务端校验身份、行棋方、版本和着法,断线后客户端自动重连并恢复服务端棋谱;重开需要双方确认。房间 24 小时无活动后自动清理。
部署方式
项目支持三种主要部署形态:
- Docker 部署(推荐):官方镜像内置前端、godogpaw WASM、Pikafish 和 NNUE,支持
linux/amd64与linux/arm64,监听 8000 端口。 - 二进制发行包:Release 提供 Linux x86_64 / ARM64、Windows x86_64、macOS Intel / Apple Silicon 版本,已嵌入 HTML、CSS、JavaScript、WASM 和模型,无需额外部署前端文件。
- Cloudflare Pages 纯静态专版:只保留浏览器内运行的 godogpaw 人机和本地双人,构建时会移除 Pikafish 与联机入口,适合纯静态托管。
源码仓库不包含大型 Pikafish 二进制和 NNUE;需要 Pikafish 服务端人机时,应将其放在可执行文件旁的 pikafish/ 目录,或通过 PIKAFISH_PATH 和 PIKAFISH_NNUE 环境变量指定路径。
PWA 与本地资源
楚河漢界支持 PWA,可安装到桌面或主屏幕;断网后仍可进行 godogpaw 人机和本地双人对弈。字体使用子集化后的 Noto Serif SC,本地提供,不依赖 Google Fonts 服务器;Three.js 也采用本地托管的 r160 版本。
安装与使用
Docker Compose 部署
保存为 docker-compose.yml 后执行:
打开 http://127.0.0.1:8000 即可访问。
从源码运行
前置条件:
- Rust 工具链和 Cargo
- Node.js(运行前端检查时需要)
- 支持 WebGL、WebAssembly、Web Worker 和 ES Modules 的现代浏览器
启动开发服务:
常用选项:
只使用 godogpaw 人机和本地双人时,也可以启动纯静态服务:
生产环境需要为 .wasm 返回 Content-Type: application/wasm,且不要用 file:// 打开 index.html。
操作方式
- 点击己方棋子查看合法位置,再点击目标位置落子。
- 拖拽旋转视角、滚轮缩放;按
F进入全屏,Esc退出全屏。 - 顶部按钮可悔棋、重开、换边;左上角切换人机、本地双人和联机模式。
我的使用感受
楚河漢界在浏览器里实现了接近客户端的 3D 象棋体验,Three.js 战场视角和人物模型让对弈过程更有代入感。godogpaw 作为浏览器内 WASM 引擎响应很快,Pikafish 则提供了更强的人机强度,适合不同水平用户。联机房间机制简洁,断线重连和双方确认重开是实用的细节。对于只想快速下棋的人,直接访问在线演示即可;对于想自托管的用户,Docker 和二进制发行包也降低了部署门槛。
官方网站
GitHub 仓库:https://github.com/inbjo/chess-cn
下载地址
https://pan.quark.cn/s/9923139e7ade







