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

Aktuelle Zeit: Mo Jul 14, 2025 02:31

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



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 23, 2003 15:09 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Jun 20, 2003 13:59
Beiträge: 134
Hi Leutz,

Kann mir irgendjemand sagen wie ich eine Textur in meinen Code einbinden kann ohne das sie als Datei vorhanden ist?

Man kann solche Texturen z.B. mit Jan Horn's Textures.pas, wenn man den dritten Parameter in der
loadtexture() Funktion auf TRUE setzt, abrufen.

_________________
ghost-site.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 23, 2003 15:12 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Wenn du Texturen mit in deine Anwendung einbinden willst, dann musst du diese erstmal mit Hilfe eines ResourcenEditors wie z.B. dem ResourceWorkshop von Borland in eine Resourcendatei packen (.RES).
Diese musst du dann mittels der Kompilerdirektive $R (z.B. {$R MeineTexturen.res} ) in deine Anwendung einbinden.Danach kannst du die Texturen mittels der Textures.pas von Jan Horn aus dieser Resource heraus laden.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jul 23, 2003 15:24 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Wenn man die VCL benutzt kann man die Texturen auch in einem TImage oder in einer TImageList speichern.

Mit LoadTextureFromBitmap(image1.Picture.Bitmap) kann man die Texture dann laden, wenn man sie z.B. in Image1 gespeichert hätte.

Code:
  1.  
  2. procedure LoadTextureFromBitmap(bmp:TBitmap);
  3. var
  4.  data:PByteArray;
  5.  i,j,w:integer;
  6.  b:PByteArray;
  7. begin
  8. bmp.PixelFormat:=pf32bit;
  9. getmem(data,bmp.width*bmp.height*4);
  10. w:=bmp.Width;
  11. for i:=0 to bmp.Height-1 do
  12. begin
  13.  b:=bmp.ScanLine[i];
  14.  for j:=0 to w-1 do
  15.  begin
  16.   data^[i*w*4+j*4+2]:=b^[j*4];
  17.   data^[i*w*4+j*4+1]:=b^[j*4+1];
  18.   data^[i*w*4+j*4]:=b^[j*4+2];
  19.   data^[i*w*4+j*4+3]:=b^[j*4+3];
  20.  end;
  21. end;
  22. gltexparameteri(GL_TEXTURE_2D,GL_Texture_min_filter,GL_LINEAR_MIPMAP_LINEAR);
  23. gltexparameteri(GL_TEXTURE_2D,GL_Texture_mag_filter,GL_LINEAR);
  24. gluBuild2DMipmaps(GL_TEXTURE_2D,gl_rgba8,bmp.width,bmp.Height,gl_rgba,gl_unsigned_byte,data);
  25. FreeMem(data);
  26. end;


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 10 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 | 14 Queries | GZIP : On ]