Bueno, lo primero es Saludos!!!
Estoy intentando aprender OpenGL (utilizandolo desde SDL), el asunto es que he llegado a compilar un ejemplo sencillo para PSP en el ejemplo simplemente muestro un triangulo en pantalla, pero no importa lo que haga el triangulo siempre sale negro, este es el codigo que tengo:
if(SDL_Init(SDL_INIT_VIDEO)!=0)
{
printf("no se pudo iniciar SDL\n");
return 1;
}
SDL_ShowCursor(0);
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER,1);
SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE,16);
SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 4);
SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 4);
SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 4);
SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 4);
pantalla=SDL_SetVideoMode(480,272,32,SDL_OPENGL);
if(pantalla==NULL)
{
printf("error en el inicio de pantalla %s\n", SDL_GetError());
return 1;
}
glEnable(GL_TEXTURE_2D);
glShadeModel(GL_SMOOTH);
glClearColor(0.0f,0.0f,0.0f,1.0f);
glViewport(0,0,480,272);
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glClearDepth(1.0F);
glEnable(GL_DEPTH_TEST);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45.0f,(GLfloat)480/272,0.01f,100.0f);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glDisable(GL_LIGHTING);
while(corriendo)
{
glClear( GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glClearColor(1.0f, 0.0f, 0.0f, 1.0f);
glColor3f(1.0,1.0,1.0);
glLoadIdentity();
glTranslatef(0.0f,0.0f,-5.0f);
glBegin(GL_TRIANGLES);
glVertex3f( 0.0f, 1.0f, 0.0f);
glVertex3f(-1.0f,-1.0f, 0.0f);
glVertex3f( 1.0f,-1.0f, 0.0f);
glEnd();
glFlush();
sceCtrlReadBufferPositive(&pad, 1);
SDL_GL_SwapBuffers();
}
PD: Como pueden ver hay parte del codigo que no las puse por no ser referentes a OpenGL.
Gracias de antemano.