comparison src/main.c @ 57:ca665ce720ec

Some rendering fixes from visy.
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 06 Aug 2013 23:15:25 +0300
parents e2ac88d85aec
children 1099b8eb152a
comparison
equal deleted inserted replaced
56:79977d487182 57:ca665ce720ec
3343 mouseY = y; 3343 mouseY = y;
3344 } 3344 }
3345 3345
3346 void InitFBO() 3346 void InitFBO()
3347 { 3347 {
3348 glClearColor(0,0,0,0);
3348 glGenTextures(1, &fb_tex); 3349 glGenTextures(1, &fb_tex);
3349 glBindTexture(GL_TEXTURE_2D, fb_tex); 3350 glBindTexture(GL_TEXTURE_2D, fb_tex);
3350 3351
3351 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); 3352 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
3352 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); 3353 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
3378 printf("\tInitFBO() error: status != GL_FRAMEBUFFER_COMPLETE\n"); 3379 printf("\tInitFBO() error: status != GL_FRAMEBUFFER_COMPLETE\n");
3379 exit(1); 3380 exit(1);
3380 break; 3381 break;
3381 } 3382 }
3382 3383
3384 glClear(GL_DEPTH_BUFFER_BIT|GL_COLOR_BUFFER_BIT);
3385
3383 glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0); 3386 glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
3384 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0); 3387 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0);
3385 3388
3386 3389
3387 3390
3416 printf("\tInitFBO() error: status != GL_FRAMEBUFFER_COMPLETE\n"); 3419 printf("\tInitFBO() error: status != GL_FRAMEBUFFER_COMPLETE\n");
3417 exit(1); 3420 exit(1);
3418 break; 3421 break;
3419 } 3422 }
3420 3423
3424 glClear(GL_DEPTH_BUFFER_BIT|GL_COLOR_BUFFER_BIT);
3425
3421 glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0); 3426 glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
3422 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0); 3427 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0);
3423 3428
3424 //---------- 3429 //----------
3425 3430
3441 glGenRenderbuffersEXT(1, &depth_rb3); 3446 glGenRenderbuffersEXT(1, &depth_rb3);
3442 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, depth_rb3); 3447 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, depth_rb3);
3443 glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT24, g_Width, g_Height); 3448 glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT24, g_Width, g_Height);
3444 3449
3445 glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, depth_rb3); 3450 glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, depth_rb3);
3446
3447 glClearColor(0.0,0.0,0.0,1.0);
3448 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
3449 3451
3450 status = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT); 3452 status = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT);
3451 switch(status) 3453 switch(status)
3452 { 3454 {
3453 case GL_FRAMEBUFFER_COMPLETE_EXT: 3455 case GL_FRAMEBUFFER_COMPLETE_EXT:
3456 default: 3458 default:
3457 printf("\tInitFBO() error: status != GL_FRAMEBUFFER_COMPLETE\n"); 3459 printf("\tInitFBO() error: status != GL_FRAMEBUFFER_COMPLETE\n");
3458 exit(1); 3460 exit(1);
3459 break; 3461 break;
3460 } 3462 }
3463
3464 glClear(GL_DEPTH_BUFFER_BIT|GL_COLOR_BUFFER_BIT);
3461 3465
3462 glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0); 3466 glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
3463 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0); 3467 glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, 0);
3464 3468
3465 3469