1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| Procedure TextureInit(Var T:TTexture; TailleX, TailleY:Integer);
Var i, j, k:integer;
Begin
{ On commence par donner la taille appropriée aux données de la texture }
SetLength(T.Donnees, TailleX, TailleY, 4);
{ Initialisation du tableau contenant les données de la texture }
for i:=0 to TailleX - 1 do
begin
for j:=0 to TailleY - 1 do
begin
for k:=0 to 3 do
begin
T.Donnees[i, j, k] := 0;
end;
end;
end;
{ Initialisation de la texture }
glGenTextures(1, @T.Index);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, T.Index);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);
glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE );
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, TailleX, TailleY, 0, GL_RGBA, GL_UNSIGNED_BYTE, @T.Donnees);
glDisable(GL_TEXTURE_2D);
End; |
Partager