ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

如何把真实城市搬进Minecraft:Arnis指南

如何把真实城市搬进Minecraft:Arnis指南 如何把真实城市搬进MinecraftArnis指南【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis在地图上拖一个矩形框住几个街区几分钟后的Minecraft世界里就会出现带建筑、道路和河流的同款街区。Arnis是一个Rust写的开源工具它拉取OpenStreetMap的地理数据再叠加多源高程数据把真实世界换算成逐方块对应的Minecraft场景适合想重建熟悉地点的玩家也适合需要真实地形的开发者。能力速览三种世界格式Java版1.17、基岩版.mcworld文件、Luanti/Minetest三种生成模式geo-terrain真实高程上放OSM对象默认、geo-only平地城市、terrain-only只生成地形生成比例可调--scale以方块/米为单位1.0 即真实大小可缩小适配手机端建筑轮廓默认用Overture卫星数据补充OSM标注稀疏的区域也能出房子树木使用分地区的schematic树模结合全球林冠高度图判断哪里该长树图像标牌路名、交通标志、公交站点、店招和广告牌分三档开关支持建筑内部结构生成、提高建筑高度上限、为LOD模组烘焙光照还能生成月球和火星地形--body moon/mars使用NASA高程数据从零到第一个世界构建工具克隆仓库并编译发行版。GUI版直接编译默认特性即可命令行版需要去掉默认特性git clone https://gitcode.com/GitHub_Trending/ar/arnis cd arnis cargo build --release编译完成后运行 release 目录下的可执行文件就是图形界面命令行版则用cargo build --release --no-default-features编译生成时传--bbox和--output-dir两个参数即可。框选区域打开GUI在地图上用工具备注的矩形工具拖出范围地图支持缩放、平移和搜索定位。建议先框几个街区的小范围试一次世界更小、生成更快也方便你确认效果是否符合预期。用矩形工具框选生成范围核对参数右侧面板里有比例、出生点、建筑内部等设置命令行里对应--scale、--spawn_lat、--interior等参数。默认比例 1.0 是真实大小如果打算在手机或低性能设备里玩可以调到 0.5 把范围压缩一半。右侧面板调整比例与生成模式等待生成点开始生成后程序先下载OSM与高程数据再依次搭地形、放建筑植被进度条会分段显示。完成后世界文件直接写入输出目录Java版就是.minecraft/saves下多出一个存档进游戏后能看到和真实世界一致的道路走向与水系。生成结果街区、道路与水体技术亮点拆解解析层先做减法OSM原始数据里大量标签created_by、wikipedia 之类根本不影响生成。src/osm_parser.rs 在解析阶段就过滤掉这些标签并把跨越边界的 way 裁剪到边界框内内存和后续计算量因此能控制在可接受范围。对你意味着生成城市级范围时机器不容易先被内存拖垮。高程数据按区域挑选地形是最容易露馅的部分。src/elevation/ 模块不依赖单一数据源src/elevation/providers/ 里内置了 Mapterhorn、USGS 3DEP、AWS Terrain Tiles 等多个供应商由选择器按区域挑合适的源后处理阶段再统一处理离群值、空缺和地形异常最后把米换算成Minecraft的Y坐标。得到的是河谷真的是河谷、街道坡度大致对得上的地形而不是一层平滑的塑料板。建筑由标签推导立面src/element_processing/buildings.rs 从OSM标签推导建筑年代、材质和破损状态再交给立面规划模块决定窗户、入口和风格类别historic 建筑走单独的处理分支。效果是十九世纪的砖砌老楼和现代办公楼不会生成出同一种外观街区因此有了年代感的区分。场景延伸地理课1:1重建校园周边把学校所在片区按真实比例生成课堂上让学生在游戏里认街道、河道和绿地。地图与现实一一对应学生还能从教室走回家比在课本上读地图直观得多。规划沙盘在纯地形上比较方案用 terrain-only 模式先只生成真实地形再在上面摆自己的方案建筑想对照现状时用 geo-only 生成原版城市叠在旁边看差异。成本极低改一轮方案的周期从几天缩到几分钟。地图工坊拿真实城市打底做Mod地图的创作者常用它生成真实世界基底再叠加游戏专属元素。加--map_preview参数可以在动工前导出一张俯视PNG先确认整体布局再动手避免返工。调参与排坑几条常用调参建议完整参数清单见 src/args.rs--scale 0.5整体缩小一半适合手机设备或想让同一区域显得更紧凑--mode geo-only地形不满意或想省时间时生成平地城市默认 geo-terrain 是对象真实高程的组合--max_tree_size tall限制树的最大高度避免巨型树压倒整个街区--signage full则加上店招和门牌号高频问题建筑比现实少该区域的OSM数据本身没标全 → Overture卫星轮廓补充默认已开启如果仍然缺说明那片地方在地图数据里就是空白调生成参数救不回来只能等数据完善。地形太平或有空洞不同区域的高程源分辨率差别较大 → 生成日志里能看到实际用了哪个数据源必要时用--aws_only_elevation切换回全球覆盖的源后处理已负责填平离群值和空缺仍有问题基本是源覆盖不足。生成时内存吃紧大范围的网格与洪水填充缓存src/floodfill_cache.rs会占用可观内存 → 把大区域拆成几个小 bbox 分别生成再手动拼接或者先 terrain-only 看地形、确认没问题后再生成完整对象。游戏里找不到世界--output-dir指向的就是世界目录本身Java版不是世界目录的父目录 → 检查是否传成了.minecraft/saves而不是.../saves/世界名基岩版输出是 .mcworld 文件需要导入。收尾回到开头那个场景把矩形框拉到你住的那条街上等几分钟游戏里就能走回同一条街、同一条河。建议就从你住的那条街开始试熟悉手感后再把范围扩到整个城区。遇到问题或想加功能按仓库文档里的模块划分直接提 issue 或 PR 就行。Arnis 是开源项目非 Mojang 或 Microsoft 官方产品。【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表