![]() |
DelphiX - Kapitel 4 - Animation wird nicht angezeigt
Hi,
also, ich hab wie schon gesagt, das DelphiX Tut von Delphi-Treff vor mir liegen und möchte das machen. Bin jetzt bei Kapitel 4 bei den Animationen. Ich hab alles 1:1 abgeschrieben, aber es geht nicht. Ich starte das Programm, danach wird die DXDraw Kompo schwarz und dann passiert nix mehr. Eigentlich sollte die Animation abgespielt werden. Tuts aber nicht. Hier mal der Source:
Delphi-Quellcode:
TAnimation = class(TImageSprite);
var Form1: TForm1; Animation: TAnimation; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin Animation := TAnimation.Create(DXSpriteEngine1.Engine); Animation.Image := Form1.DXImageList1.Items.Find('Animation'); Animation.X := 0; Animation.Y := 0; Animation.Width := Animation.Image.Width; Animation.Height := Animation.Image.Height; Animation.AnimCount := 5; Animation.AnimLooped := True; Animation.AnimSpeed := 20/1000; Animation.AnimStart := 0; end; procedure TForm1.DXTimer1Timer(Sender: TObject; LagCount: Integer); begin DXSpriteEngine1.Move(1); DXDraw1.Surface.Fill(0); DXSpriteEngine1.Draw; DXDraw1.Flip; end; Hatte jemand das selbe problem? Wenn ja, wie hast Du es gelöst? Oder weiß sonst jemand rat? *MFG* Manu |
Re: DelphiX - Kapitel 4 - Animation wird nicht angezeigt
:angel2: *push* :angel2:
Hatte noch kein anderes dieses Problem? :shock: |
Re: DelphiX - Kapitel 4 - Animation wird nicht angezeigt
Manchmal sinds ja solche Fehler: Is der Timer enabled? :?:
|
Re: DelphiX - Kapitel 4 - Animation wird nicht angezeigt
Zitat:
Jupp, ist aktiviert. |
Re: DelphiX - Kapitel 4 - Animation wird nicht angezeigt
Hi,
ich hab den Fehler gefunden. Irgendwie lags an dem Bild, das ich verwendet hab. |
Re: DelphiX - Kapitel 4 - Animation wird nicht angezeigt
Hi,
das Problem hatte ich gerstern Abend auch, mit dem gleichen Tut. Bei mir funktionierte es nur, wenn ich Bitmap-Grafiken (TDIB) verwendet habe, TJPEGImage und TGIFImage funktionierten nicht. Ausserdem habe ich konkret bei der Animation vergessen PatternHeight und PatternWidth korrekt zu setzen. Nachdem ich das drin hatte, hat es prima funktioniert. |
Re: DelphiX - Kapitel 4 - Animation wird nicht angezeigt
Hi,
wie setzt man denn das korrekt?? Hängt das vom Bild ab? MfG Marc |
Re: DelphiX - Kapitel 4 - Animation wird nicht angezeigt
Um die Animation hinzubekommen, nimmt man dort eine Grafik, welche alle Aniationsschritte nebeneinander oder untereinander enthält. Man hat in der Grafik also einige Bilder nebeneinander. Mit den Patternwerten stellt man nun die Größe der einzelnen Bildchen ein. DX nimmt dann nach diesem Muster die Pixel aus der Grafik-Datei und spielt sie nacheinander ab. Also Beispiel.
Du hast eine Animation, welche aus 3 Animationschritten besteht. Die Grafik die zu animieren ist, ist dabei 16x16 Pixel groß. Dann werden die 3 Animationsschritte in eine Grafik nebeneinander kopiert sodass die Grafikdatei eine Größe von 16x48 Pixel hat. In den Pattern gibts du nun als Width und Height jeweils 16 ein. Das bedeitet, dass DX hingeht, und die große Grafik entsprechend der Pattern-Werte zerlegt, und diese Teile nacheinander abspielt. Nach dem Beispiel oben würde DX die Grafik also in 3 Teile zerlegen (48 / 3) und käme dadurch auf 3 Grafiken a 16x16px. Gruß Christian |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz