Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Moin.
Ich spiele derzeit etwas mit OpenGL 3 rum und wollte mir mal FBO's angucken. Soweit so gut, aber es scheint mir so, als würde ein FBO nur ein Weg-werf Konstrukt sein.
Ich generiere einen, hänge ein Bild ran, zeichne drauf, aber sobald ich es entbinde und dann erneut irgendwann binden will, um wieder darauf (oder auf einer neuen Textur) zu zeichnen, klappt es nicht. glGetError wirft auch keinen Fehler und der eigentliche bind Aufruf klappt auch ohne Probleme. Aber trotzdem will dieses störrische Ding nicht so wie ich will.
Mal zur Verdeutlichung mein Aufruf Code:
Also ich habe mir den Code jetzt nicht komplett angeschaut.
Du mischt aber die OpenGL 3 Framebufferbefehle mit "GL_EXT_framebuffer_object"-Befehlen.
Möglicherweise kann das solche Probleme verursachen.
Man sollte entweder die Core-API oder die Extension nutzen aber nicht beides durcheinander.
Da du OpenGL 3 nutzen willst, hat die Extension bei dir nichts mehr verloren.
(Für maximale Kompatiblität empfiehlt es sich aber auch, beides zu unterstützen und dann zur Laufzeit auszuwählen)
Ich mag das DelphiGL-Wiki sehr gerne, aber gerade wenn es um neuere Sachen geht, sollte man doch auch noch eine andere Quelle verwenden.
Zb. OpenGL.org/wiki/Framebuffer_Object oder die API Doku direkt.
Nein normal ist das nicht. Entweder es liegt am mischen, wie bereits erwähnt oder du clearst den Colorbuffer nicht?
Ich kann dir ja einfach mal meine FBO Klasse geben, total simpel: http://pastebin.com/TXtdLif9