ich will für die Schattenberechnung eine Tiefenmap (4096*4096) erstellen, hab da aber gleich zwei Porbleme:
glviewport funktioniert nicht richtig: -> nur der normale Bereich des Fensters wird in die Textur gezeichnet. Aber ein Bild sagt mehr als tausend Worte:
Wenn ich als Format GL_RGB nehme, sehe ich dort meine Szene wie erwartet. Bei GL_DEPTH_COMPONENT24 ist der gezeichnete Bereich weiß...
Registriert: Di Apr 29, 2008 18:56 Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,
Also ich seh kein Fehler. Lass dir doch zum Testen das ganze mal auf dem Bildschirm ausgeben, wenns da gehts, dann stimmt was mit dem Kopieren nicht. Du kannst es aber auch ma mit nem FBO probieren. Die sind inder Regel schneller un auch bisl einfacher in der Anwendung wenn man sich da ne schöne Klasse rund rum bastelt. Wenn du daran interessiert bist kann ich dir auch meine Unit mit der FBO-Klasse geben wenn du magst... €: das hab ich grad gefunden: GLSL Licht und Schatten
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Bergmann hat dich ja bereits auf FBOS hingewiesen, um die du nicht herumkommen wirst. Deine Textur ist ja größer als dein Renderkontext (bzw. Fenster) und laut Specs ist der Bereich ausserhalb des Renderkontextes undefiniert, sprich alles was du in deine Textur kopieren willst was ausserhalb der Größe deines Fensters liegt ist undefiniert. Was genau dann passiert liegt am Treiber, aber im Normafall passiert genau was du beschreibst. Du musst also definitiv einen Offscreen Puffer benutzen, egal ob Pixelpuffer oder ein FBO.
Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.