mac中的glTexParameteri分段错误

Posted

技术标签:

【中文标题】mac中的glTexParameteri分段错误【英文标题】:glTexParameteri segmentation fault in mac 【发布时间】:2015-04-11 09:41:13 【问题描述】:

我尝试在 mac 上使用 OpenGL glut,但出现以下分段错误:

GLuint g_frameBuffer;

void render()

    //Clear color buffer
    glClear( GL_COLOR_BUFFER_BIT );

    //Render quad
    glBegin( GL_QUADS );
        glVertex2f( -0.5f, -0.5f );
        glVertex2f(  0.5f, -0.5f );
        glVertex2f(  0.5f,  0.5f );
        glVertex2f( -0.5f,  0.5f );
    glEnd();

    //Update screen
    glutSwapBuffers();


int main( int argc, char* args[] )

    glutInit( &argc, args );
    glutInitWindowSize  ( 1000, 1000);
    glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);

    glutCreateWindow("Paintstorm");
    glutInitDisplayMode(GLUT_RGBA);
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();

    glEnable(GL_TEXTURE_2D);

    glGenFramebuffersEXT( 1, &g_frameBuffer );
    //Set rendering function
    glutDisplayFunc( render );
    //Start GLUT main loop
    glutMainLoop();

    return 0;

我用 -framewok OpenGL、-framework GLUT、-framework Cocoa 编译它 添加 glTextParametri 时出现错误

【问题讨论】:

【参考方案1】:

您应该在调用 glEnable(GL_TEXTURE_2D) 之后调用 glTexParameteri。您可能在这里有段错误,因为您没有有效的 opengl 上下文(您在 glutCreateWindow 之后拥有它)

【讨论】:

以上是关于mac中的glTexParameteri分段错误的主要内容,如果未能解决你的问题,请参考以下文章

Mac OS 上“导入 cv”期间的“分段错误”

C++ 服务器 Linux 机器上的分段错误 - 适用于 Mac

linux (g++) 上的分段错误,但 Mac OS 上没有。?

ejabber 的 erl 文件在 mac os 10.7.5 上运行时给出错误“分段错误:11”

分段错误:在 Mac 上为 11,但在 Linux 上没有,同时在 C 中创建数组

mac终端报告分段故障