Texturen OpenGL
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
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!
it´s not a bug, it´s a feature!
-
- Beiträge: 19
- Registriert: Mo 14. Sep 2009, 15:16
- OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1)
- CPU-Target: 32Bit & 64Bit
- Wohnort: Königsbrunn
- Kontaktdaten:
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 oder (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).
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);
Code: Alles auswählen
glEnable(GL_TEXTURE_3D);
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"
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 Mi 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!
it´s not a bug, it´s a feature!
-
- Beiträge: 471
- Registriert: Do 15. Nov 2007, 16:58
- OS, Lazarus, FPC: Win11/Ubuntu Budgie (L 3.0 FPC 3.2.2)
- CPU-Target: i386, x64
- Wohnort: Gera
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
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
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!
it´s not a bug, it´s a feature!
-
- Beiträge: 770
- Registriert: Sa 21. Feb 2009, 13:46
- OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
- CPU-Target: 32Bit
Re: Texturen OpenGL
Hey, OpenGL
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);
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;
-
- Beiträge: 359
- Registriert: Mi 27. Mai 2009, 20:54
- OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2)
- CPU-Target: x86
- Wohnort: Cottbus
Re: Texturen OpenGL
MAC hat geschrieben:Code: Alles auswählen
if LoadTexture('D:/...',texID) = True then
Warum vergleichst du auf true? das result ist doch schon Boolean.
Das kann durchaus auch mal schief gehen (auch der Vergleich auf false)
-
- Beiträge: 770
- Registriert: Sa 21. Feb 2009, 13:46
- OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
- CPU-Target: 32Bit
Re: Texturen OpenGL
Weist du was ?
Du hast recht, wieso vergleiche ich da auf true
Du hast recht, wieso vergleiche ich da auf true
-
- Beiträge: 19
- Registriert: Mo 14. Sep 2009, 15:16
- OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1)
- CPU-Target: 32Bit & 64Bit
- Wohnort: Königsbrunn
- Kontaktdaten:
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.
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!
it´s not a bug, it´s a feature!
-
- Beiträge: 19
- Registriert: Mo 14. Sep 2009, 15:16
- OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1)
- CPU-Target: 32Bit & 64Bit
- Wohnort: Königsbrunn
- Kontaktdaten:
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?
Re: Texturen OpenGL
*Heul*
dzlib.pas(44,89) Fatal: Can't find unit dzlib used by ImagingNetworkGraphics
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!
it´s not a bug, it´s a feature!
-
- Beiträge: 770
- Registriert: Sa 21. Feb 2009, 13:46
- OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
- CPU-Target: 32Bit
Re: Texturen OpenGL
nicht heulen, suchen. Der Bug sagt es doch. konnte die unit "dzlib" ned finden...
also --> google
unit klauen
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.
also --> google
unit klauen
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;
-
- Beiträge: 19
- Registriert: Mo 14. Sep 2009, 15:16
- OS, Lazarus, FPC: Mac OS (Lazarus 0.9.31, FPC 2.5.1)
- CPU-Target: 32Bit & 64Bit
- Wohnort: Königsbrunn
- Kontaktdaten:
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.
-
- Beiträge: 69
- Registriert: Sa 5. Dez 2015, 20:03
- OS, Lazarus, FPC: Win10 IDE 1.6
- CPU-Target: 64Bit
- Wohnort: Leipzig
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
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