我想使用原生活动在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 1SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 1);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 1);