把家乡变成 Minecraft 地图的 Arnis:从数据到生成的完整指南
2026/9/10 20:57:00 网站建设 项目流程

把家乡变成 Minecraft 地图的 Arnis:从数据到生成的完整指南

【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis

Arnis 是一个用 Rust 编写的开源工具,能把真实世界的任意地点变成 Minecraft 实景地图。它从 OpenStreetMap 拉取矢量数据,再结合多路高程数据源生成 Java、基岩版或 Luanti 世界。下面这份实测记录讲它适合做什么、怎么跑起来、以及哪些参数值得动。

📍 在游戏里复刻一条真实街区

想象打开游戏就能沿着自己住的街走一圈:路口在正确的位置拐弯,那栋商场还是五层,河湾的形状和实景一致。Arnis 做的就是这件事。它通过 Overpass API 向 OpenStreetMap 查询建筑轮廓、道路等级、水体和植被等要素,入口在 src/retrieve_data.rs;随后从多个高程数据源取回真实地形,由 src/elevation/providers/ 里的各模块按精度分工处理。坐标换算后按"1 方块约等于 1 米"落位,产出的地图可以对照实景逐条核验,而不是随机生成的"城市感"。

🖥️ 装完就能生成

最省事的路径是从官方 release 下载打包好的程序直接运行。想自己编译的话,下面三步即可:

git clone https://gitcode.com/GitHub_Trending/ar/arnis cd arnis cargo run --release

启动后图形界面是主线操作:在地图上画一个矩形框,右侧设置输出格式和几个可选项,点"开始生成"。跑完后输出目录里就是一个能直接玩的世界——Java 版是世界文件夹,丢进 .minecraft/saves 即可;基岩版生成 .mcworld 文件;Luanti 则是 map.sqlite。只用命令行的话,给出--output-dir--bbox(最小纬度,最小经度,最大纬度,最大经度)两个参数,结果与界面完全一致。

🧱 建筑、道路、地形分别来自哪里

建筑是最直观的产出:OSM 里的建筑数据决定轮廓和层高,墙体材质、窗户、屋顶样式在 src/element_processing/buildings.rs 中处理。OSM 覆盖薄的区域,默认会启用 Overture Maps 补充,用卫星反推的建筑轮廓填补缺口。道路按 highway 标签分级:主干道、支路、人行道分别得到不同宽度与材质。地形完全由高程数据驱动,不同地区自动选用不同精度的数据源,默认地面高度落在 Y=-62。

植被和道具是另一条线:仓库内置了非洲、欧洲、北美等七个区域的树库,可以限制单棵树的尺寸上限;汽车、吊车、船只等以 schem 文件随包附带。如果还想关掉在线 3D 模型(来自 Wikimedia 和 3DMR),一个--no-3d就能全部禁用。

⚙️ 哪几个参数最值得调

--scale决定每米占几个方块,默认 1.0 即真实大小,可用范围 0.05 到 4.0。数值越大细节越足、生成越慢。街区级别建议保持 1.0;面积到几平方公里以上,降到 0.5~0.75 更稳妥,否则耗时和内存会成倍上涨。

--mode有三档:geo-terrain 是默认值(对象+真实地形),geo-only 在平地上生成对象,terrain-only 只生成地形。只要城市不要起伏,或只要地貌不要建筑时,选对应档位可以省掉一半数据抓取。

--interior控制是否生成建筑内部,默认关闭。想真正走进屋里就用它,代价是生成时间明显变长。

--signage控制路牌密度:默认 basic 出街道名和交通标志,full 额外生成店招与门牌号,none 则一张牌都不放。

🕳️ 容易踩的四个坑

选区过大且 scale 保持 1.0,是最常见的失败原因:要么内存先爆,要么挂着等几小时。先把矩形框缩小,或先降 scale 验证流程,再考虑放大。

某片区域建筑缺失时,先看当地 OSM 数据是否本来就稀疏。Overture 补充默认是开着的,如果你为怕"卫星误检"把它关了,遇到缺楼再打开即可。

高层建筑群可能撞上限高,楼顶被裁掉。Java 1.21.4 及以上可以用--disable-height-limit放开高度上限,但它属于实验功能,生成前要留好时间。

地形看着平淡或块状明显时,先确认没有误选 geo-only(它本来就是平地),也别开--aws_only_elevation用约 30 米精度的粗数据做细活。

它适合三类人:想在游戏里重走一遍家乡的普通玩家、需要真实地形底图的地图作者、以及做地理展示或规划演示的用户。主要限制在于结果上限取决于当地 OSM 的数据质量,大面积生成对时间和内存的要求会线性上升,另外它并非 Mojang 官方产品,安装只走官方渠道。

【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询