Texturen OpenGL

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...

Texturen OpenGL

Beitragvon felix96 » 3. Nov 2010, 19:40 Texturen OpenGL

Hallo,
habe die Frage hier schonmal gestelt, und zwar wie (verdammt nochmal) kriege ich eine Textur auf'n (z.B.) Viereck?
Bei den Versuchn bis jetzt war mein bestes Ergebnis ein weises Viereck :-(

Danke fürs lesen,
mfg Felix96
Danke schonmal für eure Antworten
it´s not a bug, it´s a feature!
felix96
 
Beiträge: 288
Registriert: 29. Nov 2009, 17:44
CPU-Target: 32BitWin+64bitUbunt
Nach oben

Beitragvon Stoney » 3. Nov 2010, 20:49 Re: Texturen OpenGL

Wie lädst du denn genau deine Textur? Benutzt du noch irgendwelche Bibliotheken (SDL, SDL_image)? Hast du dir deinen eigenen Texturloader geschrieben? Kannst du vielleicht etwas Code zeigen?

Am einfachsten geht es sicherlich mit glBitmap von LossyEx. Ein Tutorial dazu gibt es hier.

Oder kann es sein, dass du einfach
Code: Alles auswählen
glEnable(GL_TEXTURE_2D);
oder
Code: Alles auswählen
glEnable(GL_TEXTURE_3D);
(je nachdem was genau zeichnen möchtest) vergessen hast? Du solltest beachten, dass die Textur das Format von 2^n x 2^n Pixel haben sollte (bei Intel GMA 950 - Grafikkarten muss die Textur quadratisch sein).
Stoney
 
Beiträge: 19
Registriert: 14. Sep 2009, 14:16
Wohnort: Königsbrunn
OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1) | 
CPU-Target: 32Bit & 64Bit
Nach oben

Beitragvon felix96 » 3. Nov 2010, 20:55 Re: Texturen OpenGL

Nein, hab ich nicht vergessen,
und Code findet man unter dem Link von DGL


Edit: Hier http://wiki.lazarus.freepascal.org/OpenGL_Tutorial#Textures steht man muss die VamoirImagingLibrary einbinden, aber welche unit muss ich dann einbinden?
Bei der gleichnamigen unit kommt später im Code immer:
unit1.pas(111,32) Error: Identifier not found "LoadGLTextureFromFile"
unit1.pas(111,32) Error: Identifier not found "LoadGLTextureFromFile"
Zuletzt geändert von felix96 am 3. Nov 2010, 21:08, insgesamt 1-mal geändert.
Danke schonmal für eure Antworten
it´s not a bug, it´s a feature!
felix96
 
Beiträge: 288
Registriert: 29. Nov 2009, 17:44
CPU-Target: 32BitWin+64bitUbunt
Nach oben

Beitragvon shokwave » 3. Nov 2010, 21:06 Re: Texturen OpenGL

Hast du dir den Ordner Examples schon mal angesehen? Da gibt es einen Beispiel für OpenGLControl. Vielleicht hilft dir das weiter.
mfg Ingo
shokwave
 
Beiträge: 420
Registriert: 15. Nov 2007, 16:58
Wohnort: Rudolstadt
OS, Lazarus, FPC: Win10 (L 1.6 FPC 3.0.0) | 
CPU-Target: i386,x64
Nach oben

Beitragvon felix96 » 3. Nov 2010, 21:09 Re: Texturen OpenGL

Ja, aber das hilft mir auch nicht.
P.S. es kommt auch noch:
unit1.pas(8,88) Error: Quelltext nicht gefunden: Unit C:\lazarus\components\Imaging\Source\Projects\lib\i386-\vampyreimagingpackage.ppu
Danke schonmal für eure Antworten
it´s not a bug, it´s a feature!
felix96
 
Beiträge: 288
Registriert: 29. Nov 2009, 17:44
CPU-Target: 32BitWin+64bitUbunt
Nach oben

Beitragvon MAC » 3. Nov 2010, 21:20 Re: Texturen OpenGL

Hey, OpenGL 8)
Also ich mache das so:
ib benutze glbitmap ( in uses einfügen)
folgenden Code:
Ach ja, bei mir steht im Pfad ein / und kein \
aktivieren mit
BindTexture(Texture_2D,texID);
und dann eben das
glTexCoord2f(u,v);


Code: Alles auswählen
var
   texID:integer;
 
if LoadTexture('D:/...',texID) = True then
          begin
          //Fröhlich
          end
         else// hat nicht geklappt
Code: Alles auswählen
Signatur := nil;
MAC
 
Beiträge: 770
Registriert: 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2) | 
CPU-Target: 32Bit
Nach oben

Beitragvon Teekeks » 3. Nov 2010, 21:41 Re: Texturen OpenGL

MAC hat geschrieben:
Code: Alles auswählen
if LoadTexture('D:/...',texID) = True then

:shock: Warum vergleichst du auf true? das result ist doch schon Boolean.

Das kann durchaus auch mal schief gehen (auch der Vergleich auf false)
Teekeks
 
Beiträge: 359
Registriert: 27. Mai 2009, 19:54
Wohnort: Cottbus
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2) | 
CPU-Target: x86
Nach oben

Beitragvon MAC » 3. Nov 2010, 22:00 Re: Texturen OpenGL

Weist du was ?
Du hast recht, wieso vergleiche ich da auf true :mrgreen:
MAC
 
Beiträge: 770
Registriert: 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2) | 
CPU-Target: 32Bit
Nach oben

Beitragvon Stoney » 3. Nov 2010, 22:02 Re: Texturen OpenGL

felix96 hat geschrieben:Hier http://wiki.lazarus.freepascal.org/OpenGL_Tutorial#Textures steht man muss die VamoirImagingLibrary einbinden, aber welche unit muss ich dann einbinden?

Du musst die Unit ImagingOpenGL einbinden.
Stoney
 
Beiträge: 19
Registriert: 14. Sep 2009, 14:16
Wohnort: Königsbrunn
OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1) | 
CPU-Target: 32Bit & 64Bit
Nach oben

Beitragvon felix96 » 4. Nov 2010, 07:54 Re: Texturen OpenGL

unit1.pas(8,50) Fatal: Can't find unit imagingopengl used by Unit1
Danke schonmal für eure Antworten
it´s not a bug, it´s a feature!
felix96
 
Beiträge: 288
Registriert: 29. Nov 2009, 17:44
CPU-Target: 32BitWin+64bitUbunt
Nach oben

Beitragvon Stoney » 4. Nov 2010, 11:06 Re: Texturen OpenGL

felix96 hat geschrieben:unit1.pas(8,50) Fatal: Can't find unit imagingopengl used by Unit1

Sind die Vampyre Imaging Units auch im Suchverzeichnis korrekt eingetragen?
Stoney
 
Beiträge: 19
Registriert: 14. Sep 2009, 14:16
Wohnort: Königsbrunn
OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1) | 
CPU-Target: 32Bit & 64Bit
Nach oben

Beitragvon felix96 » 4. Nov 2010, 11:54 Re: Texturen OpenGL

*Heul*
dzlib.pas(44,89) Fatal: Can't find unit dzlib used by ImagingNetworkGraphics
Danke schonmal für eure Antworten
it´s not a bug, it´s a feature!
felix96
 
Beiträge: 288
Registriert: 29. Nov 2009, 17:44
CPU-Target: 32BitWin+64bitUbunt
Nach oben

Beitragvon MAC » 4. Nov 2010, 16:40 Re: Texturen OpenGL

nicht heulen, suchen. Der Bug sagt es doch. konnte die unit "dzlib" ned finden...
also --> google
unit klauen :shock:
und ins gleiche verzeichnis wie das programm legen.

Es geht mit mehrern units:
ImagingNetworkGraphics
imagingopengl
glbitmap

Ich benutze die glbitmap, 1 Zeile geschrieben ist gut. Bei den anderen hab ich keine Ahnung. Für den Anfang würd ich sagen das jede Unit die Anforderungen erfüllt.
glbitmap kann soweit ich weis auch non power of 2 (googlen) texturen laden / skalieren, ob die anderen das können weis ich nicht.
Code: Alles auswählen
Signatur := nil;
MAC
 
Beiträge: 770
Registriert: 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2) | 
CPU-Target: 32Bit
Nach oben

Beitragvon Stoney » 4. Nov 2010, 17:54 Re: Texturen OpenGL

felix96 hat geschrieben:dzlib.pas(44,89) Fatal: Can't find unit dzlib used by ImagingNetworkGraphics

Du musst die Unterverzeichnisse von der Vampyre Imaging Library (namentlich /JpegLib und /ZLib) auch zu deinen Suchpfaden hinzufügen.
Stoney
 
Beiträge: 19
Registriert: 14. Sep 2009, 14:16
Wohnort: Königsbrunn
OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1) | 
CPU-Target: 32Bit & 64Bit
Nach oben

Beitragvon Hartkern » 7. Mär 2016, 17:41 Re: Texturen OpenGL

Servus,

Ich weiß das der Thread recht alt ist, jedoch wollt ich mal fragen ob es einen funktionierenden Workaround gibt, da 7ch mit diversen Loadern dieselben Probleme habe und bisher keine Texturen unter Lazarus in Opengl bekomme
Hartkern
 
Beiträge: 68
Registriert: 5. Dez 2015, 20:03
Wohnort: Leipzig
OS, Lazarus, FPC: Win10 IDE 1.6 | 
CPU-Target: 64Bit
Nach oben

» Weitere Beiträge siehe nächste Seite »
Nächste

Zurück zu Multimedia



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron
porpoises-institution
accuracy-worried