Hi,
ich versuche seit einigen Tagen herauszufinden, auf welches Objekt geklickt wurde und hab mit mehrere Tutorials angeschaut. Leider wird immer 0 zurück gegeben.
Weil ich nicht will, dass einfach mein Code repariert wird, zeige ich euch erstmal meine Funktion. Sagt mir bitte einfach nur, ob in dieser Funktion ein Fehler ist. Dann weiß ich, wo ich suchen soll. (Vlt. ist auch die ganze Funktion falsch
)
Vielen Dank
üäpöol
ich versuche seit einigen Tagen herauszufinden, auf welches Objekt geklickt wurde und hab mit mehrere Tutorials angeschaut. Leider wird immer 0 zurück gegeben.
Weil ich nicht will, dass einfach mein Code repariert wird, zeige ich euch erstmal meine Funktion. Sagt mir bitte einfach nur, ob in dieser Funktion ein Fehler ist. Dann weiß ich, wo ich suchen soll. (Vlt. ist auch die ganze Funktion falsch

C++:
int ObjektSelection() {
GLuint SelectBuffer[512];
GLint Viewport[4];
int Hits = NULL, i;
GLint HitZ = NULL;
GLint Hit = NULL;
glGetIntegerv(GL_VIEWPORT, Viewport);
glSelectBuffer(512, SelectBuffer);
glRenderMode(GL_SELECT);
glInitNames();
glPushName(0);
glPushMatrix();
glLoadIdentity();
gluPickMatrix(MX, Viewport[3]-MY, 1.0, 1.0, Viewport);
gluPerspective(45.0f, width/height, 0.1, 1000.0f);
SceneZeichnen();
glPopMatrix();
Hits = glRenderMode(GL_RENDER);
for (i=0; i<= Hits; i++)
{
if (SelectBuffer[(i*4)+1] < HitZ) {
Hit = SelectBuffer[(i*4)+3];
HitZ = SelectBuffer[(i*4)+1];
}
}
return Hit;
}
Vielen Dank
üäpöol
Zuletzt bearbeitet von einem Moderator: