news 2026/9/9 15:58:56

如何把真实城市搬进 Minecraft:Arnis 从框选到生成的完整流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何把真实城市搬进 Minecraft:Arnis 从框选到生成的完整流程

如何把真实城市搬进 Minecraft:Arnis 从框选到生成的完整流程

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

在地图上圈出一块几平方公里的城市,几分钟后,Minecraft 里就出现了同样布局的街道、楼宇与河床,你可以直接走进去。这就是 Arnis,一个把 OpenStreetMap 与高程数据转成可进入世界的 Minecraft 城市生成工具。

它能做到什么

  • 复刻家乡街道:建筑轮廓与路网来自真实的 OSM 数据
  • 地标按城市尺度生成:埃菲尔铁塔、自由女神像这类场景会落成可穿行的 Minecraft 城市
  • 真实地形加双端支持:高程数据负责山峦与水系,Java 1.17+ 与 Bedrock 都能生成

准备:环境要求与安装方式

项目要求
系统Windows / macOS / Linux
客户端Minecraft Java 1.17 以上,或最新版 Bedrock
存储至少 10 GB 可用空间,区域越大占得越多

三种安装方式,各留一行最短可用命令:

  1. 预编译包:从官方发布页下载对应系统的安装包,解压即用,无需编译
  2. Nix:一行命令直接运行,适合已装好包管理器的环境
  3. 源码:克隆仓库后用 cargo 构建,适合开发者
git clone https://gitcode.com/GitHub_Trending/ar/arnis nix run github:louis-e/arnis

主流程:框选区域生成世界

🗺️ GUI 四步完成一次生成:

  1. 搜索城市:顶部搜索框输入城市名,地图跳转过去,也可以用加号逐级放大
  2. 框选区域:左侧工具栏选矩形工具,拖出一个蓝色选区
  3. 填世界名:右侧输入世界名称,选 Java 或 Bedrock,点齿轮还能调比例尺、出生点等选项
  4. 开始生成:点击 Start Generation,等进度条走到 100%

等价的命令行写法与 GUI 做的事相同,只是把选区换成 bbox 参数:

cargo run -- --output-dir=~/saves/MyCity --bbox="35.65,139.70,35.72,139.80"

进阶调参:bbox 参数怎么写与生成选项

🧩 Arnis bbox 参数是四元组,顺序为“西南角纬度、西南角经度、东北角纬度、东北角经度”。示例 35.65,139.70,35.72,139.80 对应东京市中心的一个矩形。

  • --mode:默认 geo-terrain 把 OSM 对象放在真实高程上;geo-only 只放平地;terrain-only 只出地形、不放对象
  • 水体与道路:OSM 里的湖泊河流会自动变成 Minecraft 水体,路网按真实道路数据铺设
  • 室内生成:加--interior会在建筑内部生成房间分隔与家具,适合想进楼里看看的场景
cargo run -- --output-dir=~/saves/MyCity --bbox="35.65,139.70,35.72,139.80" --interior

排障:生成慢、建筑缺失、版本不兼容

  • 生成慢
    • 现象:进度条半天不动,或比预期慢很多
    • 原因:首次生成要下载地理与高程数据,区域越大耗时越长
    • 处理:初次区域控制在 2 km × 2 km 以内,更大的范围拆成几次生成
  • 建筑缺失
    • 现象:城市里某些街区只有空地
    • 原因:OSM 在偏远地区的覆盖偏稀疏,缺少建筑轮廓
    • 处理:先在 OSM 地图上核对覆盖情况;默认的 Overture Maps 补充会填回一部分
  • 版本不兼容
    • 现象:世界打不开,或个别方块显示不对
    • 原因:方块与特性在不同版本之间有差异
    • 处理:Java 用 1.17 以上,Bedrock 用最新稳定版;先升级客户端再试

性能:硬件配置与三个提速点

组件最低推荐
处理器四核 2.0GHz六核 3.0GHz 以上
内存8 GB16 GB
存储10 GB 可用空间50 GB 以上,优先 SSD

⚡ 三个提速点:

  1. 分块生成:把大范围拆成几小块,分别生成后再合并,避免一次性卡住
  2. 数据缓存:地理数据下载后会缓存,重跑同一区域会快很多
  3. 多线程:程序并行处理多个区块,多核 CPU 能直接用上

还能怎么玩

  • 教育:让学生在 Minecraft 里查看真实地形与城市布局,适合地理课
  • 服务器地图:生成一座真实城市,直接作为多人服务器的底图
  • 规划预览:按 1:1 尺度查看新建筑方案,评估它对街景的影响

资源导航

  • 示例与逻辑:tests/map_transformation/ 有地图变换的输入输出样例;室内生成逻辑在 src/element_processing/subprocessor/buildings_interior.rs
  • 项目配置:Cargo.toml 管理依赖,tauri.conf.json 管理桌面窗口与 GUI
  • 社区与许可:问题与功能建议到项目 Issues 页提交;代码以 Apache 2.0 许可发布,详见 LICENSE

官方 wiki 提供更细的技术文档与 FAQ。建议你先拿家乡的一小块区域试起手,熟悉流程后再慢慢扩大范围。

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/9 15:54:52

用Rust手写轻量级2D物理引擎:碰撞检测与约束求解实战

最近在做一个小的游戏项目,碰撞检测和物理响应的效果一直不理想。要么是物体直接穿透,要么是堆叠时抖得跟筛子似的。后来干脆自己动手写了一个轻量级的2D物理引擎,用Rust实现。之所以选Rust,一开始纯粹是想练练这门语言&#xff0…

作者头像 李华
网站建设 2026/9/9 15:54:23

ZYNQ7010 UART串口调试全攻略:从PS到PL的完整实战指南

简介:ZYNQ7010的UART串口程序是一套基于Vivado 2017.1开发环境、面向Zynq-7010 SoC的完整串口通信工程,适合嵌入式开发者和FPGA学习者在PS与PL协同开发中理解UART中断收发机制。压缩包共1146个文件、约21.08MB,以h/c源代码、v/vhd硬件描述文件…

作者头像 李华
网站建设 2026/9/9 15:51:40

SEO工作计划评估与优化:用数据和复盘驱动排名与流量增长

做SEO这行这些年,我带过不少项目,也看过很多团队的工作计划。最深的感触是:大家不是不会做计划,而是做出来的计划根本没法评估。月初雄心壮志列了二十条任务,月底一看排名没动、流量没涨,然后就开始互相甩锅…

作者头像 李华
网站建设 2026/9/9 15:50:57

Windows远程连接失败排查:从RDP到VNC的高频问题与解决思路

上个月帮客户处理一台 Windows Server 2016 的远程桌面连接问题,端口、防火墙、用户权限全部过了一遍,眼看都要放弃了,最后发现竟然是组策略里的 CredSSP 加密 Oracle 修正没开。当时就靠一个报错对话框来回试,Windows 远程失败这…

作者头像 李华
网站建设 2026/9/9 15:50:43

NAS不是刚需?家庭私有云搭建指南:选型、避坑与实战

算不算扯淡?我直接说结论:对大部分家庭来说,NAS不是刚需,但它是提高数字生活幸福感最值得的一笔投入。这个结论不是我拍脑袋,是二十多年跟硬盘、服务器、数据备份打交道攒下来的。很多人一听NAS就头大,觉得…

作者头像 李华
网站建设 2026/9/9 15:50:12

Linux下安装Postman tar.gz包完整指南:从解压到桌面集成

简介:Postman-linux-x64-7.0.9.tar.gz 是 Postman 7.0.9 针对 Linux 64 位系统的官方压缩包,面向后端开发、测试工程师及 API 设计人员,用于构建、发送与调试 HTTP 请求,覆盖 RESTful、SOAP 等常见接口场景。包体采用 tar.gz 格式…

作者头像 李华