Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mi Jul 16, 2025 21:12

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
BeitragVerfasst: So Dez 07, 2008 19:26 
Offline
DGL Member

Registriert: Sa Nov 24, 2007 11:59
Beiträge: 116
Programmiersprache: FreePascal
Moin.

Ich steige gerade mal überhaupt nicht durch diese FBOs durch. Ich rendere da was rein, aber die Textur ist in allen 1000 ausprobierten Fällen weiß. Jetzt hab ich mir meinen Code zerschossen, weiss aber nicht, wie ich neu ansetzen soll.

Mein Ziel ist es also, EINMALIG in eine recht große Textur ein paar tolle Sachen zu rendern, wofür allerdings mehrere Texturen und ein Shader benutzt werden. Das dürfte ja eigentlich kein Problem sein.

Frage: Wie muss es vor dem Rendervorgang und danach aussehen, damit die Textur endlich mal was enthält? Das Tutorial hat mir kein bisschen weitergeholfen.

MfG
Ireyon


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Dez 07, 2008 19:41 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mär 30, 2007 18:35
Beiträge: 331
Hallo,

ich benutze im meinem Projekt folgenes. (Das ist allerdings nichts anderes als der Code aus dem Tutorial)

Zum erstellen:
Code:
  1.  
  2.   glGenFramebuffersEXT(1, @fFbo);
  3.   glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fFbo);
  4.  
  5.   glGenRenderbuffersEXT(1, @fFBODepthBuffer);
  6.   glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, fFBODepthBuffer);
  7.   glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, 512, 512);
  8.   glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, fFBODepthBuffer);
  9.  
  10.   glGenTextures(1, @fOffScreenTexture);
  11.   glBindTexture(GL_TEXTURE_2D, fOffScreenTexture);
  12.   glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER, GL_LINEAR);
  13.   glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER, GL_LINEAR);
  14.   glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8,  512, 512, 0, GL_RGBA, GL_UNSIGNED_BYTE, nil);
  15.   glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, fOffScreenTexture, 0);
  16.   glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
  17.  


Zum Rendern:
Code:
  1.  
  2.   glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fFBO);
  3.   glViewport(0, 0, 512, 512);
  4.  
  5.   //Rendern
  6.  
  7.   glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
  8.  
  9.  


Danach ist fOffScreenTexture die TexturID, die du benutzen musst, um an deine Daten zu kommen.

Markus


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Dez 07, 2008 19:45 
Offline
DGL Member

Registriert: Sa Nov 24, 2007 11:59
Beiträge: 116
Programmiersprache: FreePascal
Hm, irgendwie lag mein Problem scheinbar im generieren des FBOs, obwohl ich da auch den Code aus dem Tutorial genommen habe.

Danke jedenfalls, jetzt gehts aus irgendeinem Grunde.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 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.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 16 Queries | GZIP : On ]