Kurz2 - Kapitola3

17. června 2007 v 16:01 | http://www.sweb.cz/kurz_evt/ |  Programování pro WinCE

4.3 Postup při animaci

Před zahájením posunu kostky po displeji si dopřejme trochu teorie. Jak vlastně vytvořit pohyb na obrazovce počítače?
Není to nijak zvlášť složité, programátor pouze musí mít na paměti několik pravidel:
  1. Pohyb se vytváří podobně jako při promítání filmu v kině. Na displeji se musí vystřídat více obrázků v rychlém sledu za sebou. Pro vytvoření časové základny se používají tzv. časovače - více si o nich řekneme v některém dalším dílu.
  2. Překreslit "celé políčko filmu" - celou plochu klientské oblasti je časově velmi náročné. Protože u většiny programů se pohybují na obrazovce jen některé objekty, není nutné překreslovat statické pozadí programu. Stačí pohybovat s objektem, který se v tomto případě nazývá sprajt.
  3. Vykreslení samotného sprajtu při pohybu na displeji není ještě dostatečné. Pokud bychom pouze vykreslovali např. sluníčko při pohybu po obloze na stále nových pozicích, zůstala by na ploše celá jeho trajektorie.

  4. obr. 38 Dráha sprajtu na displeji
  5. Při pohybu sprajtu je nutné postarat se o odklizení zbytků staré polohy sprajtu. Aby byl procesor co nejméně zatěžován, je vhodné pracovat s co nejmenší částí displeje. Na následujícím obrázku je označena minimální plocha displeje (v obdélníku), kterou je nutné překreslit.

  6. obr. 39 Minimální plocha aktualizace displeje
  7. Každá operace s displejem je zdrojem potenciálního rušivého poblikávání. Proto je výhodné použít tzv. Off-screen techniku. Při tomto postupu si vytvoříme v operační paměti potřebný kousek "kompatibilního displeje", ve kterém si provedeme všechny potřebné grafické operace. Až je vše připraveno, hotovým kouskem překryjeme potřebnou část displeje.

  8. obr. 40 Off-screen postup animace
Na obrázku jsme provedli 4 kroky:
  1. Vytvoření kompatibilního DC
  2. Vyplnění požadovaným pozadím
  3. Umístění sprajtu na potřebnou pozici
  4. Kopírování připravené části na displej
Protože je náš seriál zaměřen na programování s pomocí Windows API funkcí, budeme i při naší animaci využívat tyto funkce. Poznamenejme, že pro vytvoření graficky složitého programu (např. hry) by bylo nutné použít jinou techniku, protože standardní API funkce nejsou zrovna nejrychlejší :-).

Co bychom si měli z této lekce zapamatovat?

  • Pro animaci lze s výhodou použít techniku sprajtů.
  • Při překreslování displeje bychom měli pracovat s minimální plochou.
  • K přípravě dat se používá Off-screen postup.
 

Buď první, kdo ohodnotí tento článek.

Nový komentář

Přihlásit se
  Ještě nemáte vlastní web? Můžete si jej zdarma založit na Blog.cz.