Bei der von mir vorgeschlagenen Lösung würdest du jeweils maximal 25 Texturen behalten, aber müsstest trotzdem immer nur Eine neu laden.
Init:
Delphi-Quellcode:
InsertIndex := 0;
for I := Low(TextureArray) to High(TextureArray) do
begin
TextureArray[I] := NoCoverTexture;
end;
Neues Album laden:
Delphi-Quellcode:
if (TextureArray[InsertIndex] <> NoCoverTexture) then
begin
DeleteTexture(TextureArray[InsertIndex]);
end;
LoadTexture(Pfad, TextureArray[InsertIndex]);
Inc(InsertIndex);
if (InsertIndex = Length(A)) then
begin
InsertIndex := Low(A);
end;
Zeichnen vom Carousel:
Delphi-Quellcode:
for I := InsertIndex to High(TextureArray) do
begin
RenderTexture(TextureArray[I]);
end;
for I := Low(TextureArray) to InsertIndex - 1 do
begin
RenderTexture(TextureArray[I]);
end;