我把图论和拓扑做成了 3D 解谜游戏:数学漫游开发实践

简介: 《数学漫游》是一款基于Three.js的交互式网页游戏,将抽象数学(图论、拓扑)转化为可探索的三维空间。玩家通过行走、旋转、构造路径等方式直观理解连通性、绕数、同伦等概念,边玩边学,告别公式堆砌。支持中英日韩四语,无需安装,即开即玩。(239字)

学数学时,我经常遇到一种情况:定义里的每个字都认识,放在一起却很难形成直觉。

什么是连通?绕着一个洞走一圈,和原地不动有什么区别?为什么看起来相似的两条路径,在数学上会有不同的性质?

这些问题可以用公式表达,也可以画图解释。我想再尝试一种方式:让人进入一个空间,走一走、转一转、操作机关,再理解背后的数学。

于是,我做了 Math Valley · 数学漫游。

数学漫游实机画面:螺旋高塔与右侧解题手札

图 1:数学漫游实机画面。左侧是可以探索的三维建筑,右侧手札呈现目标、操作与原理入口。

这是一个通过立体空间解谜学习数学的网页游戏。玩家可以旋转视角、探索多层建筑、构造数学对象,并在部分关卡中提交解题证据。

在线体验:math-valley.vercel.app
源码仓库:MartinDelophy/math-valley

一、从数学知识目录,到可以探索的空间

项目最初的想法很简单:整理数学的大类和小类,让自己知道不同分支之间有什么关系,再沿着目录继续学习。

目录帮助我找到方向。接下来,我想让其中一些抽象概念变得可以观察、可以操作。

因此,项目逐渐发展成了一个交互式实验:把数学结构变成场景,把数学约束变成操作规则,让玩家通过行动接触概念。

当前内容面向已有一定大学数学基础的学习者,包含序章和两个正式章节:

内容 主题
序章:方向与旋转 熟悉视角切换与空间操作
第一章:桥与连通,共 16 关 生成树、不交路径、割、流与残量网络等
第二章:回环之塔,共 12 关 绕数、逆路径、同伦、有限覆盖与万有覆盖等

二、把数学概念转化为游戏规则

制作这类游戏,首先需要回答:玩家做什么动作,才能接触到这个概念的关键性质?

以图论为例,建筑中的平台和通路,很容易让人联想到节点与边。但只有视觉映射,还不足以支撑数学玩法。

还需要加入约束:哪些连接必须保留,哪些路径不能相交,怎样满足连通要求,以及如何给出有效证据。

这样,玩家既要探索路线,也要思考构造是否满足条件。

拓扑章节则围绕路径展开。

在有洞的空间里,起点和终点并不能完整描述一次行走。路径绕过什么、以什么顺序经过回环,都可能影响结果。

项目使用月井环塔、双井叠庭和螺旋高塔三类场景,承载不同的路径问题。开头截图展示的就是螺旋高塔:环绕运动与层数变化被放在同一个空间里,帮助玩家观察路径和绕数之间的联系。

这里需要保持一个边界:空间直觉帮助理解,严格的规则与证明负责确认结论。

三、技术实现:React + Three.js + Vite

项目使用 React 构建界面,Three.js 呈现三维场景,Vite 负责开发与构建。

主要代码组织如下:

src/
├── chapter/    图论章节与共享三维舞台
├── topology/   拓扑关卡、数学规则与几何
└── i18n/       多语言文本与运行逻辑

tests/          数学、翻译、界面与打包检查
docs/           截图与开发说明

在实现中,数学规则与视觉表现各自承担明确职责。

场景让结构可见,让操作有反馈;规则判断操作和解题证据是否有效。这样也便于针对数学逻辑进行检查。

当前测试覆盖关卡可解性、图论与拓扑规则、覆盖置换、证明约束,以及多语言和静态打包等内容。

对于数学游戏,除了画面与交互体验,还必须检查关卡表达的数学规则是否可靠。

四、多语言需要覆盖完整的解题过程

目前项目支持简体中文、英文、日文和韩文,可以在旅途菜单中切换。

数学漫游旅途菜单:章节入口、视角操作与四种语言选项

图 2:书页式旅途菜单,集成章节入口、提示、视角操作和四种语言选项。

数学游戏的翻译涉及目标、提示、原理说明和操作反馈。如果这些内容表达不一致,玩家可能会把语言问题误认为数学问题。

因此,多语言需要覆盖完整的解题过程。切换语言时,项目会保留正在进行的解题状态,方便对照阅读。

完成记录和上次选择的关卡保存在浏览器本地。当前版本无需登录或后端服务即可体验;整页刷新后,会重新开始当前关卡。

五、如何在本地运行

如果你想研究实现,或者修改关卡,可以直接克隆仓库:

git clone https://github.com/MartinDelophy/math-valley.git
cd math-valley
npm ci
npm run dev -- --host 127.0.0.1

运行环境需要 Node.js 20+、npm 和支持 WebGL 的浏览器。启动后,访问终端显示的网址即可。

构建与测试:

npm run build
npm test

当前线上版本部署在 Vercel,仓库也保留了 Netlify 部署配置。生产构建发布目录为 dist/client,具体配置可以查看仓库中的部署说明。

六、接下来还想探索什么

数学漫游目前是一个可玩的原型,美术细节和关卡难度还需要继续打磨。

我想继续探索的问题包括:哪些数学概念适合空间交互,哪些适合构造任务,以及怎样设计提示,帮助玩家自己发现规律。

如果你对数学可视化、Three.js 或交互式学习感兴趣,欢迎先体验,再到仓库看看实现:

如果这个方向对你有启发,也欢迎给仓库一个 Star,关注后续更新。

相关文章
|
6天前
|
JavaScript API iOS开发
DeepSeek Harness下载、安装、配置一篇搞定(2026整理,送常用插件)
DeepSeek Harness(DSH)是DeepSeek于2026年开源的MIT协议AI Agent框架,支持插件化组装模型、工具、沙箱与UI,兼容主流大模型。本文提供免Node.js的桌面端安装包(Win/macOS),含详细图文教程及热门插件推荐。
2907 22
|
1天前
|
云安全 人工智能 安全
|
6天前
|
Linux 开发工具 iOS开发
Codex保姆级教程(下载+安装+登录+使用,含所有版本,2026最新)
Codex是OpenAI推出的开源AI编程智能体,本地运行,可理解整个代码库,支持自然语言指令改代码、执行命令、跑测试、修Bug,兼容Win/macOS/Linux。(239字)
|
7天前
|
iOS开发 Docker MacOS
【2026实测】Docker Desktop下载、安装、汉化、配置教程(附官网安装包)
Docker Desktop 是 Docker 官方推出的桌面容器管理工具,集成引擎、CLI、图形界面与 Kubernetes,支持 Win/macOS/Linux。2026 最新版 4.88.1 强化 ARM 原生运行、镜像加速及资源可视化,附中文汉化与国内镜像配置指南。
1281 5
|
云安全 安全 网络安全
|
7天前
|
安全 算法 定位技术
《高性价比人生指南》完整原版:普通人用最少的资源,过好这一生的底层逻辑~How To Live Better
📖《高性价比人生指南》是一份基于实证、拒绝焦虑的生存手册,倡导以“人生时薪”为视角,重新计算时间、金钱与精力的成本与收益。它不承诺逆袭,只教人算清账:省下的钱若耗掉时间便亏;买体验比买物品更值;睡眠是最高杠杆的健康投资;关系贵在情绪价值而非表面热络;学习重在改变行为而非自我安慰。核心理念:用低成本、高回报的微小行动,换取长期的选择权——不是成为谁,而是掌控自己人生的主动权。
|
19天前
|
人工智能 API 开发工具
DeepSeek Harness 神插件:白嫖 13 家大厂模型
`dsh-our-free-model` 是 DeepSeek Harness 神级插件:零配置、零API Key、零账号,聚合13家大厂免费模型(含DeepSeek V4.1 Flash、Kimi K3等),支持本地网关、用量看板与自动降级,真正实现“白嫖即用”。
3396 52
|
12天前
|
人工智能 JSON Linux
【保姆级】ComfyUI部署教程(下载+安装+配置+工作流,2026最新)
ComfyUI 是一款开源节点式AI生成工具,支持图像、视频、音频及3D内容创作。通过拖拽连线组合模型加载、提示词、采样等节点,构建可复用、易修改的工作流,兼容SD1.5、SDXL、Flux、Qwen Image等主流模型。

热门文章

最新文章