Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   OpenGL - rendern eines transparenten Bildes (https://www.delphipraxis.net/189402-opengl-rendern-eines-transparenten-bildes.html)

torud 15. Jul 2016 12:15

AW: OpenGL - rendern eines transparenten Bildes
 
Liste der Anhänge anzeigen (Anzahl: 1)
Also ich habe mal ein Beispiel erstellt, dass sehr Basic ist, aber vielleicht mein Problem etwas veranschaulicht.

Ich habe mir das Beispiel mal von DelphiGL genommen und die Routine Screenshot benutzt.

Wenn man im Programm den Button Render betätigt, wird erwartungsgemäß das Bild so gerendert, wie im Tutorial.
Will ich es speichern, erhalte ich zwar eine TGA-Datei, ABER
-> der Inhalt ist komplett schwarz
-> es ist kein Alpha-Kanal vorhanden

Einzig die Abmaße stimmen.

Ich habe dann bei GetReadPixels das Format von GL_BGR nach GL_BGRA umgestellt und vorher noch die Datengröße

von
DataSize := Width * Height * 3;

geändert
DataSize := Width * Height * 4;

um Platz für Alphakanal zu schaffen.

Ich finde leider den Fehler nicht...
Ich hänge mal das Projekt an.

Jens01 15. Jul 2016 14:10

AW: OpenGL - rendern eines transparenten Bildes
 
Du solltest vllt die Frage auch noch mal bei DGL stellen. Dort gibt es eigentlich kompetente Antworten.

torud 15. Jul 2016 16:52

AW: OpenGL - rendern eines transparenten Bildes
 
Hallo Jens,

vielen Dank für den Hinweis. Ich habs dort auch mal gepostet...Mal schauen. Wenn ich eine helfende Antwort erhalte, poste ich´s hier.

torud 16. Jul 2016 07:40

AW: OpenGL - rendern eines transparenten Bildes
 
Manchmal reicht es auch, einfach nochmal mit einer Nacht Abstand alles von Neuem zu betrachten.

2 Zeichen musste ich ändern und alles geht. :-D

Der Code hier ist verantwortlich für das Erstellen des Alphakanals:

Delphi-Quellcode:
  tgaHeader.tfBpp := 32;
Vorher hatte ich dort nur eine 24!
Jetzt ist der Alphakanal vorhanden und er wird sogar korrekt befüllt!


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:33 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz