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

Aktuelle Zeit: Di Apr 23, 2024 11:11

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



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Re: glTexImage2D zu Bitmap
BeitragVerfasst: Fr Jan 10, 2014 13:21 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Was spricht gegen glGetTexImage? Das wird zwar nicht viel schneller sein als glReadPixels, aber die Daten müssen nunmal von der Grafikkarte her kommen.

grüße

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: glTexImage2D zu Bitmap
BeitragVerfasst: Fr Jan 10, 2014 21:09 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,

zum Verkleinern könntest du das Original einfach in ein kleineres FBO rendern und dann die Daten des FBOs mit glGetTexImage auslesen.
Alternative: Hab ich noch nie probiert, könnte aber funktionieren. Erstell nen 2. Context in nem extra Thread. Aktivier das Sharing von Objekten zwischen den Contexten und hol dir deine Texture dann ganz gemütlich im 2. Thread ab. Der erste kann in der Zeit weiter arbeiten. Inwieweit der Zugriff auf die Texturen gesynct werden muss weiß ich nicht. Wenn du Glück hast macht das der Treiber für dich. Zur Not einfach 2 FBOs und dann alternierend, wie das schon erwähnt wurde.

MfG Bergmann.

_________________
Aktuelle Projekte: BumpMapGenerator, Massive Universe Online
Auf meiner Homepage gibt auch noch paar Projekte und Infos von mir.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: glTexImage2D zu Bitmap
BeitragVerfasst: Do Jan 16, 2014 20:49 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,

ob du die Daten nun aus dem FBO oder aus dem normalen FrameBuffer ließt ist egal, es ist beides ein normaler Buffer, sollte also weitestgehend gleichschnell sein.
Du brauchst das Ganze doch für dein Ambi-Light, oder? Dann sollte es doch reichen, wenn du nur die Ränder der Textur ausließt. Außerdem kannst du das FBO in einer viel kleineren Auflösung rendern bzw. könntest du ein zweites FBO erstellen und das erste FBO mit einem Blur Shader in das zweite kleinere reinrendern, das ergibt denke ich eine bessere Ausgangstextur für das Ambi-Light. Wenn du dann noch mit 2 (oder sogar 3) alternierenden FBOs und einem zweiten (oder dritten) Context und Thread arbeitest, der die Daten aus den FBOs ausließt, das gerade nicht gerendert wird, sollte es mehr als schnell genug sein...

Ich versteh auch nicht richtig was du da machts:
- beim erstellen des Buffers:
-- Zeile 18 und 19 setzen Texturdaten obwohl keine Textur gebunden ist (oder der Code ist nicht im Ausschnitt zu sehen)

- beim rendern:
-- FBO binden
-- Viewport und Matricen einstellen
-- Texturdaten hochladen (versteh ich nich ganz, weil du ja eig welche abholen wolltest?)
-- Buffer leeren und Matrix _nochmal_ zurücksetzen
-- Texturdaten nochmal hochladen (warum?)
-- Framebuffer entbinden obwohl nix gezeichnet wurde (?)
-- Quad mit Textur rendern
-- Rendern abschließen und Bild ausgeben

Kurz gesagt: Du nutzt dein FBO gar nicht. Zumindest nicht in dem Code der hier steht.
Vlt könntest du hier nocheinmal kurz beschreiben was genau du eig vorhast, wo kommen die Daten her (was steht in VisInfo^.VisBuf), was soll gerendert werden, welche Daten sollen wohin exportiert werden? Dann können wir die vlt besser helfen. Vlt gibts für dein Problem auch ne andere Herangehensweise ;)

MfG Bergmann.

_________________
Aktuelle Projekte: BumpMapGenerator, Massive Universe Online
Auf meiner Homepage gibt auch noch paar Projekte und Infos von mir.


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: Bing [Bot] und 75 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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.266s | 20 Queries | GZIP : On ]