2 Fragen zu glGenLists()
-
Hallo,
ich habe zwei Fragen bezüglich glGenLists() - Vor allem die erste Frage ist wichtig für mich.
1. Was für Gründe kann es haben, dass ein Aufruf von glGenLists(1) zu einem Segmentation Fault führt?
2. Was für Gründe kann es haben, dass ein Aufruf von glGenLists(1), wenn das Programm normal gestartet wurde, als Ergebnis 0 liefert, wenn aber das Programm aus dem Debugger der IDE heraus gestartet wird, eine gültige ID?
Vielen Dank im Voraus
-
the[V]oid schrieb:
Hallo,
ich habe zwei Fragen bezüglich glGenLists() - Vor allem die erste Frage ist wichtig für mich.
1. Was für Gründe kann es haben, dass ein Aufruf von glGenLists(1) zu einem Segmentation Fault führt?
2. Was für Gründe kann es haben, dass ein Aufruf von glGenLists(1), wenn das Programm normal gestartet wurde, als Ergebnis 0 liefert, wenn aber das Programm aus dem Debugger der IDE heraus gestartet wird, eine gültige ID?
Vielen Dank im Voraus
1+2. vielleicht machst du schon etwas kaputt im speicher bevor du ueberhaut glGenList aufrufst.
versuch dir ein fertiges tutorial zu laden und zu starten und schau, ob es dann richtig laeuft.es ist natuerlich nicht auszuschliessen, dass dein treiber irgendwie misst baut, aber dafuer stehen die chancen sicher bei unter 0.1%
-
Im Speicher kaputt machen, heißt das im Klartext Stack-Corruption, oder wären da noch andere Ursachen denkbar?
-
grundsaetzlich memory corruption (segmentation fault ist quasi die folge). sowas ist natuerlich schwer festzustellen. versuche soviel wie moeglich was davor passiert zu ueberspringen und direkt glgenlist zu nutzen und wenn es geht, taste dich langsam vor.
mal so ne dumme frage: du initialisierst aber schon opengl bevor du den aufruf machst, oder?
-
Klar mache ich das. Ich kann auch glGenLists() mehrmals aufrufen, bevor entweder 0 zurückgegeben wird oder es eben zum Seg-Fault kommt.
-
wenn du das vorher schon ein paar mal machst, koennte ja wirklich sein, dass du etwas kaputt machst, wie gesagt, nicht schoen das zu debuggen, try&error mit auskommentierten teilen koennte dir vielleicht helfen.
vielleicht hilft dir das auch ein wenig: http://www.google.de/search?q=memory+debugging+crt