Thursday 15 September 2011

glVertexAttribPointer raising GL_INVALID_OPERATION on OpenGL 3.2 on OS X -


glVertexAttribPointer कोको में चलने वाले मेरे ओपनजीएल 3.2 प्रोग्राम पर GL_INVALID_OPERATION उठा रहा है ओएस एक्स 10.8.3 के लिए।

मैंने APPLE फ़ंक्शंस का उपयोग करके वाओ सेटअप किया है, और glGetAttribLocation का उपयोग कर विशेषता स्थानों को नीचे खींच लिया है।

बाबा को बाध्य करने के बावजूद, विशेषता को सक्षम करने और इसके परिणामस्वरूप, अमान्य ऑपरेशन के परिणामस्वरूप।

मैं सफलतापूर्वक स्पष्ट रंग को संशोधित कर सकता हूं, और जीएल संदर्भ की अखंडता से चिंतित नहीं हूं। / P>

हेडर के लिए मुझे ये परिभाषित किया गया है:

  GLuint _vao; ग्लूंट _vbo;   

आप यह भी मान सकते हैं कि स्थिति प्रविष्टि एक vec3 के संदर्भ के साथ एक अपारदर्शी वस्तु है।

कार्यान्वयन में, मैं इसे चला रहा हूं:

  ग्लेंनवेर्टेक्सअरेज़एप्पल (1, & amp; _vao); glBindVertexArrayAPPLE (_vao); स्थिर GLfloat कोष्ठक [] = {0.f, 0.f, 0.f, 1.f, 0.f, 0.f, 0.f, 1.f, 0.f, 1.f, 1.f , 0. एफ}; ग्लेंजबफर (1, & amp; _vbo); ग्लबिंडबफर (GL_ARRAY_BUFFER, _vbo); ग्लबफ़रडेटा (GL_ARRAY_BUFFER, 4 * 3 * आकारफ (जीएलफ्लोट), शिरोबिंदु, जीएलएसएडीटीआईसीडीआरएडब्ल्यू); glEnableVertexAttribArray (positionAttribute.location); GlVertexAttribPointer (स्थिति। विशेषता। स्थान, 3, GL_FLOAT, GL_FALSE, 0, NULL); // यहाँ त्रुटि   

क्या किसी और को यह अनुभव है या पता है कि यह क्या कारण है?

स्पष्ट और स्पष्ट करने के लिए उत्तर और धन्यवाद जाता है।

मैंने एक संदर्भित शर्त में #else ब्लॉक को याद किया था #define जो प्री -3 ओपन गेल में APPLE एक्सटेंशन का उपयोग करेगा।

समाधान को APPLE एक्सटेंशन को निकालना और मूल ओपनजीएल का उपयोग करना है।

No comments:

Post a Comment