3d.city · lo-th/3d.city
3d.city 是一个开源的全 3D 城市建造游戏,直接在浏览器中运行,提供 WebGL2 与 WebGPU 两个版本入口。项目使用 Three.js 负责实时 3D 渲染,包含自制着色器、贴图与模型;城市模拟部分基于 micropolisJS(源自初代 SimCity 源码的模拟引...
3d.city 是一个完全开源的 3D 城市建造游戏,它最大的特点是无需下载、无需安装,只要打开浏览器标签页就能直接开始建设你的城市。项目同时提供 WebGL2 与 WebGPU 两个版本入口,玩家可以根据自己浏览器的支持情况自由选择。
从定位上看,3d.city 并不是一个已经完成度极高的商业级作品,而是一个持续演进中的长期项目。作者在 README 中明确表示,长期愿景是把它发展成功能更丰富的城市建造游戏。当前版本号为 v1.0.0,已经具备可玩的核心循环,同时也在路线图中列出了后续要完善的方向。
项目采用 MIT 许可证,代码与美术资源(自制着色器、贴图、3D 模型)均开放,适合对浏览器 3D 游戏、城市模拟或 Three.js 实践感兴趣的开发者研究。
3d.city 的技术栈可以清晰地拆成「渲染」与「模拟」两条线:
这种「渲染与模拟分线程」的架构,是浏览器端模拟经营类游戏值得参考的设计思路。
游戏的目标是建造并经营一座 3D 城市。README 中提供了一张「Mini tutorial」示意图,帮助新玩家快速了解基本操作。虽然 README 没有逐条列出操作说明,但从项目性质可以推断,玩家需要在 3D 场景中进行地块规划、建筑放置等城市建造的常规操作。
由于模拟引擎继承自经典 SimCity 系,玩家可以期待相对完整的城市模拟反馈,而不是单纯的摆模型。具体操作细节建议直接进入游戏内体验,或参考项目主页的教程图片。
作者在 README 的 Roadmap 部分列出了后续计划,这些内容反映了项目当前仍在打磨的方向:
可以看出,项目在基础玩法之外,正朝着氛围表现与系统完善两个方向推进。
3d.city 的游玩方式非常直接:访问项目主页提供的两个入口之一即可。
README 没有提供本地构建步骤,项目以在线可玩为主要分发形式。如果希望研究源码,可以直接克隆仓库,但具体构建流程需以仓库内实际文件为准,README 未作说明。
对于想从 3d.city 中学习的开发者,可以重点关注以下几个方向:
由于项目仍在演进,阅读源码时建议结合当前版本状态,避免把路线图中的计划误认为已实现功能。
Endless Sky 是一款 C++ 编写的 2D 沙盒式太空探索游戏,玩法接近 Elite、Esc...
micropolisJS 是把 Micropolis(开源版《模拟城市》类城市模拟游戏)移植到 J...
Unknown Horizons 官方代码仓库,使用 Python 开发。据 README,这是一款 2D...