open gl fenster schließen



  • Ich hab ein seltsames Szenario, eine Projektmappe, die nicht von mir ist, öffnet ein open gl fenster, ich hab also die konsole und das open gl fenster auf. Wenn ich das open gl fenster schließe, beendet sich die komplette anwendung.
    Wenn ich allerdings in meiner eigenen Projektmappe das gleiche baue, dh ich nehme das selbe Framework für das erstellen der open gl anwendung, so beendet sich beim schließen des open gl fensters nicht das programm, sondern nur dieses fenster, die konsole bleibt weiterhin auf.

    Woran kann dies liegen? Ich weiß es sind wenige infos, ich arbeite mit VS 2008, gl und glut.

    In beiden Fällen wird mit
    glutMainLoop() alles an das open GL Fenster übergeben und die registrierung der callbacks ist bei beiden Projekten gleich.
    Im ersten Projekt wird das Fenster geschlossen und das Programm ende mit einem 0 rückgabewert.
    In keinem der beiden Szenarios wird die glutMainLoop() im Code beendet (also folgende Befehle werden nicht ausgeführt)

    Mein eigenes Programm beendet sich nur, wenn man das konsolenfenster schließt, aber dann kommt ein großer negativer wert bei rum.

    Es sind nur folgende Callbacks registriert (bei beiden)

    glutReshapeFunc(reshape);
        glutKeyboardFunc(keyboard);
        glutDisplayFunc(display);
        glutIdleFunc(update);
        glutMouseFunc(mouse);
        glutMotionFunc(motion);
    

    Um es noch komplezierter zu machen, wenn ich in dem Projekt, in der das schließen klappt meine klasse reinpacke, dann wird auch diese korrekt beendet.
    Wenn ich die fremde Klasse in mein Projekt packe, so wird auch diese nicht durch das open gl fenster beendet.
    Alle anderen Klassen (opengl framework) ist bei beiden Projekten gleich...


Anmelden zum Antworten