2017-03-13 12 views
-1

Also habe ich meinen Code eine Weile abgehämmert und versucht, diesen Fehler zu beheben, wobei absolut keine Fortschritte gemacht werden.Inkonsistenter OpenGL-Rendering-Fehler mit 3D-Objekten

Vor allem wegen der wie zufällig und unberechenbar dieser Fehler ist.

Das ist also, wie die Szene funktioniert, wenn alles funktioniert gut

enter image description here

Und wenn die Fehler Tritte in

enter image description here

Wie Sie sehen können, wird nur der Fehler meiner verhindert Cube Map Skybox, Modell und Lichtquelle mesh aus Rendering, aber die ortho projizierten 2D-Elemente sind in Ordnung.

Ich habe Shader ausgeschlossen, da selbst die einfachsten Shader-Programme immer noch dieses Problem haben. Ich benutze ASSIMP, um Mesh-Dateien und SOIL zu laden, um Texturen zu laden, aber bis vor einem Tag haben sie einwandfrei funktioniert.

Es gibt absolut kein Muster, wenn dies geschieht, die einzige Möglichkeit, es zu lösen, ist, einfach das Programm neu zu starten, bis die gewünschte Ausgabe erscheint. Das ist offensichtlich keine gute Lösung. Ich bin völlig am Ende und brauche Hilfe, da opengl keinen Fehler ausgibt. Ich weiß nicht, wo ich überhaupt nach einer Lösung suchen soll. Könnten dies EBOs oder Framebuffer verursachen? Wie ich gerade angefangen habe, diese zu implementieren.

Ich habe weit und breit nach allem gesucht, was damit zusammenhängen könnte, aber ich habe bis jetzt noch nichts gefunden.

TL; DR: 3D-Objekte werden nicht nur bei einigen Läufen gerendert und funktionieren auch bei anderen, mögliche Probleme mit kürzlich implementierten Framebuffern und EBOs.

+0

Sie sollten unbedingt Tools wie KHR_debug und die Adresse Sanitizer verwenden. Wie sollen wir, wie geschrieben, wissen, wie wir Ihnen helfen können? –

+0

Zufällige Fehler sind in der Regel auf nicht initialisierte Vars zurückzuführen. – Ripi2

Antwort

0

UPDATE:

Es stellt sich heraus, dass meine Maus-Look Code in meine Kamera-Klasse einige seltsame Probleme verursacht wurde, wo in Kamerawinkeln die Änderung der Berechnung verursacht es zu einem außerordentlich hohen negativen Wert gesetzt werden. Durch das Deaktivieren der Maus wurde das Problem dauerhaft behoben.

Verwandte Themen