3 पॉइंट द्वारा GN⁺ 2025-01-01 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Arnis एक मुफ्त open source प्रोजेक्ट है जो वास्तविक भूगोल, स्थलाकृति और वास्तुकला को दर्शाने वाले Minecraft Java Edition 1.17+ और Bedrock Edition वर्ल्ड बनाता है
  • इसका generation algorithm OpenStreetMap geospatial data और elevation data को प्रोसेस करके Minecraft के भीतर terrain और buildings को अधिक सटीक रूप से पुनर्निर्मित करता है
  • उपयोगकर्ता मैप पर rectangle tool से क्षेत्र चुनकर, Minecraft वर्ल्ड चुनने के बाद Start Generation दबाकर generation शुरू कर सकते हैं; world scale, spawn point और building interior generation जैसी settings भी बदली जा सकती हैं
  • बिना install किए ब्राउज़र में वर्ल्ड बनाना हो, या बड़े map size और mobile generation चाहिए, तो MapSmith का उपयोग किया जा सकता है
  • आधिकारिक डाउनलोड स्रोत केवल arnismc.com और GitHub repository हैं; अन्य वेबसाइटों पर Arnis डाउनलोड अनौपचारिक हैं और malicious हो सकते हैं

Arnis से बनने वाले Minecraft वर्ल्ड

  • Arnis ऐसे Minecraft वर्ल्ड बनाता है जो वास्तविक दुनिया के भूगोल, स्थलाकृति और वास्तुकला को दर्शाते हैं
    • यह Minecraft Java Edition 1.17+ और Bedrock Edition को सपोर्ट करता है
    • आप अपने hometown, बड़े शहरों या प्राकृतिक दृश्यों जैसे वास्तविक क्षेत्रों को Minecraft वर्ल्ड में बदल सकते हैं
  • यह प्रोजेक्ट बड़े पैमाने के वास्तविक geospatial data को संभालने के लिए डिज़ाइन किया गया एक मुफ्त open source टूल है
  • generation process में OpenStreetMap के geospatial data और elevation data दोनों का साथ में उपयोग होता है
    • लक्ष्य terrain और buildings का Minecraft में अधिक सटीक representation बनाना है

उपयोग का तरीका

  • उपयोगकर्ता latest release डाउनलोड कर सकते हैं या सीधे build कर सकते हैं
  • GUI में मैप पर rectangle tool से इच्छित क्षेत्र चुनें, Minecraft वर्ल्ड निर्दिष्ट करें, फिर Start Generation पर क्लिक करें
  • generation settings में कई विकल्प समायोजित किए जा सकते हैं
    • world scale
    • spawn point
    • building interior generation
  • अगर mobile generation या बड़ा map size चाहिए, तो MapSmith ब्राउज़र में बिना install किए वर्ल्ड generate करता है

दस्तावेज़ और विकास लक्ष्य

  • पूरा documentation GitHub Wiki पर उपलब्ध है
    • तकनीकी विवरण
    • FAQ
    • contribution guidelines
    • roadmap
  • प्रोजेक्ट के मुख्य लक्ष्य modularity, performance, documentation, usability और cross-platform support हैं
    • data import, processing और world generation को स्पष्ट रूप से अलग रखकर maintainability और extensibility बढ़ाने का प्रयास है
    • तेज़ world generation के लिए performance optimization पर ज़ोर दिया गया है
    • code के अंदर documentation के जरिए structure और logic को स्पष्ट बनाने का लक्ष्य है
    • end user के लिए आसान उपयोग अनुभव देना उद्देश्य है
    • लक्ष्य है कि यह Windows, macOS और Linux पर सुचारु रूप से चले

build और contribution

  • प्रोजेक्ट bug fix, performance improvement, नई features और documentation सुधार सहित हर स्तर के contribution स्वीकार करता है
  • contribution process में repository को fork करना, बदलाव करना और फिर pull request जमा करना शामिल है
  • command line build का उदाहरण:
    • cargo run --no-default-features -- --terrain --path="C:/YOUR_PATH/.minecraft/saves/worldname" --bbox="min_lat,min_lng,max_lat,max_lng"
  • GUI build इस कमांड से चलाया जाता है
    • cargo run
  • Nix उपयोगकर्ता इसे इस तरह सीधे चला सकते हैं
    • nix run github:louis-e/arnis -- --terrain --path=YOUR_PATH/.minecraft/saves/worldname --bbox="min_lat,min_lng,max_lat,max_lng"
  • pull request merge होने पर बदलाव नियमित update releases में शामिल किए जाते हैं

पहचान, लाइसेंस और आधिकारिक स्रोत

1 टिप्पणियां

 
GN⁺ 2025-01-01
Hacker News की राय
  • यह बात सच में अच्छी है कि OpenStreetMap ecosystem ऐसे परिपक्व tools देता है जिनसे कोई भी geospatial data इस्तेमाल कर सकता है
    10 साल से भी पहले मैंने Cities in Motion 2 के लिए city generator, open source project maps4cim बनाया था, जिसमें सड़कों और buildings के लिए OSM data और elevation के लिए NASA SRTM data इस्तेमाल किया था
    OSM कहीं ज़्यादा जटिल है और data भी रोज़ बदलता है, लेकिन Overpass API को वही query भेजें तो आज भी latest data अपेक्षित format में मिल जाता है
    इसके उलट NASA ने किसी समय public domain SRTM data की public access बंद कर दी और उसे registered users के लिए ही उपलब्ध एक non-REST web service के पीछे छिपा दिया
    अगर data मुफ्त और आसानी से उपलब्ध न होता, तो मैं शुरुआत में ऐसा open source project शुरू ही नहीं करता; और entry barrier बनते ही हम वे सारे अच्छे tools खो देते हैं जो दिग्गजों के कंधों पर बन सकते थे
    उम्मीद है OSM जैसे open data की भावना को सच में लागू करने वाले projects और मज़बूत होंगे
    1: https://github.com/Klamann/maps4cim
    • योगदान देना भी हैरानीजनक रूप से आसान है
      StreetComplete के gamified quests या osm.org के browser-based editor की वजह से, internet हो तो कोई भी कुछ मिनटों में अपने आसपास की जगहों को सुधार सकता है
      हालांकि यह कि जहाँ भी जाएँ, ठीक करने के लिए कुछ न कुछ बचा है, इसका मतलब यह भी है कि contributors पर्याप्त नहीं हैं
      बड़ी समस्या यह है कि ऐसा कोई प्रमुख app नहीं है जिसे लोग हमेशा इस्तेमाल करें और errors मिलें; लेकिन Organic Maps के साथ यह धीरे-धीरे बदल रहा है, और सुना है कि Tesla auto parking की वजह से भी कुछ नए लोग mapping करने लगे हैं
    • लगता है पूरा SRTM dataset download करना संभव है; सोच रहा हूँ कि क्या उससे काम नहीं चलेगा
      https://www.reddit.com/r/gis/comments/qg4b6j/is_it_possible_...
      Geonames भी SRTM और दूसरे data के आधार पर elevation lookup service देता है: http://www.geonames.org/export/web-services.html
      हालांकि अगर बड़े क्षेत्र को बारीकी से sample करना हो, तो API limits लग सकती हैं या service overload हो सकती है
      फिर भी यह दिखाता है कि third party के लिए dataset हासिल करके उसके ऊपर API देना संभव है
  • मैं अपने मोहल्ले को Minecraft में बनाकर 8 साल के बच्चे को दिखा सकता हूँ और ऐसे दिखा सकता हूँ जैसे मैंने ही बनाया हो
    जहाँ तक मुझे पता है, GPL में नकली hero बनाने पर रोक लगाने वाली कोई धारा नहीं है
    • GPL program को इस्तेमाल करने के तरीके को खुद सीमित नहीं करता, यानी यह freedom 0 के अंतर्गत आता है
      हालांकि lexer/parser generators जैसे मामलों में, जहाँ output में program के अपने source का कुछ हिस्सा शामिल हो जाता है, exceptions हैं; GNU Bison license में इसे अनुमति देने वाला explicit exception है
      Minecraft में Redstone और Command Blocks हैं, और लोगों ने 8086 या Tetris जैसी चीज़ें भी बनाई हैं
      सोच रहा हूँ कि क्या ऐसे world generation tools से बनी दुनिया GPL से contaminate होने की कोई edge case हो सकती है
      व्यक्तिगत रूप से ऐसे कारणों से मैं BSD/MIT licenses को पसंद करता हूँ। “क्या मैं इस program को सच में इस्तेमाल कर सकता हूँ?” जैसे आसान सवाल पर वकील की fees खर्च नहीं कराना चाहता
  • अगर intersections पर road signs भी generate कर दे तो वाकई अच्छा होगा
    मैं इसे बच्चों को हमारे मोहल्ले से ज़्यादा familiar कराने में इस्तेमाल करना चाहूँगा
    मैं बार-बार road names या कहाँ मुड़ना है पूछते-पूछते थक गया हूँ, और कभी-कभी तो पूरी turn-by-turn guidance भी देता हूँ
    अब तक वे सिर्फ कुछ ही बार रास्ता भटके हैं
  • फ्रांस की public agency IGN भी वास्तविक जगहों से Minecraft maps generate करने की service देती है
    हालांकि शायद यह इस project जितनी detailed नहीं है
    [0]: https://minecraft.ign.fr/
  • यह project मौका मिलते ही इस बात पर काफ़ी ज़ोर देता दिखता है कि इसे Rust में बनाया गया है
    • इसमें explanation है: “language को और सीखने और algorithm performance को और push करने के लिए project को Rust में port करने का फैसला किया। Python में optimization limits के करीब पहुँच रहे थे, और Rust की capabilities बेहतर performance और efficiency संभव बनाती हैं”
      चूँकि पहले से Python implementation था, इसलिए शुरुआत में यह बताना reasonable लगता है कि यह version अलग क्यों है
    • आप कैसे जानते हैं कि कोई Rust programmer है? वह खुद बता देता है
    • Java में लिखी libraries या applications के सारे नाम J से शुरू होते थे, उस दौर की तुलना में अभी बहुत दूर है
      असल में J से शुरू होने वाला शब्द भी नहीं होता था, बस किसी भी नाम के आगे J लगा देते थे
    • अब तो इसे Rust style guide में शामिल करने लायक बात हो गई है
    • असल में README में “Rust” 6 बार आता है, और उनमें से आधा हिस्सा FAQ paragraph में है जो बताता है कि Python से Rust में port क्यों किया गया
      Python का उल्लेख भी लगभग उतनी ही बार है
  • Microsoft के latest Flight Simulator games की तरह, अगर real-world regions के आधार पर racing tracks बनाने वाला version भी हो तो अच्छा होगा
    • या GTA: Auburn, AL भी चल सकता है
  • real-time weather, flight, traffic, React-based cockpit, open source Google Earth GlTF data और MSFS·X-Plane जैसे flight simulator apps से जुड़े reference links: https://news.ycombinator.com/item?id=38437821
    शायद यह अलग करना आसान हो कि verbal या (lat,long,game) format वाला location reference game के अंदर की location है, या उसी नाम वाली game की fictional location

Google Maps GlTF 3D tiles से जुड़े दस्तावेज़ https://developers.google.com/maps/documentation/tile/3d-til... में लिखा है कि Google के photorealistic tiles को render करने के लिए ऐसा 3D Tiles renderer इस्तेमाल करना होगा जो attribution दिखाने को support करता हो, और CesiumJS या Cesium for Unreal इस्तेमाल किए जा सकते हैं
Python API वाले open source Minecraft-जैसे गेम्स में sensorcraft है, जो OpenGL 3D के लिए pyglet-आधारित है और self.add_block(), gravity, AI, circuits वगैरह को handle करता है
WebGL, OpenGL से ज़्यादा portable है, और यह भी जानना चाहूंगा कि pyglet को WASM में compile किया जा सकता है या नहीं
मेरी जानकारी में panda3d और godot को WASM में आसानी से compile किया जा सकता है
Minecraft clone के लिए उपयोगी हो सकने वाला एक Python open source physics engine Genesis-Embodied-AI/Genesis है: “Genesis: A Generative and Universal Physics Engine for Robotics and Beyond” https://news.ycombinator.com/item?id=42457213#42457224
“Approximating mathematical constants using Minecraft” https://news.ycombinator.com/item?id=42319313 में luanti, minetest, mcpi, MCPI-Revival/minecraft-pi-reborn भी आते हैं

  • FlightGear में बहुत पहले ही कुछ ऐसा किया गया था, लेकिन वह सिर्फ़ maps तक सीमित था
  • अजीब बात है कि मेरा apartment complex render नहीं होता, जबकि आसपास की buildings और swimming pool render होते हैं
    मैंने OSM data भी check किया, इसलिए यह और भी अजीब है
    वहीं मेरे बच्चे का school ज़्यादा दूर नहीं है और काफ़ी detail में render होता है
    और खोजने पर लगा कि वह building OSM में दो अलग-अलग layers वाले multipolygon के रूप में render होती है, जबकि बाकी शायद node sets के आधार पर render होते हैं
  • बहुत शानदार। Chicago L tracks generate करना algorithm के लिहाज़ से काफ़ी चुनौतीपूर्ण रहा होगा
  • जापान द्वारा public की गई point map को OpenStreetMap से match करके ज़्यादा detailed buildings बनाई जा सकें तो अच्छा होगा
    • point map का link जानना चाहूंगा