
如何把城市变成《我的世界》方块世界——Arnis上手笔记【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis进度条爬到 100%世界文件出现在保存目录里。启动 Minecraft 走到出生点能看到和昨天卫星照片上一模一样的河道、一片屋顶和一栋高架桥。这是 Arnis一个把真实城市还原为《我的世界》方块地形的工具。看看 Arnis 能生成什么区域选择输入是网络地图上任意一个矩形过程是自动拉取该区域的 OpenStreetMap 要素和高程网格输出是一套可供放置方块的 Minecraft 位置与高度信息。地形生成输入是高程网格过程按真实地势逐层摆放方块输出是能复现真实坡度、河道与海岸线的起伏世界。建筑还原输入是 OSM 里的房屋、道路、铁路、树木等要素过程把每个要素翻译成对应的方块组合并对齐到真实位置输出是街名与地标都能认出来的城市。多版本输出输入是一次生成任务过程按 Java、Bedrock 或 Luanti 的方块格式写入输出是能直接被客户打开的世界文件其中 Java 版要求 1.17 及以上。四种能力串成一条流水线主界面里可以一次看全拆开坐标投影机制投影解决什么问题经纬度在球面上方块在平面上而且同样一个经度差纬度越高对应的实际距离越短。直接拿差值乘系数东西向和南北向会不成比例生成的地图会被拉扁。Arnis 的做法是先用 Haversine 公式把矩形对角换算成南北、东西两个实际米数再乘以比例尺方块/米默认 1:1得到世界的方块宽度和深度。数据流与最小例子数据流向一句话讲清选区LLBBox先被geo_distance换成南北、东西两个实际距离再乘比例尺得到方块宽高。随后每个要素的经纬度按矩形内相对位置换算成方块坐标交给写世界模块逐块落盘。本地模式下每次生成都从 (0,0) 起步如果换成 Web Mercator 投影坐标就变成一套全球连续的坐标系同一城市分几次生成也不会相互错位。rel_x (lng - lng_min) / (lng_max - lng_min) rel_z 1 - (lat - lat_min) / (lat_max - lat_min) x rel_x * 方块宽 z rel_z * 方块深核心只有两个相对位置纬度项之所以做 1-z 翻转是因为 Minecraft 里 z 越大越往南与纬度增大的方向正好相反。拿慕尼黑一带举例min_lng11.50、max_lng11.52、min_lat48.12、max_lat48.14Haversine 算出东西约 1830 米、南北约 2225 米对应世界约 1830×2225 个方块一栋位于 (11.51, 48.13) 的建筑就落在第 915、1112 个方块附近。全部逻辑在src/coordinate_system/投影策略抽象在src/projection/。跑通一次我的世界城市生成流程启动主程序执行cargo run --release或直接使用发布页的二进制——标志左侧出现地图、右侧出现 Create World 面板的界面。把地图缩放到目标城市用顶部搜索框输入城市名或手动缩放——标志地图上的街道和河流名清晰可读。用矩形工具框出区域点左侧矩形按钮后在地图上拖动——标志出现选区框面板里显示该区域的坐标范围。选择版本并开始生成面板里选中 Java 或 Bedrock点 Start Generation——标志提示变绿进度条从 0% 开始走。用 Minecraft 打开世界进度到 100% 后在启动器里双击世界——标志出生点能看到该区域的真实街道与建筑。✅如果卡在数据下载阶段先检查网络能否访问 OSM 服务器网络受限时可以手动下载该区域的 .osm 文件再用命令行--file参数离线跑。判断它适不适合你的场景Arnis 适合想在 Minecraft 里按真实城市搭大地图的人做熟悉的街区、大学校园或某个地标时保真度和体量都比较均衡。如果只想要平地模型、不关心真实地形把模式切到--mode geo-only能明显缩短生成时间。git clone https://gitcode.com/GitHub_Trending/ar/arnisclone 下来建议先用 1 平方公里左右的小区域默认 1:1 比例跑通一次完整流程确认没问题再扩大范围。【免费下载链接】arnisGenerate any location from the real world in Minecraft with a high level of detail.项目地址: https://gitcode.com/GitHub_Trending/ar/arnis创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考