2012-01-17 11 views
5

से मौजूदा सी ++ ओपनजीएल प्रोजेक्ट को ट्रांसफॉर्म करें, मैं अपने वैज्ञानिक 3 डी एप्लिकेशन को फ्रीग्लूट से जीएलएफडब्लू में अपग्रेड करना चाहता हूं, लेकिन मुझे छिपे हुए संघर्ष या डेटा के नुकसान के बारे में चिंतित है, असल में मेरा एप्लिकेशन फ्रीग्लूट के साथ एक आकर्षण की तरह काम करता है और मैं नहीं करता कोई समस्या नहीं है, लेकिन सभी आधुनिक पुस्तकों और ट्यूटोरियल में आधुनिक ओपनजीएल (3.0+) के लिए जीएलएफडब्ल्यू की सिफारिश की जाती है।ग्लूट/फ्रीग्लूट से glfw

मैं जीएलएफडब्ल्यू एपीआई देखता हूं और यह glfw* उपसर्ग के साथ ग्लूट जैसा दिखता है, लेकिन मुझे बिल्कुल यकीन नहीं है। तो मेरे मन में तीन प्रश्न हैं:

  1. यह GLFW खातिर अपने मौजूदा परियोजना को तोड़ने, या freeglut से चिपक लायक है?
  2. क्या मैं ग्लूट से किसी भी सुविधा को नुकसान पहुंचा रहा हूं?
  3. क्या जीएलएफडब्ल्यू जीटीके + के साथ संगत है? (क्योंकि मेरे जीयूआई जीटीके पर आधारित है)
+3

मुझे कोई कारण नहीं है कि आप ओपनगल 3.0+ का उपयोग फ्रीग्लूट के साथ क्यों नहीं कर सकते हैं, अगर आपका कार्ड इसका समर्थन करता है –

+1

ठीक है, जीएलएफडब्ल्यू में देखने से, मैं फ्रीग्लू में और विकल्प देखता हूं। मुझे लगता है कि कारण है। सुनिश्चित नहीं है कि –

+2

फ्रीग्लूट ओपनजीएल 3 का समर्थन करता है ठीक है। कुछ ऐसा करें जो 'glutInitContextVersion (3, 2); glutInitContextFlags (GLUT_FORWARD_COMPATIBLE); और आप रोल करने के लिए तैयार हैं। –

उत्तर

3

3- GLFW साथ जीटीके + संगत है? (क्योंकि मेरा जीयूआई जीटीके पर आधारित है)

जीटीके + का उपयोग करके आपको न तो फ्री-/जीएलयूटी और न ही जीएलएफडब्ल्यू का उपयोग करना चाहिए। जीटीके + में ओपनजीएल विजेट है और यह सभी इवेंट मैनेजमेंट करता है। इसका उपयोग करें।

+0

@Ndv बस ध्यान रखें कि जीएलएफडब्लू (फ्रीग्लूट की तरह) सिर्फ ** एक जीयूआई लाइब्रेरी ** (जीटीके + की तरह) है, ** जिसका ओपनजीएल ** के साथ कुछ भी नहीं है। –

+2

@Ndv तो यदि आप इसे स्वयं संभालना चाहते हैं, तो आप प्लेटफार्म के अपने एपीआई (जीत के लिए wgl, nix के लिए glx) का उपयोग करके ओपनजीएल संदर्भ को प्रबंधित करने के आसपास नहीं होंगे। अन्यथा जीएलएफडब्लू/जीएलयूटी के लिए कोई तर्क नहीं है, लेकिन जीटीके + के खिलाफ, क्योंकि दोनों मंच विशिष्ट ओपनजीएल और जीयूआई मैनेजमेंट के लिए सिर्फ रैपर हैं, जिससे उन्हें ओपनजीएल संदर्भ प्रबंधन ** के समर्थन के साथ ** जीयूआई पुस्तकालयों से अधिक कुछ नहीं बनाया गया है। इस संबंध में जीएलएफडब्ल्यू/जीएलयूटी और जीटीके + सटीक समान अमूर्त स्तर पर हैं। दोबारा: ** जीएलएफडब्ल्यू/जीएलयूटी ओपनजीएल ** से संबंधित नहीं है या जीटीके + से अधिक नहीं है। –

+0

@ एनडीवी: मैं केवल ईसाई राउ से सहमत हो सकता हूं; * जीएलयूटी और जीएलएफडब्ल्यू निम्न स्तर नहीं हैं। * आप निम्न स्तर देखना चाहते हैं? फिर https://github.com/datenwolf/codesamples/tree/master/samples/OpenGL/x11argb_opengl – datenwolf

संबंधित मुद्दे