☰
Arnis 城市生成器:从零把真实街区搬进 Minecraft 的实用指南
2026/10/21 16:31:42 网站建设 项目流程

Arnis 城市生成器:从零把真实街区搬进 Minecraft 的实用指南

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

你试过在 Minecraft 里手动建一座城吗?三两条街道,就要耗上好几天。Arnis 是一个开源的Minecraft 城市生成器。它下载真实世界的街道、建筑和海拔,自动生成一个可以游玩的世界。你的家乡、欧洲的旧街区、甚至山谷地形,都能被还原出来。

🏙️ 为什么要在游戏里复制一座真实城市

手动放城市,拼的是想象力,也拼体力。真实城市的路网、街区边界、建筑排布都很复杂,一块一块复建是纯时间消耗。这类城市生成器把"手画"变成了"数据生成"。数据来自 OpenStreetMap(OSM),就是那个现实世界的开放街道地图;高程数据则单独被雕刻成 Minecraft 里的地形。源数据越贴近现实,生成结果就越像真的。

  • 街道与建筑- 路网和建筑轮廓按真实地图生成,布局基本可以直接复用
  • 真实地形- 海拔数据变成地貌,不再全是平的平原
  • 树木与道具- 按实际土地利用放置树、车等装饰,场景更完整

上手之后,第一件事是把流程跑通。图形界面是最直白的入口。

⚡ 三步跑通第一次生成

用 GUI 的话,三步就够。先在地图上框一个矩形选区,再选目标世界(Java 或 Bedrock),最后点 Start Generation,等进度条走完就行。整个过程类似"框一张图,然后打印出来"。

图里左侧蓝框就是已选区域,右侧黄色按钮是生成入口。想从源码编译的同学,用这两条命令也能跑起来:

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

第一条拉取源码,第二条编译并启动图形界面,效果和官方发布版一致。

流程通了以后,大概率会想用命令行。那就得先搞懂边界框。

🧭 边界框坐标顺序:最容易踩的坑

命令行模式没有地图可框,得直接给一个边界框(bbox)。它由四个数字按固定顺序组成:min_lat,min_lng,max_lat,max_lng,也就是南纬、西经、北纬、东经。纬度在前,经度在后。很多人数字没写错,顺序却写混了,坐标直接就失效。

截图演示的是在德国一个小镇上选边界框的过程:先框矩形,再从底部 Box 一行复制四个数字。

  • 纬度对- 第一、三个数字,小的在南,大的在北
  • 经度对- 第二、四个数字,小的在西,大的在东
  • 先小范围- 第一次选几平方公里就够,直接圈大片区域会让生成非常久

坐标弄明白了,就可以动参数,让结果更合自己的口味。

🎛️ 五个高频参数,一次讲清楚

城市生成器的参数没有想象中多,这五个能覆盖大多数场景:

  • --scale- 世界比例,1.0 是一格等于一米,调到 2.0 后小镇更好逛
  • --ground_level- 基础高度,默认 -62,接近标准海平面;改成 64 就是在地面生成
  • --mode- 生成模式,geo-terrain 带地形带物体,geo-only 只要平地,terrain-only 只留地形
  • --interior- 打开建筑内部生成,默认建筑只是外壳,进去能看到内部
  • --fillground- 把地形填满,适合不想让地图留洞的场景

想要个两倍比例的世界,可以这样组合:

cargo run --release --no-default-features -- \ --output-dir=world --bbox=48.135,11.555,48.142,11.565 \ --scale=2.0 --ground_level=64

这条命令指定了输出目录、边界框和比例,运行后世界会直接生成到目标目录里。

用几次之后,生成慢、报错这类问题迟早会碰到。

🔍 生成失败或太慢,先查这三处

多数情况不复杂,按顺序看这三处,基本都能定位:

  • 世界路径- --output-dir 要指向有效目录,Java 世界得有 region 子文件夹,否则直接报错
  • 数据源- 在线生成依赖网络,下载不稳时可用 --file 喂本地 OSM 文件,--save_json_file 还能把数据存下来,下次复用
  • 超时与日志- --timeout 调整洪水填充超时,--debug 输出详细日志,方便定位卡在哪

源码里两个目录对应着核心工作:src/element_processing/ 负责把地图元素变成方块,src/elevation/ 负责高程数据获取。想深挖出错原因,先看这里。

🚀 进阶玩法:地形、出生点与多平台

城市生成器的进阶玩法,多半藏在细节里:

  • terrain-only 模式- 只生成真实地形不放建筑,适合自己动手造城的玩家
  • --spawn_lat / --spawn_lng- 指定出生点,不用进图后先找半天路
  • --rotation- 旋转整张地图,范围 -90 到 90 度,能把城市朝向摆正
  • --bedrock / --luanti- 生成基岩版或 Minetest 世界,同一张图换平台玩
  • --max_tree_size- 限制最大树形,配合内置树包,森林比手摆的更接近真实

最后给三点建议:先拿自己家附近的小区域生成一遍,熟悉参数手感,再慢慢扩大边界框。生成前给原世界做个备份,因为这类生成是直接写进世界文件的。不满意就重来,多试几组参数组合,你会对这个工具越来越熟。

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

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

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

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

立即咨询