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

Aktuelle Zeit: So Apr 28, 2024 19:25

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



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Re: Texture als bitmap speichern
BeitragVerfasst: Fr Dez 20, 2013 13:51 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
kuckst du hier
http://www.opengl.org/sdk/docs/man/xhtm ... xImage.xml

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Texture als bitmap speichern
BeitragVerfasst: Fr Dez 20, 2013 17:15 
Offline
DGL Member
Benutzeravatar

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

die glBitmap hat dafür die Funktion GrabScreen. Dann kannst du das noch entsprechend konvertieren und im gewünschten Format speichern...

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: Texture als bitmap speichern
BeitragVerfasst: Fr Dez 20, 2013 19:05 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Aug 18, 2007 18:47
Beiträge: 694
Wohnort: Köln
Programmiersprache: Java
Ich verstehe die Frage irgendwie nicht. Willst du jetzt den Inhalt einer Textur oder des Bildschirms haben?

[edit]Aha. Wenn man erstmal nach Atmolight googelt, versteht man es doch^^[/edit]

Wenn du in VisBuffer ja schon alles drin hast, brauchst du doch nichts weiter machen als die Daten etwas aufbereiten und an die Hardware zu schicken. Soweit ich das gesehen habe, braucht man ja keine sonderlich hohe Auflösung für die LED-Streifen. 4x4 Pixel oder 8x8 dürften doch reichen. Das könnte man schick mit einem Blur Shader lösen, der nacheinander in FBOs rendert und dabei die Auflösung immer weiter reduzieren. Am Ende nur den letzten FBO per ReadPixels auslesen und du hast was du brauchst.

_________________
Es werde Licht.
glEnable(GL_LIGHTING);
Und es ward Licht.


Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

on error goto next


Zuletzt geändert von damadmax am Fr Dez 20, 2013 19:15, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Texture als bitmap speichern
BeitragVerfasst: Fr Dez 20, 2013 19:16 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Aug 18, 2007 18:47
Beiträge: 694
Wohnort: Köln
Programmiersprache: Java
Code:
  1. procedure TglBitmap2D.GrabScreen
hat mich verwirrt.

_________________
Es werde Licht.
glEnable(GL_LIGHTING);
Und es ward Licht.


Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

on error goto next


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Texture als bitmap speichern
BeitragVerfasst: Fr Dez 20, 2013 19:46 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Aug 18, 2007 18:47
Beiträge: 694
Wohnort: Köln
Programmiersprache: Java
Nungut. Wenn es mit der glBitmap nicht funktioniert, kannst du es ja selber machen.

Wobei noch zu klären wäre, was mit "rüberschicken" gemeint ist. Die Datei in einem Netzlaufwerk ablegen? Oder direkt auf irgendeinen Port per TCP schicken?

_________________
Es werde Licht.
glEnable(GL_LIGHTING);
Und es ward Licht.


Zitat aus einem Java Buch: "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off"

on error goto next


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Texture als bitmap speichern
BeitragVerfasst: Sa Dez 21, 2013 22:44 
Offline
DGL Member
Benutzeravatar

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

hab dich falsch verstanden, sry. Du kannst die Daten einer Texture auch mit der glBitmap von der Graka holen und entsprechend speichern:
Code:
  1. procedure GetTexImage;
  2. var
  3.   bmp: TglBitmap2D;
  4. begin
  5.   bmp := TglBitmap2D.Create;
  6.   try
  7.     bmp.ID := fTexture.ID;                  //vorhandene TextureID zuweißen
  8.     bmp.GetDataFromTexture;                 //Daten von der Graka in den RAM laden
  9.     bmp.SaveToFile('D:\test.bmp', ftBMP);   //Daten als BMP speichern
  10.     bmp.ID := 0;                            //TextureID zurück setzten (sonst wird die Texture beim löschen des Objekts ebenfalls gelöscht)
  11.   finally
  12.     bmp.Free;
  13.   end;
  14. end;


€: bzw wenn du die Daten schon im RAM hast, kannst du die Daten an die glBitmap übergeben (siehe protected TglBitmap.SetDataPointer) da musst du aber das Format der Daten kennen...

€2: hab das für dich grad mal noch bisl angepasst. Jetzt kann man die Daten im Constructor übergeben. Findest du im glBitmap-Repository im unstable Branch oder hier im Anhang.
Code:
  1. procedure SaveTextureData;
  2. var
  3.   bmp: TglBitmap2D;
  4. begin
  5.   bmp := TglBitmap2D.Create(glBitmapPosition(1024, 1024), tfRGBA8, fTexture.Data);
  6.   try
  7.     bmp.SaveToFile('D:\test.bmp', ftBMP);
  8.   finally
  9.     bmp.Free;
  10.   end;  


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

_________________
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  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 26 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.012s | 19 Queries | GZIP : On ]