2010-08-29 12 views

उत्तर

15

यदि आप ध्यान से देखते हैं तो आप इसके कई वीडियो गेम में उदाहरण देख सकते हैं। जब भी कैमरा गलती से के माध्यम से एक वस्तु - आमतौर पर एक चरित्र की तरह एक चलती वस्तु - ध्यान देता है कि दुनिया सही तरीके से प्रस्तुत करने के लिए कैसे जारी है। ऐसा इसलिए है क्योंकि त्रिभुज के पीछे के पक्ष जो चरित्र की त्वचा बनाते हैं; वे प्रभावी रूप से पारदर्शी हैं। अगर यह मामला नहीं था तो हर बार जब कैमरा किसी ऑब्जेक्ट के अंदर गलती से चले गए तो स्क्रीन काला हो जाएगी (क्योंकि ऑब्जेक्ट का इंटीरियर जलाया नहीं जाता है) या आप ऑब्जेक्ट की त्वचा की तरह दिखने पर एक विचित्र परिप्रेक्ष्य प्राप्त करेंगे अंदर से।

11

बैक फेस कूलिंग वह जगह है जहां कैमरे/व्यूपॉइंट से दूर त्रिकोण को ड्राइंग के लिए नहीं माना जाता है।

Wikipedia को परिभाषित करता है इस के रूप में:

यह चित्रमय पाइप लाइन का परीक्षण करती है कि जब स्क्रीन पर प्रस्तावित आकार में बिन्दु दक्षिणावर्त या वामावर्त क्रम में दिखाई देते हैं कि क्या में एक कदम है। यदि उपयोगकर्ता ने निर्दिष्ट किया है कि सामने वाले मुकाबले वाले बहुभुजों की घड़ी की दिशा में घुमावदार है, यदि स्क्रीन पर प्रक्षेपित बहुभुज के विपरीत घुमावदार है तो इसे कैमरे से दूर करने के लिए घुमाया गया है और इसे खींचा नहीं जाएगा।

अन्य सिस्टम सामान्य चेहरे का उपयोग करते हैं और दृश्य दिशा के साथ डॉट उत्पाद करते हैं।

यह निर्णय लेने का अपेक्षाकृत तेज़ तरीका है कि त्रिभुज खींचना है या नहीं। एक घन पर विचार करें। घन के किनारों में से किसी एक समय में उपयोगकर्ता से दूर होने जा रहे हैं और इसलिए दिखाई नहीं दे रहे हैं। यहां तक ​​कि अगर इन्हें खींचा गया तो वे तीन "आगे" सामना करने वाले पक्षों से अस्पष्ट हो जाएंगे। चेहरे को वापस खींचकर आप 12 से 6 (2 प्रति तरफ) से खींचे गए त्रिकोणों की संख्या को कम कर रहे हैं।

पिछला चेहरा कूलिंग बंद "ठोस" वस्तुओं जैसे क्यूब्स, गोलाकार, दीवारों के साथ सबसे अच्छा काम करता है।

कुछ प्रणालियों में यह नहीं है क्योंकि वे चेहरे को डबल पक्षीय मानते हैं और इसलिए किसी भी दिशा से दिखाई देते हैं।

+0

मुझे अभी भी यह समझ में नहीं आ रहा है :) यदि मेरे पास लाल त्रिकोण है, तो इसे दोनों मामलों में खींचा जाना चाहिए (शिखर सीडब्ल्यू या सीसीडब्ल्यू क्रम में हैं)। चेहरे को कम करने के साथ, अगर मैं इसे पीछे से देखता हूं तो त्रिभुज अपमानित होगा। – fhucho

+0

@fhucho - इस मामले में आप इस बात पर विचार कर रहे हैं कि त्रिभुज दो तरफा प्रभाव में है और चेहरे को "बंद" करना चाहता है। – ChrisF

+0

धन्यवाद, मुझे अब मिल गया है। – fhucho

1

त्रिभुजों के पास उनके निर्देशांक एक विशिष्ट क्रम, घड़ी की दिशा में आईआईआरसी में विशिष्ट होते हैं।

जब ग्राफिक्स इंजन एक विशिष्ट दिशा से त्रिकोण को देखता है, और निर्देशांक विपरीत दिशा में होते हैं, तो यह जानता है कि यह किसी ऑब्जेक्ट के माध्यम से त्रिकोण के पीछे की तरफ देख रहा है। चूंकि वस्तु के सामने की ओर त्रिकोण को ढंकना है, इसे खींचा जाना नहीं है।

+1

यह वास्तव में डिफ़ॉल्ट रूप से दूसरी तरफ है - सीसीडब्ल्यू पॉइंट्स आगे की ओर वाला त्रिकोण इंगित करता है, और सीडब्ल्यू पॉइंट पिछड़े सामना का संकेत देते हैं। हालांकि, इसे बदलने का एक तरीका है। – cHao

+0

मेरा मानना ​​है कि डायरेक्ट 3 डी डिफ़ॉल्ट रूप से फ़्रॉन्साइड के लिए सीसीडब्ल्यू है जबकि ओपनजीएल डिफ़ॉल्ट रूप से फ़्रॉन्साइड के लिए सीडब्ल्यू है – Octopus

+0

ओपनजीएल डिफ़ॉल्ट सीसीडब्ल्यू है। इसे 'glFrontFace (GL_CW)' के साथ बदला जा सकता है। डायरेक्टएक्स डिफ़ॉल्ट रूप से सीडब्ल्यू है। –

2

यह केवल और अनुकूलन तकनीक है।

जब आप एक बंद ऑब्जेक्ट को देखते हैं, तो एक घन कहें, आप केवल आधे चेहरों को देखते हैं: चेहरे जो आपके प्रति हैं (या, कम से कम, चेहर जो आपके प्रति नहीं हैं हमेशा एक और चेहरे से गुज़रते हैं आप की ओर अंक)

आप इन सभी को पीछे की ओर की ओर मुख चेहरे ड्राइंग छोड़ते हैं, यह दो परिणाम हो जाएगा: - प्रतिपादन समय दो बार (औसतन) बेहतर होगा - अंतिम प्रस्तुत करना नहीं बदलेगी (एक और के बाद से , सामने वाला चेहरा "कूल्ड" के शीर्ष पर खींचा जाएगा)

तो आप मूल रूप से x2 perf मुफ्त में प्राप्त करते हैं।

यह जानने के लिए कि त्रिभुज आगे या पीछे का सामना कर रहा है, आप v0-v1 और v0-v2 लेते हैं, एक क्रॉस उत्पाद बनाते हैं। यह आपको सामान्य चेहरा देता है। यदि यह वेक्टर आपके प्रति है (डॉट (सामान्य, व्यू वेक्टर) < 0), ड्रा।

संबंधित मुद्दे