UE4 | दिन और रात का चक्र | स्काईस्फेयर का संशोधन

दिन और रात का परिवर्तन अक्सर उपयोगकर्ताओं के बीच बढ़ जाता है। और अगर सूर्य की गति स्वयं व्यवस्थित करने के लिए काफी सरल है, तो अधिक या कम यथार्थवादी काम को प्राप्त करने के लिए *** स्काईस्फेयर *** पहले से ही अधिक कठिन है।

इस लेख में, मैं सीज़न और प्रसार के साथ दिशात्मकता के अभिविन्यास को बदलने के लिए सभी प्रकार के तरीके दिखाने की योजना नहीं करता हूं। इस विषय पर, मेरी राय में, पर्याप्त सामग्री हैं। कोई ऐसा ब्लूप्रिंट के माध्यम से करता है, लेकिन मैं C ++ का उपयोग करता हूं, ताकि घड़ी सर्वर पर टिक रही हो और समय-समय पर (प्रत्येक कुछ सेकंड में) क्लाइंट की घड़ी को सिंक्रनाइज़ करें। हालाँकि, सर्वर पर कोई आंदोलन नहीं होता है। आसमान में सूरज को स्थानांतरित करने के लिए यह एक बुरी बात नहीं है।


आगे, मैं उन समस्याओं के बारे में बात करूंगा जो दैनिक चक्र के साथ सही ढंग से काम करने के लिए मानक BP_Sky_Sphere को अपग्रेड करने के मेरे संस्करण को दिखाते हैं।




संशोधन से पहले, अपने निर्देशिका के लिए EngineSky फ़ोल्डर की संपूर्ण सामग्री को कॉपी करना काफी उपयोगी होगा ताकि मानक ब्लूप्रिंट और उससे जुड़े संसाधनों को खराब न करें।





सबसे पहले, मैं मानक क्षेत्र के एक बग (या सुविधाओं) के बारे में बात करना चाहता हूं। क्षेत्र के लिए संलग्न स्टैटिकमेश का मान 400 है। यदि आप इसे 1 में बदलते हैं, तो ऐसा लगता है कि कुछ भी नहीं बदलेगा, लेकिन यदि आप थोड़ा आगे बढ़ते हैं, तो आप फिल्म "द ट्रूमैन शो" में महसूस करेंगे। हां, यह क्षेत्र, हालांकि विशाल है, इसकी अपनी सीमाएं हैं। खुली दुनिया के लिए एक स्पष्ट समस्या है, जो खिलाड़ी के साथ क्षेत्र को स्थानांतरित करके ठीक करना बहुत आसान है।



बेशक, एक विकल्प के रूप में, आप क्षेत्र को और भी बड़ा बना सकते हैं, लेकिन मैं इस तरह के विचार से बहुत प्रभावित नहीं हूं।




अगला आइटम एक सामान्य रात निर्धारित कर रहा है। मैं दृढ़ता से नापसंद करता हूं कि सितारे केवल आधी रात को दिखाई देते हैं, और बाकी समय - यह केवल शाम को किसी प्रकार का होता है।


यह मौजूदा कर्व्स को समायोजित करके और नए जोड़कर भी काफी सरल रूप से हल किया गया है।



वक्र उदाहरण



अगली समस्या डायरेक्शनल लाइट और स्काईलाइट के लिए प्रकाश की भिगोना है। यह मानना ​​काफी अजीब है कि रात में इसे दिन के दौरान और भी बुरा नहीं देखा जा सकता है। इसे बस कर्व्स को जोड़कर और समायोजित करके भी हल किया जाता है।


प्रकाश स्तर बदलना



खैर, मिठाई के लिए ... सितारे नहीं चलते हैं! यदि रात लंबी और भयावह है , तो शायद खिलाड़ी इसे नोटिस नहीं करेगा। लेकिन क्या हम एक गंभीर दृष्टिकोण के लिए हैं?


सबसे पहले, मैंने सामग्री में अतिरिक्त चर जोड़कर सितारों की बनावट को आगे बढ़ाया।


कुछ इस तरह

जब तक सूर्य भूमध्य रेखा के साथ-साथ चलता है, तब तक सब कुछ क्रम में होता है। लेकिन जब उच्च अक्षांशों का अनुकरण करते हैं, तो गणितीय कठिनाइयाँ शुरू हो जाती हैं और बनावट की अनिच्छा जो हम चाहते हैं स्पिन करने के लिए। लेकिन क्या हम एक गंभीर दृष्टिकोण के लिए हैं? :)


नतीजतन, उन्होंने दो खगोलीय क्षेत्र बनाने का फैसला किया। एक बादल, सूरज और आकाश के साथ, और दूसरा, सितारों के साथ थोड़ा बड़ा। BP_Sky_Sphere ने एक अतिरिक्त गोले को भी जोड़ा और विनम्रता से उसे सूरज के साथ घूमने के लिए कहा ...


और सबसे दिलचस्प हिस्सा! छोटे खगोलीय क्षेत्र को आंशिक रूप से पारदर्शी बनाएं। बस सामग्री के तर्क को अस्पष्टता से जोड़ते हुए, निश्चित रूप से मुझे काली रात के बादलों के माध्यम से चमकते हुए अद्भुत सितारे मिले। इसलिए, मुझे फिर से एक फ़ाइल के साथ सामग्री को संशोधित करना पड़ा, वास्तव में दो आसमानों को खींचना। दृश्य के लिए काली रात के बादलों के साथ। और दूसरा, ओपेसिटी के लिए हमेशा बर्फ-सफेद बादलों के साथ। इसके अलावा, उन्होंने दिन में बहुत सारे सफेद रंग जोड़े, वास्तव में आकाश को अपारदर्शी बना दिया ताकि पारभासी नीला अपनी गहराई से डर न जाए।


खाका

क्लिक करने योग्य छवि


सामग्री







अब सब कुछ निर्माता द्वारा इस मामले में, मेरे द्वारा - के रूप में काम करता है। यह नियंत्रण घटता को केवल ठीक करने के लिए बना हुआ है, लेकिन कुल मिलाकर यह बहुत अच्छा लग रहा है।




यदि आपके पास इसे आसान बनाने के बारे में विचार हैं, तो कृपया साझा करें। मैं आभारी रहूंगा।

Source: https://habr.com/ru/post/hi419469/


All Articles