2012-08-30 19 views
5

मैं एक मैक एप्लिकेशन लिख रहा हूं जो विरासत प्रोफाइल के साथ ओपनजीएल का उपयोग करके NSOpenGLView पर अपने कुछ यूआई खींचता है।क्या शेर के साथ हर मैक ओपनजीएल 3.2 का समर्थन करता है?

मेरा ऐप ओएस एक्स 10.7 और बाद में लक्षित है।

अगर मैं ओपनजीएल 3.2 में माइग्रेट करता हूं, तो क्या यह शेर के साथ कुछ उपयोगकर्ताओं को इसे चलाने के लिए रोक देगा, या शेर के साथ हर मैक ओपनजीएल 3.2 का समर्थन करता है?

उत्तर

5

ओएस एक्स 10.7 के एसडीके में ओपनजीएल 3.2 की कोर प्रोफाइल शामिल है, लेकिन वास्तविक रन-टाइम समर्थन के लिए ओपनजीएल 3.2-अनुरूप जीपीयू और ड्राइवर की उपस्थिति की आवश्यकता होती है।

ओपनजीएल 3.2 2008 में जारी किया गया था और ओएस एक्स 10.7 शेर 2006 में वापस आने वाले कुछ मैक मॉडल का समर्थन करता है। देर 2006 कोर 2 डुओ मैकबुक प्रो शेर चलाता है और एक अति गतिशीलता राडेन एक्स 1600 है जो ओपनजीएल 2.0 जीपीयू है।

उस एकल उदाहरण से यह दिखाया गया है कि 10.7 शेर चलाने में सक्षम कंप्यूटरों का सेट ओपनजीएल 3.2 प्रोग्राम चलाने में सक्षम कंप्यूटरों के सेट का एक सुपरसेट है।

ध्यान दें कि मैं न तो मैक विशेषज्ञ हूं और न ही ओपनजीएल प्रोग्रामर हूं, मुझे नहीं पता कि ओपनजीएल पिछड़ा संगत है। मुझे लगता है कि ओपनजीएल 3.2 पुस्तकालयों के खिलाफ संकलन ठीक है, लेकिन यदि आप किसी भी हार्डवेयर-तेज 3.2 सुविधाओं का उपयोग करने का प्रयास करते हैं तो आपको रनटाइम त्रुटि मिल जाएगी। लेकिन फिर आपको यह देखने के लिए परीक्षण करना चाहिए कि इसका उपयोग करने से पहले कोई सुविधा समर्थित है या नहीं, इसलिए आपके प्रोग्राम को पुराने मैक पर ठीक चलाना चाहिए बशर्ते आप कुछ मामूली संशोधन करें।

0

वहां से उत्तर सही है, यदि आप सॉफ़्टवेयर रेंडरर फ़ॉलबैक विकल्प को अक्षम करते हैं जो शेर चलाते हुए प्रत्येक मैक के लिए उपलब्ध है, लेकिन हार्डवेयर तेज नहीं है।

यहाँ ओपन की एक विस्तृत सूची अलग GPUs और सिस्टम सॉफ्टवेयर रेंडरर द्वारा समर्थित सुविधाओं है: https://developer.apple.com/graphicsimaging/opengl/capabilities/GLInfo_1075_Core.html

5

OSX एक सॉफ्टवेयर वापस आने रेंडरर जो स्वचालित रूप से प्रयोग किया जाता है कि जब भी कोई ओपन सुविधा हार्डवेयर में उपलब्ध नहीं है है। शेर चलाने वाली प्रत्येक ओएसएक्स मशीन इस सॉफ़्टवेयर फ़ॉलबैक रेंडरर के माध्यम से पूर्ण ओपनजीएल 3.2 कोर विनिर्देश का समर्थन करती है। यदि आप उन सुविधाओं का अनुरोध करते हैं जो हार्डवेयर में उपलब्ध नहीं हैं, तो ओपनजीएल फ्रेमवर्क चुपचाप ग्राफिक्स पाइपलाइन के उस चरण के लिए सॉफ़्टवेयर प्रतिपादन पर वापस आ जाएगा।

इसका मतलब यह है कि हार्डवेयर के बावजूद शेर चलाने वाला प्रत्येक मैक आपके ओपनजीएल 3.2 एप्लिकेशन को चलाएगा। आपको रनटाइम त्रुटि नहीं मिलेगी, लेकिन आपको स्वीकार्य प्रदर्शन मिल सकता है या नहीं - यह निर्भर करता है कि GPU हार्डवेयर में कौन सी विशेषताओं का समर्थन करता है और आपका प्रतिपादन कार्य कितना जटिल है।