怎么把真实城市搬进 Minecraft?Arnis 手把手带你跑通 3 个关键场景
【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis
Arnis 读取 OpenStreetMap 和真实高程数据,把街道、建筑和起伏地形搬成 Minecraft 世界,这就是 Minecraft 真实城市生成。如果第一次生成卡在"参数太多不知道填什么",往下看。
用最小参数跑通第一次生成
GUI 是最省心的路:下载 release 包,用矩形工具框住一片街区,选好世界目录,点 Start Generation 就完事。
命令行只需要两个参数:--output-dir指向世界目录(不存在会自动创建,--path是旧别名),--bbox按 最小纬度,最小经度,最大纬度,最大经度 给范围。clone 下来直接编译运行:
git clone https://gitcode.com/GitHub_Trending/ar/arnis cd arnis cargo run --release --no-default-features -- \ --output-dir=~/mc/hometown --bbox="48.123,11.548,48.129,11.562"默认模式 geo-terrain 就是"建筑 + 真实高程",不加任何参数正是大多数人的目标结果。
进阶可选:
--mode geo-only— 对象铺在平地上,省掉高程抓取(默认 geo-terrain)--mode terrain-only— 只要地形不要建筑,跳过全部 OSM 查询--bedrock— 输出 Bedrock 的 .mcworld,路径必须是已存在目录
从地图里抠出正确的 bbox
很多人第一版效果不对,第一反应是去调 scale;其实八成是 bbox 框歪了或框大了。先把区域选对,再谈参数。
bbox 最稳的拿法:在 OpenStreetMap 的 bbox finder 里用矩形框选,状态栏直接给出四个数,复制进--bbox即可。
为什么强调框小一点:同样的区块数,bbox 越小细节密度越高。框下整个城区,建筑会被压成 1×1 的柱子;scale 低于 0.3 时 Arnis 直接放弃对象、只留地形。
--spawn-lat/--spawn-lng— 出生点,必须落在 bbox 内、成对出现--rotation— 顺时针旋转 -90 到 90 度,把主干道对齐正方向(默认 0)
把生成细节调到满意
影响最大的就两个开关:--interior和--scale。
先纠正一个常见误解:--interior默认是关的,不写就没有建筑室内;老参数--terrain现在是空操作,地形默认就开。
在最小命令上追加这两个参数:
cargo run --release --no-default-features -- \ --output-dir=~/mc/hometown --bbox="48.123,11.548,48.129,11.562" \ --scale=2.0 --interiorscale是每米多少格:1.0 为真实尺寸,有效范围 0.05 到 4.0,超界直接拒绝——1 平方公里就要烧掉几个 GB 和几个小时。
--signage full— 路牌之上加店铺招牌和门牌号(默认 basic)--no-3d— 关掉全部 3D 模型和道具,明显提速(默认开)--overture=false— 关掉 Overture 补漏标建筑,映射稀疏区很实用(默认开)
排查生成失败的三个高频坑
校验逻辑在 src/args.rs,报错大多在抓数据之前就拦下来了,读报错比盲目重试有效:
- scale 非法— 必须是 0.05–4.0 的有限数,NaN 和超范围在解析期就被拒
- 组合冲突—
--bedrock和--luanti不能同用;--mode terrain-only会忽略--file,此时--bbox仍必填;Java 模式漏写--output-dir直接报错 - 取数卡住— 下载不稳换
--downloader curl;已有本地数据用--file area.osm,再配--save_json_file把这次数据存下来复用
还卡住就加--debug看完整日志,洪水填充超时用--timeout 秒数放宽;某个标签为什么没被识别,去 src/element_processing/ 里搜比翻文档快。
现在框一个 2km×2km 的街区跑通第一版,参数记在笔记本里,再回来调 scale 和 interior。
【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考