Hallo allerseits,
Ich möchte, je nach bedarf, das Bild auf meiner ImageSprite heller machen bzw. erstmal einfachnur verändern.
Der Plan: Das Bild erstamls in einem TAd2dBitmap speichern, und dann willkürlich alle pixel blau färben, anschließend das TAd2dBitmap wieder dem Bild der ImageSprite zuweisen.
Das sieht also so aus:
Delphi-Quellcode:
procedure TMiniWabe.SetImageBrightness( aMiniWabe: TMiniWabe; aProzentValue: double);
var AdBmp: TAd2dBitmap;
x,y: integer;
oldColour: TAndorraColor;
begin
adBmp:= TAd2DBitmap.Create;
aMiniWabe.image.Texture.Texture.SaveToBitmap(adBmp);
for y:= 0 to aMiniWabe.image.Height - 1 do
begin
for x := 0 to aMiniWabe.IMage.Width - 1 do
begin
oldcolour:=adbmp.Pixels[x,y];
oldcolour:= AD_ARGB( 100, 0, 0, 100);
adBmp.Pixels[x,y]:= oldcolour;
end;
end;
aMiniWabe.image.Texture.Texture.LoadFromBitmap(adBmp, ad32Bit);
AdBmp.Free;
end;
leider geht das so nicht. Mein ImageSprite verschwindet einfach.
Kann man das so überhaupt machen oder ist der Ansatz falsch?
MfG
Spiderpig