मैं आंशिक रूप से ग्रहों की खोज से बना एक गेम डिजाइन कर रहा हूं। मैं उनके लिए छद्म यादृच्छिक पीढ़ी का उपयोग करना चाहता हूं, एक परिभाषित बीज से पुन: उत्पन्न करना, जब मुझे हर विवरण को स्टोर करने के बजाय उन्हें लोड करना होगा, जो बहुत भारी होगा। तो मैं बस यादृच्छिक बीज और किसी भी खिलाड़ी द्वारा किए गए संशोधनों को एक फ़ाइल में संग्रहीत करूंगा।
खिलाड़ी को कक्षा से ग्रह को देखने में सक्षम होना चाहिए (विवरण के बहुत कम स्तर के साथ, फिर जमीन पर नीचे जाएं, धीरे-धीरे उस क्षेत्र के विवरण के स्तर को बढ़ाता है जहां वह उतर रहा है, और दूसरे पक्षों पर उतार रहा है) ग्रह, जो खिलाड़ी के देखने के क्षेत्र के बाहर जाते हैं।
अगर मुझे इसे प्लेन ग्राउंड पर करना होता, तो मैं इसे आसानी से स्क्वायर चंक सिस्टम के साथ करता। लेकिन यहाँ समस्या यह है कि ग्रह हैं - लगभग - गोले।
तो एक सटीक बिंदु के चारों ओर जमीन के विवरण (राहत और ग्राउंडेड ऑब्जेक्ट) को लोड करने का सबसे अच्छा तरीका क्या होगा?
मैं पहले से ही दो समाधानों पर है, लेकिन दोनों में एक कमजोर बिंदु है:
1. चौकोर चक्कों में गोलाकार काटना।
एक बार खिलाड़ी मैदान के काफी करीब होने के बाद, मुझे बस उसकी स्थिति से निकटतम वर्गों के विवरण में सुधार करना होगा।
यदि यह पर्याप्त नहीं है, तो मैं अभी भी प्रत्येक वर्ग को उप-वर्गों में काट सकता हूं जब खिलाड़ी मैदान पर हों या वास्तव में मैदान के करीब हों।
लेकिन जैसा कि आप तस्वीर पर देख सकते हैं, एक समस्या है अगर खिलाड़ी एक ध्रुव पर उतरने की कोशिश करता है: वर्ग बहुत पतली आयताकार हो जाते हैं, या अंतिम पंक्ति के लिए त्रिकोण भी होते हैं, और इसके अलावा इस तथ्य के लिए कि वे लोड करने के लिए कई होंगे, पीढ़ी विकृत दिखाई देगी।
2. एक icosahedron से शुरू।
यहाँ, मैं खिलाड़ी की स्थिति के आसपास त्रिभुज टेसलेशन को बढ़ा सकता था जब वह पास हो रहा हो।
लेकिन मुझे नहीं पता कि खिलाड़ी की स्थिति की तुलना में पास के त्रिकोणों का पता कैसे लगाया जाए। मैंने सुना है कि कार्टेशियन निर्देशांक उस मामले में उपयोगी हो सकते हैं, लेकिन मुझे नहीं पता कि उनका उपयोग कैसे किया जाए।
मैं इसके लिए C ++ / OpenGL का उपयोग कर रहा हूं, इसलिए यहां उत्पन्न करने और लोड करने की मुख्य बात सतह की राहत और रंग / बनावट का प्रतिनिधित्व करने वाले कोने हैं।