1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| char *myargv [1];
int myargc=1;
myargv [0]=strdup("Reconstruction3D");
glutInit(&myargc, myargv);
glutInitDisplayMode(GLUT_SINGLE);
glutCreateWindow("Reconstruction 3D Fenetre");
glutHideWindow();
glShadeModel(GL_SMOOTH); // Smooth Shading
glClearDepth(1.0f); // Depth Buffer
glDepthFunc(GL_LEQUAL);
glEnable(GL_DEPTH_TEST); // Active test de profondeur
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // // Active calcul de perspective
glEnable(GL_BLEND);
glEnable(GL_TEXTURE_2D);
bool result = false;
ST_GLEW_INIT(result);
if (!result)
{
GPUREG_EXCEPTION("GLEW init error");
}
...
GLuint renderID;
glGenRenderbuffers(1, &renderID);
GLenum error = glGetError();
if (error != GL_NO_ERROR)
{
GPUREG_TRACE_INFO("Error OpenGL glGenRenderbuffers " << error);
}
glBindRenderbuffer(GL_RENDERBUFFER, renderID);
error = glGetError();
if (error != GL_NO_ERROR)
{
GPUREG_TRACE_INFO("Error OpenGL glBindRenderbuffer " << error);
}
glRenderbufferStorage(GL_RENDERBUFFER, GL_LUMINANCE32F_ARB, targetTileSize.x(), targetTileSize.y());
error = glGetError();
if (error != GL_NO_ERROR)
{
GPUREG_TRACE_INFO("Error OpenGL glRenderbufferStorage " << error);
}
// Association de la sortie de rendu 0 (GL_COLOR_ATTACHMENT0) avec le render buffer
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, renderID);
error = glGetError();
if (error != GL_NO_ERROR)
{
GPUREG_TRACE_INFO("Error OpenGL frame buffer " << error);
} |