Anonymní profil Omikron – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Omikron – Programujte.comAnonymní profil Omikron – Programujte.com

 

Příspěvky odeslané z IP adresy 193.84.186.–

Omikron
.NET › AnimatedSprite (SdlDotNet vs…
21. 2. 2008   #66778

Jasně promiň, nějak jsem automaticky předpokládal znalost knihovny SdlDotNet....(je sice otázka zda mě budeš schopen poradit, když ji neznáš, ale co já jsem ten kdo má problém)

Takže:
AnimatedSprite je objekt knihovny SdlDotNet. Dalo by se zjednonušeně říci, že je to Surface, který si pamatuje posloupnost bitmap(AnimationCollection), která vznikne zde "rozřezáním" bitmap.bmp na okna 100*100px. Také si pamatuje čas, po kterém automaticky vymění jednotlivé bitmapy z AnimationCollection.
Jiný možný pohled by byl, že je to jakoby klasický kinofilm, který se každých 80ms(animace.Delay) posune o jedno pole.

Můj problém je, že ve stavu kdy došel k poslednímu "okenku" a měl by začít znova od začátku místo času 80ms čeká odhadem dvojnasobek.
Avšak pokud pustím "film" jakoby pozadu tak to jede v pořádku.

Nevím, ale snad je to teď dostatečne srozumitelné....

Omikron
.NET › AnimatedSprite (SdlDotNet vs…
9. 2. 2008   #65448

Mam takový zajímavý problém, pracuji s animaci v AnimatedSprite, řekněme zapsanou nějak takto.



private AnimatedSprite objekt = new AnimatedSprite();
......
AnimationCollection animace = new AnimationCollection();
animace.Add(new Surface("bitmap.bmp"), new Size(100, 100), 0);
animace.Delay = 80;
this.Animations.Add("ANIMACE", animace);
......
a pak v cyklu:
Screen.Blit(objekt);
Screen.Update();


Animace se vykresluje v pořádku, problem nastane poté co dojede animace do "konce" a začne se opakovat znova od začátku.
Pak místo času 80ms čeká dvojnasobný čas(odhaduju podle toho ze při 1s to bylo asi 2s) .

Problém vyřeší další řádek kódu, který však převrátí běh animace.


animace.AnimateForward = false;


Neví někdo, proč se daná animace vždy "zasekne" než se spustí znova podotýkam že se to děje pouze pri dopředném běhu nikoli při zpětném.


 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032022 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý