OpenGl Problem Hilfe
-
Also danke für die vielen Antworten erstmal.
Ja ich nutzte VAOs, daher der Nullpointer. Nachdem ich in den Vollbild Wechsele passiert nichts anderes als das ein neues Fenster erzeugt wird. Die VAO wird in einer Klasse gebunden, welche beim wechseln in den Vollbildmodus nicht zerstört wird, also ist das VAO immernoch gebunden. Also komm ich auf den Schluss das das erstellen des Fensters den Buffer Löscht.
GWindow.create(sf::VideoMode(Screen_X_Size, Screen_Y_Size, 64), "Paper Car", sf::Style::Close, sf::ContextSettings(24, 8, 4, 3, 0));
Sobald ich das auskommentiere Funtioniert es nach der Vollbildtaste noch.
Arbeite mit sfml sollte dazu noh gesagt sein.
-
Erzeugt das auch einen neuen Context!? Wenn ja musst du vermutlich alle Ressourcen (VAOs, Buffer, Textures, Shader, ...) neu erzeugen...
-
Auch wenn das Seperat in einer Klasse gespeichert ist?
-
Der OpenGL Context ist an den jeweiligen Thread gebunden (ja, OpenGL ist stellenweise ziemlicher Bullshit). In welcher Klasse irgendwelche Objekte gehalten werden ist OpenGL (leider) völlig egal...
-
Okay, weil ja es wird ein neues Fenser erzeugt... Daher denke ich auch das die Context Settings neu gemacht werden.
Wie kann ich das dann sichern, ohne das Objekt nochmal komplett neu laden zu müssen?
-
1234567890 schrieb:
Wie kann ich das dann sichern, ohne das Objekt nochmal komplett neu laden zu müssen?
Gar nicht.
-
Dann wie kann ich in den vollbildmodus ohne einen neuen Context zu erzeugen?
-
Rein prinzipiell wäre das kein Problem, SFML unterstützt das aber offenbar leider nicht...
-
Okay, dann hab ich hier n ziemlich großes Problem...
-
Habs gelöst, dachte ich muss das ganze modell neu laden, denn das hätte ca. ne sekunde gedauert, aber ich musste ja nur die buffers neu binden und dabei waren die werte noch gespeichert.
Danke, habt mir sehr geholfen