pourquoi le rendu de mon cube n'est pas parfait ? [open gl] - Programmation
Marsh Posté le 28-06-2002 à 09:00:20
Tu peux poster une catpure ? (ou une partie ?).
Marsh Posté le 28-06-2002 à 09:29:55
Godbout a écrit a écrit : Ca clignote ? Pb de clipping ? |
La texture est de travers ?
L'éclairage part en couille ?
Ca imprime pas ?
Marsh Posté le 28-06-2002 à 09:51:05
DarkOli a écrit a écrit : La texture est de travers ? L'éclairage part en couille ? Ca imprime pas ? |
Y a souvent des pb de clipping, avec glPerspective, parce que la plupart foute le near a 0.
Marsh Posté le 28-06-2002 à 11:29:29
non une face n'est pas rendue avec GL_LINE (gauche) et deux avec GL_FILL (gauche et face)
Marsh Posté le 28-06-2002 à 12:04:36
glClearColor( 0.0f, 0.0f, 0.0f, 0.0f );
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glEnable( GL_DEPTH_TEST );
Marsh Posté le 28-06-2002 à 02:16:02
je vous propose de voir le résultat par vous même en GL_FILL et GL_LINE
#include <GL/glut.h>
#include <stdlib.h>
void display (void)
{
static GLint vertices [] = {1,1,0, 10,1,0, 10,10,0, 1,10,0, -2,8,10, 7,8,10,
7,17,10, -2,17,10};
static GLfloat colors_RGB [] = {1.0,0.4,0.4, 0.4,0.4,1.0, 0.8,1.0,0.2, 0.75,0.75,0.75,
0.35,0.35,0.35, 0.5,0.5,0.5};
glEnableClientState (GL_COLOR_ARRAY);
glEnableClientState (GL_VERTEX_ARRAY);
glColorPointer (3, GL_FLOAT, 0, colors_RGB);
glVertexPointer (3, GL_INT, 0, vertices);
static GLubyte toutLesSommets [] = { 0,1,2, 2,3,0, 1,5,6, 6,2,1, 4,5,6, 7,6,4, 4,0,3, 3,7,4, 0,1,5, 5,4,0, 3,2,6, 6,7,3 };
glPolygonMode (GL_FRONT, GL_LINE) ;
glFrontFace (GL_CCW) ;
glEnable (GL_CULL_FACE) ;
glCullFace (GL_BACK) ;
glDrawElements (GL_TRIANGLES, 36, GL_UNSIGNED_BYTE, toutLesSommets) ;
glutSwapBuffers() ;
glFlush () ;
}
void main (int argc, char** argv)
{
glutInit (&argc, argv) ;
glutInitDisplayMode (GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH) ;
glutInitWindowSize (640, 480) ;
glutInitWindowPosition (250,250) ;
glutCreateWindow (argv [0]) ;
glClearColor (1.0, 1.0, 1.0, 1.0) ;
glClear (GL_COLOR_BUFFER_BIT) ;
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(25.0 , -20.0, 20.0, -20.0, -10.0, 16.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glutDisplayFunc (display) ;
glutMainLoop () ;
}