मेरे द्वारा खेले जाने वाले खेलों के क्रेडिट सेक्शन में ग्राफिक्स प्रोग्रामर के नाम हैं । यदि वे एक गेम इंजन का उपयोग करते हैं, तो उन्हें ग्राफिक्स प्रोग्रामर की आवश्यकता क्यों है ? क्या गेम इंजन अपना काम नहीं कर रहा है?
मेरे द्वारा खेले जाने वाले खेलों के क्रेडिट सेक्शन में ग्राफिक्स प्रोग्रामर के नाम हैं । यदि वे एक गेम इंजन का उपयोग करते हैं, तो उन्हें ग्राफिक्स प्रोग्रामर की आवश्यकता क्यों है ? क्या गेम इंजन अपना काम नहीं कर रहा है?
जवाबों:
यहां तक कि एक इंजन के साथ, स्क्रीन पर कुछ दिखाने के लिए जिस तरह से आप चाहते हैं वह हमेशा तुच्छ नहीं है। ऐसे कई उदाहरण होंगे जहां प्रोग्रामिंग ज्ञान वाले किसी व्यक्ति को ग्राफिक्स डिस्प्ले को सही ढंग से बनाने के लिए आवश्यक है। इन लोगों को क्रेडिट में ग्राफिक्स प्रोग्रामर कहा जा सकता है (ग्राफिक्स प्रोग्रामर प्रमाणित या संरक्षित शीर्षक नहीं है, और विभिन्न शीर्षकों के बीच अंतर कंपनी द्वारा बहुत भिन्न हो सकता है)।
चलिए एक ठोस उदाहरण लेकर आते हैं। हमें निम्न प्रकार से एक एनिमेटेड घूर्णन वृत्त की आवश्यकता है:
हमारे कुछ विकल्प हैं:
1 बिलबोर्ड पर सर्कल रखें, बिलबोर्ड को घुमाने के लिए एक स्क्रिप्ट लिखें।
2 स्रोत के रूप में एक एनिमेटेड GIF का उपयोग करें।
3 पूरी चीज़ को एक शेडर में करें, जो 2 अलग-अलग विकल्पों की अनुमति देता है:
1. 1. किसी को उस स्क्रिप्ट को लिखने की ज़रूरत है, जो कुछ प्रकार का प्रोग्रामिंग कार्य है जिसे ग्राफिक्स के साथ करना है। 2 के लिए, हमें एक प्रोग्रामर की आवश्यकता नहीं है, जब तक कि इंजन - अधिकांश - एनिमेटेड जिफ़ के आयात का समर्थन नहीं करता है, उस स्थिति में किसी को उस हिस्से को प्रोग्राम करने की आवश्यकता होती है। 3. किसी को शेडर को प्रोग्राम करना होगा, जो एक कलाकार या प्रोग्रामर हो सकता है।
डाउनवोट को संबोधित करने के लिए संपादित करें:
डाउनवोट्स लगता है क्योंकि प्रभाव बहुत सरल है और इस तरह "वास्तविक" ग्राफिक्स प्रोग्रामर द्वारा लागू नहीं किया जाएगा। मैं वास्तव में नहीं जानता कि यह किसके द्वारा लागू किया जाएगा यदि टीम पर एक समर्पित ग्राफिक्स प्रोग्रामर है, और मैं कभी-कभार शेडर्स में इस तरह के रोटेशन प्रभाव को लागू करता हूं - हालांकि आमतौर पर रोटेशन एक बड़े पूरे का एक हिस्सा है, जैसे कि यह उदाहरण है ।
खेल इंजन रसोई की तरह हैं, और डेवलपर्स (यानी प्रोग्रामर) कुक की तरह हैं।
गेम इंजन संभावनाएं प्रदान करते हैं, जबकि प्रोग्रामर इन संभावनाओं का खेल की जरूरतों के लिए दोहन करते हैं।
इस प्रकार, खेल कंपनियों को खेल की जरूरतों के लिए इंजन की ग्राफिक्स संभावनाओं को दर्जी करने के लिए ग्राफिक्स प्रोग्रामर की आवश्यकता होती है।
यदि गेम इंजन को सब कुछ प्रबंधित करने के लिए किया गया था, बिना ट्विकिंग के, तो उस इंजन द्वारा उत्पादित सभी गेम ऐसे दिखेंगे जैसे वे एक ही साँचे से बाहर निकलते हैं: कलाकार विभिन्न 3 डी मॉडल और 2 डी कला का उत्पादन कर सकते हैं, जो डिजाइनरों की दृष्टि के अनुरूप है, लेकिन इन ग्राफिक्स का इन-गेम कस्टमाइज़ेशन सीमित होगा जो इंजन बॉक्स से बाहर प्रदान करता है।
ध्यान दें कि जब वे आपको इस्तेमाल की गई कला को बदलने देते हैं, तो कुछ गेम इंजन गेम की जरूरतों के लिए अन्य ग्राफिक पहलुओं को दर्जी बनाने की संभावना नहीं प्रदान करते हैं। मुझे लगता है कि आरपीजी निर्माता ऐसा था: यह आपको कला को बदलने देता है, लेकिन आप इस बात को सीमित कर रहे हैं कि आप इसे बहुत विशिष्ट स्पर्श देने के लिए अपने खेल को कैसे ट्विक कर सकते हैं। यह पिछले वर्षों में बदल गया है क्योंकि मैंने उस सॉफ़्टवेयर को कुछ समय के लिए नहीं छुआ है।
खेल उद्योग में अधिकांश शीर्षकों का विशिष्ट अर्थ स्टूडियो से स्टूडियो तक व्यापक रूप से भिन्न होता है, इसलिए इसे ध्यान में रखें। एक स्टूडियो में "ग्राफिक्स प्रोग्रामिंग" का अर्थ वास्तव में सिर्फ छायादार या भौतिक मोड़ बनाना हो सकता है, जहां दूसरे स्टूडियो में इसका मतलब अंतर्निहित ग्राफिक्स एपीआई, एट वगैरह के पास अपेक्षाकृत कम-स्तरीय अनुकूलन कार्य करना हो सकता है।
उस ने कहा, बड़े स्टूडियो में कुछ इंजन मिडलवेयर लेना अपेक्षाकृत कम ही होता है और बिना किसी संशोधन के इसका उपयोग करना। अधिकांश समय, इंजन के विशिष्ट पहलुओं को मोड़ना होगा क्योंकि यह आवश्यकताओं को पूरा नहीं करता है, या क्योंकि उस संस्करण में एक बग है और कंपनी अभी तक एक नए संस्करण में अपग्रेड नहीं कर सकती है जो बग, एट को ठीक कर सकती है इत्यादि।
ग्राफिक्स एक ऐसा क्षेत्र है, जहां लोग बहुत हद तक ट्विकिंग करते हैं। इसमें इंजन के भीतर Direct3D या समान के उपयोग को फिर से लिखना शामिल नहीं हो सकता है , लेकिन इसमें अभी भी काम को कस्टमाइज़ करना या शेडिंग को शामिल करना शामिल हो सकता है, विशिष्ट गेम के उपयोग प्रोफाइल के लिए बेहतर खाते में ग्राफिक्स संसाधन प्रबंधन में सुधार करना, नई रेंडरिंग सुविधाएँ या विकल्प जोड़ना, सुव्यवस्थित करना स्टूडियो के वर्कफ़्लो, वगैरह को बेहतर ढंग से सूट करने के लिए ग्राफिक्स एसेट पाइपलाइन।
इसके अलावा, ऐसे कई मामले हैं जहां एक स्टूडियो अतिरिक्त ग्राफिक्स से संबंधित मिडलवेयर का एकीकरण करना चाहेगा। ग्रेनाइट, एनलाइटेन और ट्रूस्की जैसे मिडिलवेयर पैकेज हैं जो विभिन्न ग्राफिक्स-संबंधित सुविधाओं (बनावट स्ट्रीमिंग, वैश्विक रोशनी, आकाश सिमुलेशन और प्रतिपादन, एट सीटेरा) की पेशकश करते हैं। ये सभी मिडलवेयर पैकेज अवास्तविक के साथ एकीकृत हैं, लेकिन इन्हें एकीकृत करने के लिए काम आवश्यक है। उनमें से कुछ एक-दूसरे के साथ संघर्ष कर सकते हैं या अच्छी तरह से एक साथ काम करने के लिए कुछ ट्विकिंग की आवश्यकता होती है, क्योंकि वे सभी विभिन्न कंपनियों द्वारा विकसित किए गए हैं। ग्राफिक्स प्रोग्रामर संभवतः उस तरह के काम में भी शामिल होंगे।
आप एक ग्राफिक्स प्रोग्रामर के बिना गेम को आसानी से जहाज कर सकते हैं क्योंकि सभी इंजनों के कारण अब आसानी से एक दिन है। आमतौर पर आपको ग्राफिक्स प्रोग्रामर की आवश्यकता होती है जैसे चीजें हैं
अनुकूलन
एक ग्राफिक्स प्रोग्रामर जानता होगा और / या सीखता है कि एक विशेष इंजन कैसे काम करता है और कलाकारों को निर्देशित करने में सक्षम है या इंजन से बेहतर प्रदर्शन प्राप्त करने के लिए सामग्री या मर्ज मॉडल को संशोधित कर सकता है या अन्य तकनीकों का उपयोग कर सकता है।
समझ और निर्देश
एक कलाकार एक निश्चित प्रभाव प्राप्त करना चाहता है। ग्राफिक्स प्रोग्रामर जो समझता है कि इंजन कैसे काम करता है, यह समझा सकता है कि उस प्रभाव को कैसे प्राप्त किया जाए।
अनुकूलन और प्रभाव
कुछ प्रभावों के लिए प्रोग्रामिंग की आवश्यकता हो सकती है। बाउंड के रेंडरिंग का ज्यादातर रिवाज है।
यह फिल्मों से अलग नहीं है। 100 प्रोग्रामर के साथ, एक बड़ा बजट और खराब लेखन से आपको स्टार वॉर्स मिल सकते हैं: द फैंटम मेंस। बिना किसी प्रोग्रामर और अच्छे लेखन के आपको प्राइमर मिल सकता है। प्रोग्रामर (या अन्य तकनीकी लोग) नई चीजों की अनुमति दे सकते हैं। प्रोग्रामर्स ने श्रेक, सीजी हेयर टू मॉन्स्टर्स इंक, बुलेट टाइम टू द मेट्रिक्स आदि को सीजी मड लाया, लेकिन, मूवी थीम्स इफेक्ट्स के बारे में नहीं हैं और बिना प्रभाव या नई कस्टम तकनीक के अद्भुत फिल्में बनाना पूरी तरह संभव है।
वही अब कमोबेश खेलों के लिए सच है। ग्राफिक्स प्रोग्रामर पिक्सेल जंक शूटर या बाउंड के सभी गतिशील ज्यामिति में तरल पदार्थ की अनुमति दे सकते हैं, लेकिन मानक इंजन तकनीक और कोई ग्राफिक्स प्रोग्रामर के साथ बहुत सारे खेल किए जा सकते हैं।
बहुत बार, गेम इंजन गेम प्रोजेक्ट की आवश्यकताओं और विनिर्देशों के 100% को पूरा नहीं करेगा। यह ट्रिपल-ए खिताब के लिए विशेष रूप से सच है जो हमेशा खेल प्रौद्योगिकी की सीमाओं को आगे बढ़ा रहे हैं। यदि गेम इंजन के कुछ ग्राफिक्स भाग मेल नहीं खाते हैं, जो कलाकार और डिज़ाइनर आउट-ऑफ-द-बॉक्स प्राप्त करना चाहते हैं, तो वे एक ग्राफिक्स प्रोग्रामर / विशेषज्ञ को नियुक्त कर सकते हैं जो उन्हें यह पता लगाने में मदद कर सकता है कि क्या उनकी उम्मीद संभव है, और यदि यह है, तो इसे कैसे प्राप्त किया जाए। इसमें शेडर / आर्ट एसेट्स, या रेंडरिंग के रीक्रिएट पार्ट्स या फिर मिडलवेयर का इस्तेमाल करना शामिल हो सकता है। या उनमें से एक संयोजन।
अधिकांश मानक तकनीकों को किसी भी सभ्य वाणिज्यिक इंजन में लागू किया जाएगा, जैसे कि एफएक्सएए, लाइटिंग, सीएल शेडिंग, सामान्य मैपिंग आदि, लेकिन सभी नहीं।
उस मामले में जहां एक गेम डिजाइनर ने निर्दिष्ट किया है कि किसी विशेष प्रभाव को घटित होना है, आप या तो इसे पहले से ही बनाए हुए हैं, या आप एक नए शेडर को कोड करते हैं, या इसे अनुमति देने के लिए ग्राफिक्स इंजन को संशोधित करते हैं। दोनों परिदृश्यों में, एक ग्राफिक्स प्रोग्रामर की आवश्यकता होती है।
इंजन को परिभाषित करें, फिर ग्राफिक्स इंजन को परिभाषित करें। यदि आपका कोई गेम बनाने के लिए किसी मौजूदा इंजन का उपयोग कर रहा है तो वह कोड में स्क्रैच से गेम लिखने जैसा नहीं है। यदि कोड के माध्यम से कोई परिभाषित कर सकता है कि ग्राफिक्स या इंजन क्या है, इससे कोई फर्क नहीं पड़ता कि आप इसे कहते हैं यदि आपका कोड मजबूत है। उक्त इंजन में गेम बनाना, इसकी सीमाएं और इसके मजबूत बिंदु शुद्ध रूप से प्रोग्रामर (एस) की क्षमता पर आधारित हैं। एकता या यहां तक कि अवास्तविक या किसी भी अन्य प्रो इंजन की तरह कुछ का उपयोग करना आपकी क्षमता को परिभाषित नहीं करता है, खेल इंजन केवल अमूर्त कोडिंग कह रहे हैं शुद्ध सी ++ नहीं है। आप उदाहरण के लिए प्रोग्रामर नरक यहां तक कि कलाकारों को किराए पर ले सकते हैं लेकिन आप इंजन की दृष्टि या सीमा तक सीमित रहेंगे। इसलिए खरोंच से कोड करना बेहतर है फिर पहले से ही अस्तित्व में कुछ का उपयोग करें। समस्या आप जीत गए हैं ' टी ऑनलाइन जवाब पाते हैं जैसे स्टेक्सएक्सचेंज मुझे संदेह है कि कई लोगों ने कोड को परेशान करने के लिए एक गेम को अकेले 2 डी प्रोजेक्ट को खत्म करने की भी कोशिश की है। मैं बस थोड़ा सा समझ रहा हूं, जिसका अर्थ है कि कई स्वयं सेवक जवाब नहीं देते हैं। सबसे अच्छा तरीका है अध्ययन और अभ्यास!