我正在使用OpenCV客户端应用程序,我的应用程序在IOS 5.1上运行良好,但是当我在IOS 4.3上运行我的应用程序时,它在glColor4f
类中定义的gl.h
函数处崩溃,但崩溃时不显示任何错误消息。我正在做如下:
QCAR::Matrix44F modelViewProjection;
glColor4f(0.5f,0.0f,0.0f,0.0f);
ShaderUtils::multiplyMatrix(&qUtils.projectionMatrix.data[0], &modelViewMatrix.data[0], &modelViewProjection.data[0]);
glUseProgram(shaderProgramID);
glVertexAttribPointer(vertexHandle, 3, GL_FLOAT, GL_FALSE, 0, (const GLvoid*) &vbVertices[0]);
glEnableVertexAttribArray(vertexHandle);
glUniformMatrix4fv(mvpMatrixHandle, 1, GL_FALSE, (GLfloat*)&modelViewProjection.data[0] );
glColor4f(0.5f,0.0f,0.0f,0.0f);
glEnableClientState (GL_VERTEX_ARRAY);
glEnableClientState (GL_COLOR_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);
// glColorPointer(4, GL_FLOAT, 0, triangleColors);
glVertexPointer(3, GL_FLOAT, 0, (const GLvoid*) &vbVertices[0]);
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
glDisable(GL_TEXTURE_2D);
glDrawArrays(GL_LINES, 0, 8);
//glDisableClientState(GL_TEXTURE_COORD_ARRAY);
//glDisable(GL_TEXTURE_2D);
glDisableVertexAttribArray(vertexHandle);
最佳答案
我已经进行了一些研究,以下是一些您可以尝试的事情:
glColor4d()
,它需要4个double参数; getProc
调用glColor4f
时,就会发生这种情况; glColor4f()
之前调用glGetError()以了解事物的GL方面是否存在问题。 另外,有人在this thread中回答了您的问题。他可能是正确的。
关于iphone - IOS中的glColor4f OpenGl函数导致应用程序崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12352936/