← 返回文章列表

Arnis 将地球上的任何地方变成 Minecraft 世界

从两周写出的原型,到能生成月球与火星 Arnis 是一个开源项目,它把 OpenStreetMap 等来源的真实世界数据,转换成可以在 Minecraft 中自由探索的世界。维护者 Louis Erbkamm 回忆,早期版本用 Python 手写,只接入 OpenStreetMap,生成一座小镇相当耗时。为了测试,他挑选了德国的小镇 Arnis——项目便沿用

文章封面

从两周写出的原型,到能生成月球与火星

Arnis 是一个开源项目,它把 OpenStreetMap 等来源的真实世界数据,转换成可以在 Minecraft 中自由探索的世界。维护者 Louis Erbkamm 回忆,早期版本用 Python 手写,只接入 OpenStreetMap,生成一座小镇相当耗时。为了测试,他挑选了德国的小镇 Arnis——项目便沿用了这个独特名字。官方介绍提到,项目的 GitHub 下载量已接近 90 万次,贡献者约 70 人,并被翻译成约 20 种语言。

改变是逐步发生的:加入高程数据后,生成的地形不再是一马平川,来自各地的地理爱好者开始主动讨论如何把高程更好地整合进来;在把代码从 Python 移植到 Rust 之前,Louis 同样在 GitHub 上公开征集意见。此外,后续版本的地形范围已经延伸到地球之外,加入了月球和火星。

数据如何变成方块

流程并不复杂。用户选定区域后,Arnis 向 OpenStreetMap 查询该范围内所有已标注的要素,读取每个要素的坐标与类型,再据此摆放方块。对于地图无法描述的精细结构,例如纽约的自由女神像、里约热内卢的基督像,Arnis 会把 3D 模型转换成 Minecraft 方块。

这条链路也解释了它的能力边界:凡是 OpenStreetMap 上没有标注的要素,Arnis 就无法放置。一个小例子是垃圾箱——Louis 发现自己的城市里有不少垃圾桶,而生成的世界里一个都没有;Minecraft 没有专门的垃圾桶方块,他便把问题抛给社区,最终一起找到了合适的替代方块。

适用的场景

  • 课堂教学。Louis 最喜欢的用法是在学校:教师生成所在城市或一处社区公园,然后把生成结果变成竞赛——所有学生从同一片生成区域出发,用 Arnis 和 Minecraft 改造附近的公园或游乐设施,最后全班一起查看各自的作品。
  • 个人探索。从地图上选一个你熟悉的地方,生成后在世界里走走,寻找“少了什么”。

目前的限制

作为唯一的维护者,Louis 需要亲自审阅每一个拉取请求,这些请求会堆积起来。他通常在晚上或周末处理项目,社区因此需要等待。

生成性能对细节很敏感。以路灯为例,只要有一处计算出错,就可能让整座城市的生成时间大幅变慢。为了排查这类风险,他会在 GitHub Copilot 应用中打开大型拉取请求做整体概览和性能评审,并让其在后台寻找可降低内存占用或生成耗时的改动;同时,他也在尝试启动若干子代理,专门检查需要格外小心的代码区域,补充边界用例,避免新版本引入回归问题。他表示,把这些繁琐工作交给 Copilot 之后,自己可以腾出精力看更核心的开发议题,而代码评审和文档的产出都有增加。

此外,成果质量直接受制于 OpenStreetMap 的标注密度:地图上缺什么,世界里就缺什么。

如何上手

从 github.com/louis-e/arnis 下载,在地图上选一个地点,指定出生位置,点击 Start Generation,几分钟后世界即可在 Minecraft 中打开。Louis 建议挑一个你有印象的地方,比如家乡,或者大峡谷、尼亚加拉瀑布这样到过的地方。接着留意生成结果里缺失的细节——可能是一张实际存在却没被生成的长椅。你可以在 OpenStreetMap 上补上标注,或者把这个问题当作缺陷反馈给维护者。

接下来的方向

Louis 希望 Arnis 在持续贴近现实的同时保持易用:细节更丰富、生成更快,并进入更多学校。他的表述很直接——社区中来自不同领域的人聚在一起,共同推进一个最初只是业余项目的作品,是他遇到的最好的事情。

资料来源:Arnis turns any place on Earth into a Minecraft world(2026-11-03)。

相关文章

AI民间故事写作:轻松日更300+Zero Wire:聚焦关键互联网漏洞研究的平台看见智能体,明确规则:个人智能体迎来新的可见性与控制能力Amazon Quick 智能审批:在关键环节落实人工监督

一起聊聊

留下你的想法,评论审核通过后展示。