2012-08-15 21 views
13

मैं 10.8 माउंटेन शेर का उपयोग करके ओपनजीएल 3.3 पर आर्कसिंथेसिस ट्यूटोरियल का पालन कर रहा हूं और जब परियोजना का निर्माण करता हूं तो यह जीएलएसएल संस्करण 3.30 का उपयोग करके शेडर्स को संकलित करता है और चलाता है, हालांकि मैक ओएस 10.8 पर कोर प्रोफाइल में भी मुझे जीएलएसएल 3.30 समर्थन नहीं होना चाहिए - केवल 1.50 (चित्र में प्रकाश डाला के रूप में)मैक ओएस 10.8 जीएलएसएल 3.30 का समर्थन करता है?

किसी को समझाने के लिए कि कैसे मैं इस काले जादू को प्राप्त करने में कामयाब रहे सक्षम है?

+0

असल में, कुछ और परीक्षण के साथ यह जीएलएसएल 4.10 तक सभी तरह से काम करता है। केवल 4.20 की कोशिश करने पर यह शेडर्स को संकलित करने में विफल रहता है ... – LiarWithFire

+0

शायद शेडर कंपाइलर उच्च शेडर भाषाओं को सही ढंग से पहचान नहीं पाता है। क्या आपने 330-विशिष्ट सुविधा का उपयोग करने का प्रयास किया है? – Oskar

+1

जहां तक ​​मुझे पता है, लेआउट (स्थान = 0) केवल जीएलएसएल 3.3 और उसके बाद में शामिल है। – LiarWithFire

उत्तर

7

ओएस एक्स 10.8 अभी भी ओपनजीएल 3.2 का समर्थन करता है, लेकिन कुछ 3.3 फीचर्स जैसे कि विशेषता स्थान (#extension GL_ARB_explicit_attrib_location : enable) निर्दिष्ट करता है। शेडर कंपाइलर 4.10 तक संस्करण स्वीकार करता है। उन्होंने इसे अनुकूलता या (विशेषण) के लिए मूल रूप से 4.1 का समर्थन करने के लिए छोड़ दिया होगा।

यह कम से कम 10.8 के साथ कुछ हफ्तों के बाद मेरा निष्कर्ष है।

संपादित करें: ऐसा लगता है कि 4.10 अटकलें स्पॉट पर थीं। 10.9-10.12 संस्करण 4.10 तक समर्थन करता है। मुझे लगता है कि वे आगे बढ़ने के बजाय अपने धातु एपीआई पर संसाधन खर्च करना चाहते थे और गणना करने वाले शेडर्स प्राप्त करना चाहते थे ..

+1

यह ध्यान दिया जाना चाहिए कि यदि '#extension GL_ARB_explicit_attrib_location: सक्षम 'वास्तव में काम करता है, तो यह ऑफ-स्पेक है क्योंकि ओपनजीएल GL_ARB_explicit_attrib_location का विज्ञापन नहीं करता है। या तो, या ऐप्पल का [ओपनजीएल एक्सटेंशन पेज पुराना है।] (Https://developer.apple.com/graphicsimaging/opengl/capabilities/) –

+1

हां। मैं सत्यापित कर सकता हूं कि यह एक्सटेंशन 10.7 और 10.8 में एटीआई और एनवीडिया दोनों पर काम करता है। जीएलएसएल 1.5/ओएस एक्स को स्थगित शेडर में स्थान निर्दिष्ट करने का समर्थन करने के लिए स्थगित शेडर्स को पोर्ट करते समय दुर्घटना से पता चला। (एकाधिक एफबीओ अनुलग्नकों को प्रस्तुत करना) पहले से ही कठिन तरीका सीखा है कि यह कितना महत्वपूर्ण है, और रोमांचित था मुझे इसे कठिन तरीके से ठीक करने की आवश्यकता नहीं थी। – Grimmy