Einzelnen Beitrag anzeigen

Destroxi

Registriert seit: 29. Okt 2011
55 Beiträge
 
Delphi 7 Enterprise
 
#1

OpenGL 2D - Texturen laden

  Alt 29. Okt 2011, 10:35
Ich versuche mit einem Tutorial (http://wiki.delphigl.com/index.php/Tutorial_2D#Dateien) Texturen zu laden.

Es klappt allerdings nicht, ich sehe nur einen schwarzen Hintergrund und weiß nicht was ich falsch mache

Mein Quellcode:
Delphi-Quellcode:
var
  Form1: TForm1;
  DC: HDC;
  RC: HGLRC;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var
 BeanTex: glUInt;
begin
 InitOpenGL;
 DC := GetDC(Handle);
 RC := CreateRenderingContext(DC, [opDoubleBuffered], 32, 24, 0, 0, 0, 0);
 ActivateRenderingContext(DC, RC);

 glEnable(GL_ALPHA_TEST);
 glAlphaFunc(GL_GREATER, 0.1);
 glEnable(GL_TEXTURE_2D);

 glMatrixMode(GL_PROJECTION);
 glViewport(0,0,ClientWidth,ClientHeight);
 glOrtho(0,640,0,480,0,128);
 glLoadIdentity;

 Application.OnIdle := Render;

 LoadTexture('Textures\Bean.tga', BeanTex, False);
 glBindTexture(GL_TEXTURE_2D, BeanTex);
end;

procedure TForm1.Render(Sender: TObject; var Done: Boolean);
begin
 glMatrixMode(GL_MODELVIEW);
 glLoadIdentity;

 glEnable(GL_CULL_FACE);
 glCullFace(GL_BACK);

 glBegin(GL_QUADS);
  glTexCoord2f(0,0); glVertex3f(-1, -1, 0);
  glTexCoord2f(1,0); glVertex3f(1, 1, 0);
  glTexCoord2f(1,1); glVertex3f(1, 1, 0);
  glTexCoord2f(0,1); glVertex3f(-1, -1, 0);
 glEnd;

 SwapBuffers(DC);

 Done := False;
end;
Ich weiß nicht wie ich die Textur auf das Quad beziehe aufjedenfall klappt es nicht...

Destroxi
  Mit Zitat antworten Zitat