मैं ओपनजीएल ईएस और ओपनजीएल (विंडोज) के लिए एक ही शेडर स्रोत रखना चाहता हूं। ऐसा करने के लिए मैं कस्टम डेटा प्रकारों को परिभाषित करना चाहता हूं और केवल OpenGL ES फ़ंक्शंस का उपयोग करना चाहता हूं।ओपनजीएल ईएस और ओपनजीएल संगत शेडर्स
#define highp
#define mediump
#define lowp
विंडोज शेडर के लिए
और शेडर लिखने के रूप में यह OpenGL ES के लिए है:
एक दृष्टिकोण को परिभाषित करने के लिए है।
अन्य दृष्टिकोण OpenGL ES के लिए इस तरह कस्टम डेटा प्रकार को परिभाषित करने के लिए है:
#define hvec2 highp vec2
और Windows
#define hvec2 vec2
के लिए इस तरह आपको क्या लगता है बेहतर है? क्या आपके पास इस समस्या के लिए अन्य समाधान हैं?
क्या कोई जानता है कि यह कैसे काम करता है? मैंने spec के माध्यम से स्किम किया है लेकिन जीएलएसएल ईएस (संस्करण 100) और जीएलएसएल (संस्करण 150) कैसे संगत होगा उससे संबंधित कुछ भी नहीं मिला। –
भविष्य के संदर्भ के लिए मैंने पाया कि ES2_compatibility के तहत एक OpenGL 3.2> संदर्भ शीर्ष पर #version 100 के साथ ES 2.0 शेडर्स लोड कर सकता है। –