ओपनजीएल ईएस 2.0 में पिक्सेल सही ग्राफिक्स के लिए स्क्रीन पिक्सल के साथ संरेखित करने के लिए मैं अपने बनावट कैसे प्राप्त कर सकता हूं? यह एक ऐसी परियोजना के लिए महत्वपूर्ण है जिस पर मैं काम कर रहा हूं जिस पर पिक्सेल कला ग्राफिक्स का उपयोग किया जाता है। इस पर किसी भी तरह मदद बहुत अच्छा होगा!आईफोन ओपनजीएल ईएस 2.0 - पिक्सेल परफेक्ट टेक्सचर
उत्तर
मेरा उत्तर यहाँ देखें: OpenGL Texture Coordinates in Pixel Space
यह कई बार कहा गया है, लेकिन मैं हाथ में लिंक है, तो एक त्वरित और किसी न किसी स्पष्टीकरण की जरूरत नहीं है। मान लीजिए कि बनावट 8 पिक्सल चौड़ा है करते हैं:
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
^ ^^^^^^^^
0.0 | | | | | | | 1.0
| | | | | | | | |
0/8 1/8 2/8 3/8 4/8 5/8 6/8 7/8 8/8
अंक बनावट के पिक्सल निरूपित, सलाखों बनावट के किनारों और पास के मामले में पिक्सल के बीच की सीमा को छानने। हालांकि आप पिक्सेल के केंद्रों को हिट करना चाहते हैं। तो अगर आप बनावट में रुचि रखते हैं निर्देशांक
(0/8 + 1/8)/2 = 1/(2 * 8)
(1/8 + 2/8)/2 = 3/(2 * 8)
...
(7/8 + 8/8)/2 = 15/(2 * 8)
एक एन विस्तृत बनावट में पिक्सेल मैं के लिएया अधिक आम तौर पर उचित बनावट समन्वय
(2i + 1)/(2 एन)
हालांकि यदि आप स्क्रीन पिक्सेल के साथ अपने बनावट को पूरी तरह से संरेखित करना चाहते हैं, तो याद रखें कि जो आप निर्देशांक के रूप में निर्दिष्ट करते हैं वह क्वाड के पिक्सल नहीं हैं, लेकिन किनारों पर, प्रोजेक्शन के आधार पर स्क्रीन पिक्सेल किनारों के साथ संरेखित हो सकता है, केंद्र नहीं, इस प्रकार हो सकता है अन्य बनावट निर्देशांक की आवश्यकता है।
धन्यवाद! इससे मदद मिली। – Marc
मैं थोड़ा असहमत हूं - कुछ भी विशेष करने का कोई कारण नहीं है। जीएल यह सुनिश्चित करता है कि भिन्न नमूना हमेशा पिक्सेल (आमतौर पर केंद्र) के अंदर कहीं गणना की जाएगी, इसलिए कुछ भी करने की आवश्यकता नहीं है। बस बनावट को एक ट्रैक्टर के रूप में खींचें, बनावट फ़िल्टरिंग के लिए GL_NEAREST का उपयोग करें और (0,0,1,1) अपने बनावट निर्देशांक के रूप में करें। जब तक बनावट स्क्रीन स्पेस में क्वाड के समान आकार हो, तब तक आपका बनावट ड्रॉ पिक्सेलपरफेक्ट होगा। –
यह लिंक उपयोगी हो सकता है: "सटीक दो आयामी रैस्टराइज़ेशन वांछित है, तो ..." पर
http://glprogramming.com/red/appendixg.html#name1
देखो। यह ओपनजीएल टिप आपको बताती है कि 2 डी के लिए अपने ऑर्थो मैट्रिक्स को कैसे व्यवस्थित करें।
इसके अलावा, आपको किसी भी प्रकार की बनावट फ़िल्टरिंग को अक्षम करने की आवश्यकता हो सकती है।
विरासत ओपनजीएल के लिए यह अच्छी सलाह है, लेकिन सीधे ईएस 2.0 – andrewmu
@andrewmu पर लागू नहीं होती है: इसे नहीं पता था - क्या आप समझा सकते हैं? क्या ईएस इतना अलग है? – neodelphi
बहुत बहुत धन्यवाद लेकिन जैसा कि ardrewmu ने कहा, ऐसे मैट्रिक्स ऑपरेशंस ES 2.0 में उपलब्ध नहीं हैं। हालांकि मैंने इससे पहले देखा था, इससे मदद मिली होगी। – Marc
- 1. ओपनजीएल ईएस 2.0
- 2. ओपनजीएल ईएस 2.0
- 3. ओपनजीएल ईएस 2.0
- 4. ओपनजीएल ईएस 2.0 समर्थन?
- 5. ओपनजीएल ईएस 2.0
- 6. ओपनजीएल ईएस 2.0
- 7. ओपनजीएल ईएस 2.0
- 8. फुलस्क्रीन बनावट आईफोन ओपनजीएल ईएस
- 9. आईफोन ओपनजीएल ईएस -
- 10. ओपनजीएल ईएस 1.1 (आईफोन)
- 11. एंड्रॉइड ओपनजीएल ईएस 2.0 एम्यूलेटर
- 12. ओपनजीएल ईएस 2.0 शेडर उदाहरण?
- 13. ओपनजीएल ईएस 2.0 कैमरा मुद्दे
- 14. ओपनजीएल ईएस 2.0 और ओपनजीएल 4
- 15. ओपनजीएल ईएस (आईफोन) टच पिकिंग
- 16. ओपनजीएल ईएस 2.0 एफबीओ निर्माण अज्ञात त्रुटि
- 17. ओपनजीएल ईएस 2.0 वेरटेक्स ट्रांसफॉर्मेशन एल्गोरिदम
- 18. एंड्रॉइड ओपनजीएल ईएस 2.0: मैट्रिक्स.ट्रैस्लेट एम
- 19. ओपनजीएल ईएस 2.0 में बनावट अंक?
- 20. एंड्रॉइड ओपनजीएल ईएस 2.0 स्क्रीन विश्व निर्देशांक
- 21. ओपनजीएल ईएस 2.0 पीएनजी अल्फा चैनल
- 22. हाउटो ओपनजीएल ईएस 2.0 स्काईबॉक्स बनाते हैं?
- 23. ओपनजीएल ईएस 2.0 शेडर सर्वोत्तम प्रथाओं
- 24. ओपनजीएल ईएस 2.0 बनाम ओपनजीएल 3 - समानताएं और मतभेद
- 25. ओपनजीएल ईएस 2
- 26. ओपनजीएल-ईएस और सीजी
- 27. आईफोन बोर्ड गेम: ओपनजीएल ईएस या कोरग्राफिक्स?
- 28. आईफोन ओपनजीएल ईएस एकल या एकाधिक विचार?
- 29. आईफोन (ओपनजीएल ईएस) पर कोई glpolygonMode विकल्प?
- 30. ओपनजीएल ईएस
एक और बात ... सुनिश्चित करें कि आपके पास अपने शेडर के शीर्ष पर 'सटीक हाईप फ्लोट' है। यदि आपका बनावट 1024x1024 से बड़ा है, तो मध्यम आपको बनावट में प्रत्येक पिक्सेल का नमूना देने के लिए पर्याप्त सटीकता नहीं देगा। –