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

Aktuelle Zeit: Do Jul 17, 2025 14:58

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



Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Do Nov 11, 2004 14:03 
Offline
DGL Member

Registriert: Do Nov 11, 2004 13:48
Beiträge: 4
Wohnort: Wiesbaden
Hallöchen,

ich habe einige der Tutoruals und Beispiele ausprobiert. Einige der Beispiele benutzen die unit "glBMP", um Textur-Bitmaps zu laden. Dazu wird ein TGLBMP-Objekt erzeugt.

In den Beispielen wird dieses Objekt NICHT wieder freigegeben!??? Wenn ich es mit "free" freigebe, dann gibt es eine Exception im Stack in "ntDll.dbgBreakpoint". (Debugger steht im offnen CPU-Fenster). Ich hatte bereits schon einmal diesen Effekt, als Windows versuchte etwas freizugeben, das bereits freigegeben wurde(!).

Hinweis: Diese Exception tritt nur auf, wenn die VCL dazugelinkt wurde - nicht, wenn OpenGL ohne die vcl/rtl gerendert wird - das Programm mit einer eigenen WndProc abgearbeitet wird.

Muss man TGLBMP-Objekte nicht freigeben? Wenn doch - wie?


Übrigens bin ich über folgende Seite auf eure Unti "glBMP" gestossen:
http://www.thedelphimagazine.com/samples/1445/1445.htm

Zitat: "..but in this case we just have to ignore the memory leak.."

Wenn das jetzt auch nicht sauber funktioniert bin ich echt ratlos, wie manns sonst noch sauber hinkriegt..


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Nov 13, 2004 11:15 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 13, 2002 12:18
Beiträge: 1063
Hmm, die von LossyEx entwickelte Unit zum Laden von Texturen heißt glBitmap, und wenn irgendwelche Fehler auftauchen würden, was schon lange nicht mehr der Fall war :wink: , denke ich, dass er sie immer noch pflegen würde. glBmp ist eine Vorgängerunit, die nicht mehr weiter entwickelt wird, d.h. entweder du lässt es egal sein (schlechte Alternative), schreibst deinen eigenen Texturlader, oder verwendest eben glBitmap, das in der Handhabung ohnehin ziemlich ähnlich aber sehr viel flexibler ist.

_________________
Viel Spaß beim Programmieren,
Mars
http://www.basegraph.com/


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Danke
BeitragVerfasst: So Nov 14, 2004 14:51 
Offline
DGL Member

Registriert: Do Nov 11, 2004 13:48
Beiträge: 4
Wohnort: Wiesbaden
Vielen Dank für die Antwort, und den Tip. Da ein Freigeben eines mit "auxDIBImageLoadA" erzeugten Pointers wohl nicht möglich ist (s. Link), habe ich nach einer Möglichkeit gesucht in Delphi Texturen zu laden. Dabei bin ich auf die Unit in dem Beispiel gestossen. Dass diese anscheinend nicht mehr aktuell ist wusste ich nicht.

Ist denn das Laden von Grafiken mit der Unit "glBitmap" standard, oder gibt es eine andere amtliche Methode?
:?:


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Nov 14, 2004 15:41 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Also Standard ist die unit glBitmap sicherlich nicht. Es gibt noch eine Textures.pas von Jan Horn. Allerdings ist er weg ziemlich genau der Gleiche und der wird von OpenGL vorgegeben. glBitmap.pas ist klassenbasiert und ermöglicht so das manipulieren der Bilder bevor diese an OpenGL geschickt werden. Die Textures.pas bietet lediglich eine Methode und dann bekommt man ein geladenes Bild. Ich persönlich bevorzge Klassen deswegen habe ich die Unit ja auch geschrieben. Der ein oder andere hat da andere vorlieben.


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


Wer ist online?

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.

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