$ dành cho lập trình viên

Từ OSM sang Minecraft,
chuẩn production.

Engine arnis viết bằng Rust, xem trước trực tiếp bằng BlueMap, cao độ lidar và DEM, xuất bản Java & Bedrock. Được thiết kế như một pipeline chạy một lần ngay từ trình duyệt, không phải món đồ chơi bạn phải tự dựng lên.

arnis-worker
$ generate --bbox 52.37,4.89,52.38,4.91
▸ fetching OSM extract...
buildings=1247 highways=832 waterways=14
▸ arnis generation...
extruding footprints → 48s
▸ terrain bake (3DEP / Mapterhorn)...
elevation samples → 12s
▸ bluemap render...
tiles=256 → port 8102
✓ world ready (2.1 MB)
$ _
Demo trực tiếp · Dạo quanh Chicago

Thử ngay bây giờ — không cần tải, không cần đăng ký

Trung tâm Chicago — tháp Willis, khu Loop, sông Chicago — thành thế giới Minecraft thật, ngay trong trình duyệt của bạn. Dạo phố, bước vào trong các tòa nhà hoặc bay trên mái nhà.

Thấy thích không? Giờ chọn bất kỳ nơi nào trên Trái Đất nhé.

Tạo thế giới của riêng bạn
Đặt cạnh nhau

Thành phố thật, từng khối một

Kéo thanh trượt để so sánh trung tâm Chicago trên bản đồ thật với chính khu vực đó khi được tạo thành thế giới Minecraft.

Góc nhìn từ trên xuống khu Loop của Chicago được tạo thành thế giới MinecraftBản đồ thật của trung tâm Chicago: khu Loop và sông Chicago
Bản đồ thật
Minecraft
Khu Loop của Chicago: mạng lưới đường thật (trái) và thế giới Minecraft được tạo (phải)
// pipeline

Bốn giai đoạn, một cú nhấp

01

Trích xuất OSM

Người dùng chọn một bounding box trên frontend MapLibre. Backend lấy dữ liệu OpenStreetMap cho bbox đó: tòa nhà, đường sá, yếu tố tự nhiên, sông ngòi, tiện ích.

02

Tạo bằng arnis

Engine arnis viết bằng Rust chuyển các đối tượng OSM thành dữ liệu khối Minecraft: nền móng tòa nhà được đùn lên theo chiều cao building:levels của OSM, đường thành lối đi bằng khối, công viên thành biome cỏ.

03

Xử lý địa hình

Cao độ (lidar USGS 3DEP tại Mỹ, mô hình địa hình của Mapterhorn ở nơi khác) được lấy mẫu trên toàn bbox và nướng vào lớp địa hình, còn dữ liệu lớp phủ ESA WorldCover chọn bề mặt, tạo ra địa hình thật: đồi, thung lũng, đường bờ biển.

04

Xem trước + xuất

BlueMap render bản xem trước 3D trực tiếp trên một port riêng cho mỗi job. Người dùng xem trước trước khi trả tiền. Khi mua, thế giới được đóng gói thành thư mục save bản Java hoặc file .mcworld bản Bedrock và gửi đến bạn.

// stack

Xây dựng trên

arnis
Engine tạo thế giới bằng Rust
Mã nguồn mở
BlueMap
Trình render xem trước 3D trực tiếp
Tiến trình con JVM
OpenStreetMap
Nguồn của mọi dữ liệu bản đồ
Giấy phép ODbL
USGS 3DEP + Mapterhorn
Mô hình cao độ
Địa hình thật
Next.js 15
Web frontend + API
Vercel/Railway
Axum + tokio
Dịch vụ worker bất đồng bộ
Backend Rust
Bốn thế giới Minecraft được tạo bởi pipeline của Map2Minecraft

// bốn đầu ra từ cùng một pipeline: thành phố, công viên, ngã tư, đường chân trời

// câu hỏi

FAQ kỹ thuật

Engine nào đứng sau việc tạo thế giới?+
arnis, một công cụ mã nguồn mở viết bằng Rust để chuyển dữ liệu OSM thành thế giới Minecraft. Map2Minecraft chạy một dịch vụ nhiều worker bao quanh nó, thêm quản lý hàng đợi, render xem trước, thanh toán và đóng gói.
Xuất bản Java hay Bedrock?+
Cả hai. Thế giới bản Java được giao dưới dạng thư mục thế giới tiêu chuẩn trong file zip. Thế giới bản Bedrock được giao dưới dạng file .mcworld, nhấp đúp là cài trên mọi nền tảng Bedrock (iOS/Android/Xbox/PS/Switch/Windows 10).
Bản xem trước 3D trực tiếp được render thế nào?+
BlueMap, chạy như một tiến trình con JVM cho mỗi job bên trong một pool port có giới hạn. Việc render là một bước có thời hạn trong pipeline tạo thế giới; sau đó một webserver chạy lâu dài phục vụ các tile .prbm độ phân giải cao cho trình xem nhúng trong luồng Create.
Độ trung thực dữ liệu: mất gì khi chuyển đổi?+
Nền móng tòa nhà là chính xác. Chiều cao phụ thuộc vào việc có thẻ 'building:levels' hoặc 'height' trên OSM hay không: rất tốt ở các thành phố lớn của châu Âu và Bắc Mỹ, thưa hơn ở nơi khác. Biển hiệu, logo và chi tiết nội thất không có trong OSM nên cũng không có trong thế giới. Đường được render thành lối đi bằng khối, không phải bề mặt chi tiết.
Tôi có thể tạo bằng code / qua API không?+
Hiện chưa có API công khai; giao diện web là cách dùng chính. Nếu bạn có nhu cầu thực sự (nghiên cứu, giảng dạy, tích hợp thương mại), hãy liên hệ để chúng ta trao đổi về quyền truy cập.
Tự host được không? Có phải mã nguồn mở không?+
Engine arnis bên dưới là mã nguồn mở và có thể tự host. Map2Minecraft bổ sung lớp dịch vụ, lớp thanh toán, quản lý hàng đợi và pipeline xem trước BlueMap; phần stack này không phải mã nguồn mở.
Đồng thời và giới hạn?+
Việc tạo thế giới bị giới hạn bởi một semaphore worker (hiện tại 2 lượt chạy arnis đồng thời trên một container Railway 8GB/8vCPU). Render xem trước chạy trên một pool port riêng có giới hạn, nên một lần render chậm không chặn hàng đợi tạo thế giới.
// sẵn sàng?

Chạy thôi

Từ bbox đến file thế giới trong chưa đầy 5 phút.

Tạo thế giới