Autor Beitrag
Green
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

Windows XP Home
Delphi 6 Enterprise
BeitragVerfasst: Sa 05.08.06 12:32 
Ich hab folgendes Problem:
Ich hab ein kleines Programm mit OpenGL geschrieben, bis jetzt ohne Texturen.

Jetzt habe ich mit folgender Prozedur (aus delphigl.com) meine Textur geladen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure TForm1.InitTextures;
var
  tex : PSDL_Surface;
begin
  tex := IMG_Load('leatherold1.jpg');
  if assigned(tex) then
  begin
    glGenTextures(1, @TexID);
    glBindTexture(GL_TEXTURE_2D, TexID);

    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);

    // Achtung! Einige Bildformate erwarten statt GL_RGB, GL_BGR. Diese Konstante fehlt in den Standard-Headern
    glTexImage2D(GL_TEXTURE_2D, 0, 3, tex^.w, tex^.h,0, GL_RGB, GL_UNSIGNED_BYTE, tex^.pixels);

    SDL_FreeSurface(tex);
    glEnable(GL_TEXTURE_2D);
  end;
end;


leatherold1.jpg: 400*400 pixel

Und sobald ich jetzt das Programm starte, also auch ohne die Textur zu verwenden Laggt das ganze Programm unglaublich und es kommt praktisch zum Stillstand...

ich glaube es liegt an selbigen Zeilen:
ausblenden Delphi-Quelltext
1:
2:
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);


Denn im Tutorial stand folgendes:
Zitat:
Die folgenden beiden Zeilen sind zwar nicht wirklich nötig, um eine Textur zu erzeugen aber glaubt mir, sie werden ansonsten potthässlich aussehen. Wir werden in einem anderen Tutorial näher auf dessen Bedeutung eingehen, nämlich den so genannten Texturfiltern. Die momentane Einstellung ist leicht rechenlastig jedoch auch von recht guter Qualität. Ihr werdet anfangs keine Probleme mit der Geschwindigkeit bekommen ;).


Lasse ich diese Zeilen weg sehe ich die Textur nicht, auch dann wenn ich sie verwende, aber das Programm läuft einwandfrei...

Meine Daten: Geforce FX 5600 SE, Intel Pentium 4, 2,8 Ghz

Kann mir jemand helfen?? das kann doch so nich sein...

mfG Green
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Sa 05.08.06 12:54 
Die Seitenlängen der Texture müssen eine Potenz von 2 sein,
also z.B. 256*256, 512*512, 256*512

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Green Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 283

Windows XP Home
Delphi 6 Enterprise
BeitragVerfasst: Sa 05.08.06 12:56 
Danke jetzt klappts