2D व 3D ज्यामितीय रूपांतरण, दर्शन व रेंडरिंग

यह अध्याय इकाई 3 की कंप्यूटर ग्राफ़िक्स सामग्री को उस हर वस्तु से पूर्ण करता है जो एक कच्चे खींचे आद्य से आगे आती है: आव्यूह-यंत्रावली (समांगी निर्देशांक) जो 2D व 3D रूपांतरणों को एकसमान रूप से संयोजित होने देती है, दर्शन-पाइपलाइन जो एक परिभाषित जगत् को स्क्रीन पर मानचित्रित करती है, दृश्य के बाहर पड़ने वाले को छाँटने वाली क्लिपिंग कलनविधियाँ, व 3D-विशिष्ट प्रकरण — सतह-निरूपण, स्प्लाइन वक्र, प्रदीप्तन प्रतिरूप व रेंडरिंग। इनमें से किसी का भी GATE CS समतुल्य नहीं है।

2D रूपांतरण, आव्यूह-निरूपण व समांगी निर्देशांक

चार मूल 2D रूपांतरण
रूपांतरणप्रभाव
स्थानांतरणहर बिंदु को स्थिर (tx, ty) से खिसकाता है — इसे अकेले (x, y) पर 2x2 रैखिक आव्यूह-गुणन से व्यक्त नहीं किया जा सकता, जो ठीक वही समस्या है जिसे समांगी निर्देशांक हल करते हैं।
मापनमूल बिंदु के इर्द-गिर्द x व y को sx, sy से गुणा करता है — sx = sy होने पर एकसमान, अन्यथा आकृति विकृत होती है।
घूर्णनcos θ / sin θ प्रविष्टियों से मूल बिंदु के इर्द-गिर्द कोण θ से घुमाता है — एक दृढ़ रूपांतरण, लंबाई व कोण सुरक्षित रखते हुए।
परावर्तन / अपरूपणपरावर्तन किसी अक्ष के इर्द-गिर्द पलटता है (एक निर्देशांक निषेधित); अपरूपण एक निर्देशांक को दूसरे के अनुपात में खिसकाता है, वर्ग को समांतर-चतुर्भुज में विकृत करते हुए।
🎯 समांगी निर्देशांक क्यों विद्यमान हैं: स्थानांतरण को भी आव्यूह-गुणन बनाने हेतु
मापन व घूर्णन रैखिक हैं ((x, y) पर 2x2 आव्यूह से व्यक्त करने योग्य), पर स्थानांतरण एफ़ीन है, रैखिक नहीं — यह निवेश को मापने के बजाय एक अचर जोड़ता है, और अकेले (x, y) से कोई 2x2 आव्यूह वह जोड़ उत्पन्न नहीं कर सकता। समांगी निर्देशांक तीसरा निर्देशांक जोड़ते हैं, 2D बिंदु को (x, y, 1) के रूप में निरूपित करते हुए, जो स्थानांतरण को भी 3x3 आव्यूह-गुणन के रूप में लिखने देता है — और एक बार हर रूपांतरण आव्यूह बन जाए, तो कई (पहले घुमाएँ फिर खिसकाएँ फिर मापें) को संयोजित करना उन तीनों आव्यूहों के एक साथ एकल आव्यूह-गुणन में बदल जाता है, एक बार लागू।
⚠️ संयुक्त रूपांतरण-क्रम क्रम-विनिमेय नहीं है
आव्यूह-गुणन सामान्यतः क्रम-विनिमेय नहीं है, अतः 'पहले घुमाएँ फिर खिसकाएँ' व 'पहले खिसकाएँ फिर घुमाएँ' वास्तव में भिन्न परिणाम देते हैं — मूल बिंदु से हटी वस्तु को पहले घुमाना उसे स्थानांतरित होने से पहले मूल बिंदु के इर्द-गिर्द घुमाता है, जबकि पहले स्थानांतरित करना उसे मूल बिंदु से दूर ले जाता है व तब घुमाना उसे भिन्न चाप पर मूल बिंदु के इर्द-गिर्द घुमाता है। आव्यूह लागू करने का क्रम उस क्रम से मेल खाना चाहिए जिसमें रूपांतरण होने अभिप्रेत हैं।

दर्शन-पाइपलाइन, विंडो-से-व्यूपोर्ट, व क्लिपिंग

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

  • कोहेन-सदरलैंड रेखा-क्लिपिंग: हर अंतिम-बिंदु को एक 4-बिट आउटकोड देती है जो अभिलिखित करता है कि यह विंडो की चार सीमाओं में किसके पार है; रेखा तुच्छ रूप से स्वीकृत है यदि दोनों आउटकोड 0000 हों, तुच्छ रूप से अस्वीकृत यदि दोनों आउटकोडों का बिटवार AND अशून्य हो (दोनों अंतिम-बिंदु किसी उल्लंघित सीमा को साझा करते हैं, अतः पूरा खंड उसके बाहर होना ही चाहिए), व अन्यथा एक बार में एक सीमा के विरुद्ध पुनरावृत्त रूप से क्लिप की जाती है।
  • सदरलैंड-हॉजमैन बहुभुज-क्लिपिंग: एक बार में विंडो के एक कोर के विरुद्ध बहुभुज क्लिप करती है, बहुभुज के शीर्षों को क्रम में प्रक्रमित करते हुए व प्रति निवेश-शीर्ष 0, 1 या 2 शीर्ष निर्गत करते हुए, इस पर निर्भर कि यह व इसका पूर्ववर्ती उस कोर के भीतर/बाहर हैं या नहीं — सभी चार विंडो-कोरों हेतु बारी-बारी दोहराना अवतल बहुभुज को भी सही ढंग से क्लिप करता है।

3D वस्तु-निरूपण: बहुभुज व द्विघाती सतह, स्प्लाइन

  • बहुभुज सतह (मेश): 3D ठोस को समतल बहुभुजीय फलकों (सामान्यतः त्रिभुज) के मेश से सन्निकटित किया जाता है, प्रत्येक शीर्ष-निर्देशांकों व संयोजकता की सूची के रूप में संचित — स्वेच्छ, अनियमित आकृतियों हेतु मानक निरूपण व वह प्रारूप जिसके इर्द-गिर्द अधिकांश रेंडरिंग हार्डवेयर बना है।
  • द्विघाती सतह: x, y, z में एक ही द्वितीय-घात (द्विघाती) समीकरण से वर्णित — गोला, दीर्घवृत्तज, बेलन, शंकु व परवलयज सभी द्विघाती हैं, और अनेक बहुभुजों के मेश के बजाय एक संहत समीकरण से वर्णित होना ही उन्हें सटीक रूप से (बिना किसी बहुभुज-सन्निकटन त्रुटि के) निरूपित व परखना सस्ता बनाता है।
  • बेज़िए वक्र: बर्नस्टाइन बहुपद मिश्रण से n+1 नियंत्रण-बिंदुओं द्वारा परिभाषित; वक्र केवल पहले व अंतिम नियंत्रण-बिंदु से होकर गुज़रता है (उन्हें अंतर्वेशित करते हुए) जबकि आंतरिक नियंत्रण-बिंदु केवल उसकी आकृति को प्रभावित करते हैं (सन्निकटित करते हुए), और पूरा वक्र अपने नियंत्रण-बिंदुओं के उन्नतोदर आवरण के भीतर रहता है — किसी भी एक नियंत्रण-बिंदु को हिलाना पूरे वक्र की आकृति को प्रभावित करता है (कोई स्थानीय नियंत्रण नहीं)।
  • B-स्प्लाइन वक्र: एक नॉट-सदिश से बेज़िए वक्रों को सामान्यीकृत करते हैं जो हर नियंत्रण-बिंदु को केवल स्थानीय प्रभाव देता है — एक नियंत्रण-बिंदु हिलाना वक्र के केवल परिबद्ध पड़ोस को बदलता है, बेज़िए वक्र के विपरीत, जो इस उप-प्रकरण में दोनों के बीच सर्वाधिक परखा गया एकल भेद है।

प्रदीप्तन प्रतिरूप, बहुभुज-रेंडरिंग व प्रक्षेपण

मूल प्रदीप्तन (प्रकाशन) प्रतिरूप तीन घटक जोड़ता है: आम्बिएंट प्रकाश (बिना किसी दिशा वाले अप्रत्यक्ष, बिखरे प्रकाश का स्थिर सन्निकटन), डिफ़्यूज़ परावर्तन (लैम्बर्ट के कोसाइन नियम से सतह-अभिलंब व प्रकाश-दिशा के बीच कोण पर निर्भर — प्रकाश ठीक सामने होने पर सबसे तेज़, सतह को छूते हुए जाने पर शून्य, पर हर देखने-दिशा में समान रूप से बिखरा), व स्पेक्युलर परावर्तन (वह तेज़ चमकीला बिंदु जो अतिरिक्त रूप से दर्शक की दिशा पर निर्भर है, चमकीली सतह हेतु सर्वाधिक कसा व तेज़, तथा फ़ॉन्ग प्रतिरूप द्वारा परावर्तित-प्रकाश-दिशा व दर्शक-दिशा के बीच कोसाइन की उच्च घात के रूप में प्रतिरूपित)।

  • बहुभुज-रेंडरिंग विधियाँ: स्थिर (फ्लैट) शेडिंग प्रति फलक एक अभिलंब का प्रयोग करते हुए पूरे बहुभुज-फलक को एकसमान रंगती है — तेज़, पर दृश्यतः फलकयुक्त; गूरो शेडिंग हर शीर्ष पर गणित रंग-मान को फलक के आर-पार अंतर्वेशित करती है — अधिक सहज, पर शीर्षों के बीच पड़ने वाली किसी तीक्ष्ण स्पेक्युलर चमक को चूक सकती है; फ़ॉन्ग शेडिंग स्वयं सतह-अभिलंब को फलक के आर-पार अंतर्वेशित करती है व प्रति पिक्सेल प्रकाशन गणित करती है — सर्वाधिक सटीक व सर्वाधिक महँगी, वे चमकें पकड़ते हुए जो अन्य दो चूक जाती हैं।
  • प्रक्षेपण रूपांतरण: समांतर (ऑर्थोग्राफिक) प्रक्षेपण दर्शक से दूरी की परवाह किए बिना सापेक्ष अनुपात सुरक्षित रखता है (समांतर रेखाएँ समांतर रहती हैं) व तकनीकी/अभियांत्रिकी आरेखण हेतु प्रयुक्त होता है; परिप्रेक्ष्य प्रक्षेपण समांतर रेखाओं को लुप्त-बिंदुओं की ओर अभिसरित करता है व दूर की वस्तुओं को छोटा दिखाता है, यह मानव दृष्टि व कैमरों के वस्तुतः काम करने के तरीके से मेल खाता है, सटीक मापों को विकृत करने की कीमत पर।

मुख्य बिंदु

  • समांगी निर्देशांक स्थानांतरण को भी आव्यूह-गुणन में बदल देते हैं, कई रूपांतरणों को एक आव्यूह में संयोजित होने देते हुए — पर संयुक्त क्रम क्रम-विनिमेय नहीं है।
  • विंडो-से-व्यूपोर्ट मानचित्रण स्वयं एक संयुक्त रूपांतरण है; क्लिपिंग (आउटकोड से रेखाओं हेतु कोहेन-सदरलैंड, कोर-दर-कोर बहुभुजों हेतु सदरलैंड-हॉजमैन) इस मानचित्रण से पहले होती है।
  • बेज़िए वक्र केवल अपने पहले/अंतिम नियंत्रण-बिंदु वैश्विक प्रभाव सहित अंतर्वेशित करते हैं; B-स्प्लाइन नॉट-सदिश से स्थानीय नियंत्रण सहित इसे सामान्यीकृत करते हैं।
  • प्रदीप्तन आम्बिएंट, डिफ़्यूज़ (लैम्बर्ट, दर्शक-दिशा से स्वतंत्र) व स्पेक्युलर (फ़ॉन्ग, दर्शक-दिशा-निर्भर) घटक जोड़ता है।
  • फ्लैट शेडिंग सबसे तेज़ पर फलकयुक्त है; गूरो शीर्ष-रंग अंतर्वेशित करती है; फ़ॉन्ग प्रति पिक्सेल अभिलंब अंतर्वेशित करती है व सर्वाधिक सटीक पर सर्वाधिक महँगी है।

अभ्यास प्रश्न (8)

उत्तर खोलने से पहले प्रत्येक प्रश्न हल करें। हर व्याख्या सही विकल्प के साथ लुभावना गलत विकल्प भी बताती है, क्योंकि अंक वहीं जाते हैं।

  1. 2D ग्राफ़िक्स में समांगी निर्देशांक मुख्यतः इसलिए प्रस्तुत किए जाते हैं क्योंकि:

    1. स्थानांतरण एफ़ीन है, रैखिक नहीं, और इसे अकेले (x, y) पर 2x2 आव्यूह-गुणन से व्यक्त नहीं किया जा सकता
    2. वे घूर्णन को गणना असंभव बना देते हैं
    3. वे केवल 1D ग्राफ़िक्स हेतु आवश्यक हैं
    4. वे व्यूपोर्ट की आवश्यकता को पूर्णतः समाप्त कर देते हैं
    उत्तर देखें

    उत्तर: A — स्थानांतरण एफ़ीन है, रैखिक नहीं, और इसे अकेले (x, y) पर 2x2 आव्यूह-गुणन से व्यक्त नहीं किया जा सकता

    तीसरा निर्देशांक जोड़ना स्थानांतरण को, मापन व घूर्णन की भाँति, आव्यूह-गुणन के रूप में व्यक्त होने देता है, अतः रूपांतरणों के अनुक्रम को भिन्न प्रकार की पृथक संक्रियाओं के बजाय एक आव्यूह में संयोजित किया जा सकता है।
  2. मूल बिंदु से हटी वस्तु को पहले घुमाना व फिर स्थानांतरित करना, पहले स्थानांतरित कर फिर घुमाने की तुलना में:

    1. सामान्यतः भिन्न अंतिम परिणाम देता है, क्योंकि आव्यूह-गुणन क्रम-विनिमेय नहीं है
    2. सदा ठीक वही परिणाम देता है
    3. अपरिभाषित व्यवहार है
    4. केवल 3D वस्तुओं हेतु भिन्न है, 2D हेतु कभी नहीं
    उत्तर देखें

    उत्तर: A — सामान्यतः भिन्न अंतिम परिणाम देता है, क्योंकि आव्यूह-गुणन क्रम-विनिमेय नहीं है

    पहले घुमाना वस्तु को हिलने से पहले मूल बिंदु के इर्द-गिर्द घुमाता है; पहले स्थानांतरित करना उसे मूल बिंदु से दूर ले जाता है, अतः बाद का घूर्णन उसे भिन्न चाप से घुमाता है — क्रम वास्तव में परिणाम बदल देता है।
  3. कोहेन-सदरलैंड रेखा-क्लिपिंग में, रेखा तुच्छ रूप से अस्वीकृत होती है जब:

    1. दोनों अंतिम-बिंदुओं के आउटकोडों का बिटवार AND अशून्य हो
    2. दोनों अंतिम-बिंदुओं के आउटकोडों का बिटवार OR शून्य हो
    3. दोनों अंतिम-बिंदु विंडो के भीतर हों
    4. रेखा ठीक क्षैतिज हो
    उत्तर देखें

    उत्तर: A — दोनों अंतिम-बिंदुओं के आउटकोडों का बिटवार AND अशून्य हो

    अशून्य AND का अर्थ है कि दोनों अंतिम-बिंदु उसी सीमा से परे हैं, अतः पूरा खंड उस सीमा के बाहर होना ही चाहिए और उसे बिना किसी आगे की क्लिपिंग-गणना के छाँटा जा सकता है; शून्य OR (दोनों आउटकोड 0000) इसके बजाय तुच्छ-स्वीकृति स्थिति है।
  4. गोला या बेलन जैसी द्विघाती सतह का सर्वोत्तम वर्णन यह है:

    1. x, y, z में एकल द्वितीय-घात समीकरण से वर्णित सतह
    2. सदा हज़ारों छोटे त्रिभुजों से निरूपित, बिना किसी समीकरण के
    3. एकविमीय वक्र, सतह नहीं
    4. केवल दो आयामों में परिभाषित करने योग्य
    उत्तर देखें

    उत्तर: A — x, y, z में एकल द्वितीय-घात समीकरण से वर्णित सतह

    द्विघाती सतहें एक द्विघाती समीकरण से संहत रूप से वर्णित हैं, जो ठीक वही है जो उन्हें सन्निकटन-त्रुटि सहित बहुभुज-मेश से सन्निकटित करने के बजाय सटीक रूप से निरूपित व रेंडर करने देता है।
  5. बेज़िए वक्र व B-स्प्लाइन वक्र के बीच मुख्य भेद यह है:

    1. B-स्प्लाइन नॉट-सदिश से हर नियंत्रण-बिंदु को केवल स्थानीय प्रभाव देता है; बेज़िए नियंत्रण-बिंदु हिलाना पूरे वक्र को प्रभावित करता है
    2. बेज़िए वक्र सदा सीधी रेखा होता है
    3. B-स्प्लाइन को रास्टर प्रदर्शन पर नहीं खींचा जा सकता
    4. कोई भेद नहीं; दोनों शब्द पर्यायवाची हैं
    उत्तर देखें

    उत्तर: A — B-स्प्लाइन नॉट-सदिश से हर नियंत्रण-बिंदु को केवल स्थानीय प्रभाव देता है; बेज़िए नियंत्रण-बिंदु हिलाना पूरे वक्र को प्रभावित करता है

    बेज़िए वक्र का हर नियंत्रण-बिंदु पूरे वक्र की आकृति को प्रभावित करता है (वैश्विक नियंत्रण); B-स्प्लाइन का नॉट-सदिश हर नियंत्रण-बिंदु के प्रभाव को परिबद्ध पड़ोस तक सीमित करता है (स्थानीय नियंत्रण) — दोनों के बीच सर्वाधिक परखा गया एकल भेद।
  6. मूल प्रदीप्तन प्रतिरूप में डिफ़्यूज़ परावर्तन इस पर निर्भर करता है:

    1. सतह-अभिलंब व प्रकाश-स्रोत दिशा के बीच कोण पर, पर दर्शक की दिशा पर नहीं
    2. केवल दर्शक की दिशा पर, प्रकाश की पर नहीं
    3. न प्रकाश की दिशा पर न दर्शक की
    4. वस्तु के द्रव्यमान पर
    उत्तर देखें

    उत्तर: A — सतह-अभिलंब व प्रकाश-स्रोत दिशा के बीच कोण पर, पर दर्शक की दिशा पर नहीं

    लैम्बर्ट का कोसाइन नियम डिफ़्यूज़ परावर्तन को केवल सतह-अभिलंब व आगत प्रकाश-दिशा के बीच कोण पर निर्भर बनाता है, हर देखने-दिशा में समान रूप से बिखराते हुए — स्पेक्युलर परावर्तन है, डिफ़्यूज़ नहीं, जो अतिरिक्त रूप से दर्शक की अपनी दिशा पर भी निर्भर करता है।
  7. गूरो शेडिंग की तुलना में फ़ॉन्ग शेडिंग के विषय में निम्नलिखित में कौन सत्य हैं? (एक से अधिक विकल्प सही हो सकते हैं।)

    1. फ़ॉन्ग प्रति पिक्सेल सतह-अभिलंब अंतर्वेशित करती है; गूरो शीर्षों पर गणित रंग-मान अंतर्वेशित करती है
    2. फ़ॉन्ग सामान्यतः गणनात्मक रूप से अधिक महँगी है
    3. फ़ॉन्ग वह तीक्ष्ण स्पेक्युलर चमक पकड़ सकती है जो शीर्षों के बीच पड़े, जिसे गूरो चूक सकती है
    4. दोनों हर स्थिति में समान निर्गम उत्पन्न करती हैं
    उत्तर देखें

    उत्तर: A — फ़ॉन्ग प्रति पिक्सेल सतह-अभिलंब अंतर्वेशित करती है; गूरो शीर्षों पर गणित रंग-मान अंतर्वेशित करती है; B — फ़ॉन्ग सामान्यतः गणनात्मक रूप से अधिक महँगी है; C — फ़ॉन्ग वह तीक्ष्ण स्पेक्युलर चमक पकड़ सकती है जो शीर्षों के बीच पड़े, जिसे गूरो चूक सकती है

    फ़ॉन्ग का प्रति पिक्सेल अभिलंब-अंतर्वेशन व प्रकाशन-गणना गूरो के प्रति-शीर्ष रंग-अंतर्वेशन से अधिक सटीक व महँगी है, और यही सटीकता ठीक वह है जो उसे वे चमकें पकड़ने देती है जिन्हें गूरो का मोटा रंग-अंतर्वेशन सहज कर देता है।
  8. उस प्रक्षेपण-प्रकार का नाम बताइए जो समांतर रेखाओं को लुप्त-बिंदुओं की ओर अभिसरित करता है व दूर की वस्तुओं को छोटा दिखाता है, मानव दृष्टि के वस्तुतः काम करने के तरीके से मेल खाते हुए।

    संख्यात्मक उत्तर — मान टाइप करें।

    उत्तर देखें

    उत्तर: perspective

    परिप्रेक्ष्य प्रक्षेपण सटीक समांतर/आनुपातिक संबंधों को विकृत करता है (ऑर्थोग्राफिक/समांतर प्रक्षेपण के विपरीत), प्राकृतिक गहराई-बोध से मेल खाने के बदले में, इसीलिए इसे तकनीकी आरेखण के बजाय यथार्थवादी रेंडरिंग हेतु प्रयुक्त किया जाता है।