"बेतरतीब ढंग से" बहते हुए इलाके के लिए सही रास्ता


9

मैं आरटीएस गेम का सरल टॉप बना रहा हूं। मुझे उस पर "बेतरतीब ढंग से" उड़ने पर मैप बनाने की योजना है जब मुझे ज़रूरत होती है। मैं इस पर 'पास' में काम करने की योजना बना रहा हूं:

  1. सभी घास के साथ इलाके को भरें
  2. वापस जाओ और बजरी के कुछ यादृच्छिक स्प्रेट्स जोड़ें
  3. बजरी को बाहर फेरे
  4. दूसरी लेयर पर माउंटेन लैंडस्केप ड्रा करें
  5. पहाड़ों के बाहर गोल
  6. आदि आदि।

अब, इस तस्वीर को नीचे देखें:

यहाँ छवि विवरण दर्ज करें

मैंने इसे अपने मानचित्र संपादक का उपयोग करके बनाया है, लेकिन मैं इस योजना को मूल रूप से उम्मीद के पास / चरण 3 के बाद परिणाम है।

मुझे अपनी बजरी को कब और कहां लगाना है, यह कैसे तय करना चाहिए ताकि यह कम से कम अनियमित आकार का हो और प्राकृतिक दिखने के लिए छिटपुट पर्याप्त हो?

धन्यवाद अगर आप कर सकते हैं! छोटी या बडी सब तरह की मदद सराहनीय है!

अलग नोट के रूप में:

प्रत्येक पास मूल रूप से मुझे अपनी सभी टाइलों के माध्यम से पुनरावृत्त कर रहा है (नक्शा 40x40 टाइलों में विभाजित है) इसके समान है:

for (int x = 0; x <= GRIDMAX - 1; x++) {
    for (int y = 0; y <= GRIDMAX - 1; y++) {
        //Terrain(x, y, 0) = SomethingHere;
    }
}

जवाबों:


5

आप ऊंचाई के नक्शे को बनाने के लिए पेर्लिन शोर के साथ चारों ओर खेल सकते हैं ( कार्यान्वयन के लिए मेरा स्टैकऑवरफ़्लो उत्तर देखें )। ऊंचाई के नक्शे से, आप कुछ ऊँचाई की सीमाओं को अलग-अलग टाइलों में मैप कर सकते हैं। कुछ इस तरह:

  • शीर्ष 20% हिमपात
  • अगला 20% बजरी
  • अगला 40% ग्रास
  • अंतिम 20% पानी

एक इलाके को प्राप्त करने और अच्छा दिखने के लिए आपको पेरलिन शोर जनरेटर मूल्यों के साथ खेलना होगा।


5

जैसा कि दूसरों ने कहा है, विभिन्न प्रकार की टाइलों को रखने के लिए तय करने के लिए पेरलिन शोर डेटा का एक अच्छा स्रोत होना चाहिए। मैं उस विचार को पूरक करना चाहता हूं और दो अतिरिक्त संसाधनों को जोड़ना है जो आपके चेकलिस्ट में तीसरे चरण के साथ सहायक होना चाहिए - कोनों को गोल करना

यह एक प्रक्रिया है जिसे ऑटो-टाइलिंग कहा जाता है और इसे लागू करना मुश्किल नहीं है। इसे करने के लिए कई अलग-अलग तरीके हैं, लेकिन उनमें से ज्यादातर प्रत्येक टाइल के लिए आसन्न जानकारी की गणना करने पर भरोसा करते हैं ताकि यह तय हो सके कि उस स्थान पर किस ग्राफिक को खींचा जाना चाहिए।

इस समस्या को हल करने का एक बहुत ही सुंदर तरीका यह है कि प्रत्येक आसन्न टाइल दिशा के लिए एक अद्वितीय ध्वज मूल्य निर्दिष्ट किया जाए, और अपना स्प्राइटशीट बिछाएं, ताकि एक टाइल के सभी आसन्न झंडे को एक साथ जोड़कर आपको मिलने वाला मूल्य सही स्थिति के अनुरूप होगा स्प्राइटशीट में टाइल। तकनीक के बहुत स्पष्ट विवरण के लिए इस लेख को पढ़ें ।

और यहाँ एक और संसाधन है जो तकनीक की एक और भिन्नता का वर्णन करता है।


अरे, बस आपको बता दें, कोनों को गोल करने के लिए आपका जवाब बेहद मददगार था। एक टन धन्यवाद :) यह वास्तव में अब सभी काम करता है (यहां तक ​​कि गोल कोनों)!
Freesnöw

4

अनिवार्य रूप से आप अपने नक्शे बनाने के लिए पेरलिन शोर पीढ़ी का उपयोग कर सकते हैं । आप एक निश्चित ऊँचाई से ऊपर के नक्शे के कुछ हिस्सों के लिए बनाए गए ऊँचाई के नक्शे और बजरी ब्लॉक को असाइन करेंगे।

इस तरह की प्रणाली और विभिन्न प्रकार के इलाकों को लागू करने के बारे में जाने के लिए यहां एक उत्कृष्ट संदर्भ पोस्ट है जिसे आप उत्पन्न कर सकते हैं।

उदाहरणों में आपके द्वारा आवश्यक कदमों की तुलना में बहुत अधिक है, लेकिन अवधारणा समान है।

Minecraft-type विश्व जीन पर अधिक

http://www.gamedev.net/blog/33/entry-2227887-more-on-minecraft-type-world-gen/

यहाँ छवि विवरण दर्ज करें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.