ब्रेसेनहम की लाइन एल्गोरिथ्म केवल तेजी से पूर्णांक संचालन (इसके अलावा, घटाव और 2 से गुणा) का उपयोग करके सीधी रेखाएं खींचने का एक तरीका है। हालांकि, यह अलियासड लाइनें जेनरेट करता है। क्या एंटीएलियास लाइनों को खींचने का एक समान तेज़ तरीका है?
ब्रेसेनहम की लाइन एल्गोरिथ्म केवल तेजी से पूर्णांक संचालन (इसके अलावा, घटाव और 2 से गुणा) का उपयोग करके सीधी रेखाएं खींचने का एक तरीका है। हालांकि, यह अलियासड लाइनें जेनरेट करता है। क्या एंटीएलियास लाइनों को खींचने का एक समान तेज़ तरीका है?
जवाबों:
क्या एंटीएलियास लाइनों को खींचने का एक समान तेज़ तरीका है?
नहीं, क्योंकि परिभाषा के अनुसार एक एंटी-एलियास लाइन अधिक पिक्सल को छूती है। इस तरह के एल्गोरिदम धीमे होंगे।
एक सॉफ्टवेयर rasterizer में, एंटी-अलियासड रेखाएं खींचने का सर्वव्यापी तरीका Xiaolin Wu का लाइन एल्गोरिदम है । इसे लागू करना मुश्किल नहीं है, और वैसे भी उस लिंक पर असामान्य रूप से उच्च-गुणवत्ता का छद्म कोड है।
एक हार्डवेयर रेखापुंज पाइप में, लाइन प्रिमिटिव को डिफ़ॉल्ट (या उपयोगकर्ता-प्रदत्त) ज्यामिति शेडर द्वारा एक स्क्रीन-स्पेस क्वाड तक विस्तारित किया जाता है, और फिर दो त्रिकोणों के रूप में खींचा जाता है, जो तब सामान्य तरीकों से अलियास हो सकता है।
एक रिऐट्रैसर में, विभिन्न प्रकार के विकल्प होते हैं। यह सोचने के लायक है कि आप वास्तव में 1D ऑब्जेक्ट कैसे खींचना चाहते हैं। शायद एक सिलेंडर के रूप में (वू छाया!)। ध्यान दें कि यह परिप्रेक्ष्य / पूर्वाभास के मुद्दों को प्रस्तुत करता है जो आप चाहते हैं (या नहीं हो सकता है)। एक स्पष्ट सामान्यीकरण नहीं है। फिर, जाहिर है, आप जो कुछ भी करते हैं, आप उसे पूरा करते हैं।