c++ - OpenGL: GL_LINE_SMOOTH not supported on all cards; wont even draw the lines, unless -
सबसे पहले, इस कोड का उद्देश्य क्या है?
glHint (GL_LINE_SMOOTH_HINT, GL_NICEST );
मैं वहां GL_DONT_CARE
डाल सकता हूं लेकिन यह मेरी रेखाएं तैयार नहीं करता, जब तक मैं glDisable (GL_LINE_SMOOTH) का उपयोग नहीं करता
तो मुझे यह पूछने पर विचार करना चाहिए कि किसी तंत्र में कुछ निर्मित तंत्र बनाने के लिए उसे लाइनें खींचने दें, भले ही चिकनी रेखाएं समर्थित न हो जाएं (तो यह उन्हें एंटीलेसियोज़ के बिना खींचना ...)
या क्या मुझे इसके लिए खुद का कार्य करना पड़ता है और जांचना है कि क्या चिकनी लाइनें आदि समर्थित हैं ... और हर बार जब मैं चिकनी रेखाएं बनाना चाहता हूं, तो मुझे इस फ़ंक्शन को कॉल करने की ज़रूरत है जो यह जांचती है कि इसकी समर्थित है या नहीं? अरग।
संपादित करें: मेरे दूसरे कार्ड पर लाइनें चिकनी होती हैं, मेरे दूसरे कार्ड पर वे भी दिखाई नहीं देते हैं, जब तक कि मैं चिकनी लाइनों को अक्षम नहीं करता तो यही समस्या है, ग्लिनबल नहीं है (जीएल_BLEND)
glHint
के रूप में नाम का अर्थ है ड्राइवर को एक संकेत । यह कुछ हासिल करने की आवश्यकता नहीं है। glHint
का वास्तविक क्रियान्वयन ग्राफिक्स ड्रायवर पर निर्भर करता है।
साथ ही, LINE_SMOOTH
आईएनजी को सक्षम करने के लिए, आपको सक्षम करने के लिए सम्मिश्रण की आवश्यकता है क्या आपने GL_BLEND
को सक्षम किया है? और जब आप उस पर होते हैं, तो अपने ग्लबल फ्लेक्स का चुनाव भी करें!
उदाहरण:
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glEnable (GL_BLEND);
Comments
Post a Comment