bonjour j'ai un probleme avec le picking je n'arrive pas a comprendre comment ca marche. Je me suis bassé sur ce tuto http://glinfrench.apinc.org/article.php3?id_article=83
Qui marche tres bien mais dès que j'essaye de l'adapter rien ne fonctionne avec mon code deja existant
Voila ce que j'ai ecrit

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
    glPushAttrib(GL_ALL_ATTRIB_BITS);    /* on sauvegarde tous */
 
    glDisable(GL_LIGHTING); /* pas besoin de la lumiere pour le picking, desactiver tous ce qui est inutile */
 
    GLuint selectBuf[BUFSIZE];
    GLint hits=0;
    GLint viewport[4];
 
    glGetIntegerv (GL_VIEWPORT, viewport);
 
    glSelectBuffer (BUFSIZE, selectBuf);
    (void) glRenderMode (GL_SELECT);
 
    glInitNames();
    glPushName(0);
 
    glMatrixMode (GL_PROJECTION);
    glPushMatrix ();    /* push projection */
 
	glLoadIdentity ();
	camera->Camera::Focalise();
    gluPickMatrix ((GLdouble) x, (GLdouble) (viewport[3] - y), 2.0, 2.0, viewport);
    gluPerspective(60,1.5,0.1,100);
    glMatrixMode(GL_MODELVIEW);
    glPushMatrix();        /* push modelview */
    glLoadIdentity();
    glTranslatef(0,0,-15);
    for(int i=0; i<n_objects; ++i)
    {
        glLoadName(objects[i].id);    /* on change le nom sur la pile */
        objects[i].draw();        /* on dessine l'objet */
    }       
    glPopMatrix();        /* pop modelview */
    glMatrixMode (GL_PROJECTION);   
    glPopMatrix ();        /* pop projection */
    hits = glRenderMode (GL_RENDER);
cout<<"nb hits = "<<hits<<"\n";
    processHits (hits, selectBuf, list);
   glPopAttrib();
    glutPostRedisplay();
}
En effet le nombre de hits est toujours égal a 1 mais pire il selectionne mon premier objet a tout les coup ou que soit ma souris et meme si l'objet n'ai pas a l'écran

Je panse avoir un probleme quand je dessinne la selection( en effet d'apres ce que j'ai compris elle est invisible) je n'ai pas moyen de verifier ou ellle est.
Merci du coup de main meme si verifier un bout de code comme ca n'ai pas forcement evident.