C ++,Android | SDL和OpenGL ES(没有绘制)

时间:2015-10-12 17:03:15

标签: android c++ opengl-es sdl

我想使用原生活动在Android上使用展位SDL和gles 1。 SDL提供了创建OpenGL上下文(SDL_GL_CreateContext)的功能。 清除屏幕并交换缓冲区可以正常工作,但每次绘制尝试都会失败。 为了确保,我没有做错任何事,我尽量减少绘图尝试。 这是一个小样本。

// creating OpengGL-context [...]

while (true) // basic mainloop
{
    // set viewport and projectionmatrix
    glViewport(0, 0, engine->getWidth(), engine->getHeight()); // width and height in pixels

    glMatrixMode(GL_PROJECTION);
    glPushMatrix();
    glLoadIdentity();

    glOrthof(-1, 1, 1,  -1, -1.0, 1.0);

    glMatrixMode(GL_MODELVIEW);
    glPushMatrix();
    glLoadIdentity();

    //draw shape
    GLfloat vertices[] = {1,0,0, 0,1,0, -1,0,0};
    glEnableClientState(GL_VERTEX_ARRAY);
    glVertexPointer(3, GL_FLOAT, 0, vertices);
    glDrawArrays(GL_TRIANGLES, 0, 3);
    glDisableClientState(GL_VERTEX_ARRAY);
}

// free memory [...]

现在的问题是什么都没有。但我的OpenGL上下文是有效的。

任何帮助将不胜感激:) 感谢

编辑: 我实际上忘了使用

强制使用OpenGL 1
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 1);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 1);

0 个答案:

没有答案