Třináctidílný video-tutoriál ukazující postup, jak v Silverlightu vytvořit jednoduchou online hru se vším všudy: grafika, transformace, animace, počítání skóre a životů, zrychlování, ukládání (a načítání skóre) na server prostřednictvím webové služby (WCF), práci s datovým gridem, ukládání do izolovaného úložiště, cachování dat na serveru, přehrávání audia, ...
Části
- Balónek (5:54)
- Animace (6:27)
- Skóre (4:53)
- Životy (8:48)
- Rychlost (5:21)
- Webová služba (12:01)
- Tabulka nejlepších (13:22)
- Nastavení tabulky (6:43)
- Izolované úložiště (2:45)
- Cachování (5:51)
- Mizení balónku (5:34)
- Vítr (3:23)
- Zvuky (4:36)
1 - Balónek
V první části vytvoříme objekt balónku složený ze dvou elips a úsečky.
2 - Animace
Ve druhé části rozpohybujeme balónek tak, aby létal vzhůru přes hrací plochu z náhodných souřadnic. Za tímto účelem použijeme transformaci posunu (TranslateTransform) a budeme plynule animovat (Storyboard + DoubleAnimation) její vertikální souřadnici.
3 - Skóre
Ve třetí části přidáme počítání zásahů balónku (skóre).
4 - Životy
Ve čtvrté části doplníme hru o počítání životů, které budou ubývat, pokud nám balónek "proklouzne". Pokud životy dojdou nastane konec hry, který nám oznámí speciální komponenta, jež zároveň nabídne volbu pro znovuzahájení hry.
5 - Rychlost
V páté části balónek naučíme postupně zrychlovat, čili po každém jeho zásahu se jeho rychlost o něco málo zvýší. Díky tomu bude zajištěna konečnost každé hry.
6 - Webová služba
V šesté části vytvoříme webovou službu WCF, která bude do souboru na serveru ukládat a načítat výsledky hráčů.
7 - Tabulka nejlepších
V sedmé části propojíme webovou službu s klientskou částí aplikace, která tak bude na server zasílat nové výsledky a načítat z něj výsledky hráčů, které zobrazí v tabulce vítězů. Stejným způsobem se lze na tutéž webovou službu připojit i z kterékoli jiné aplikace .NET (např. konzolové, Windows forms, XNA, jiné ASP.NET stránky atd.).
8 - Nastavení tabulky
V osmé části dokončíme nastavení tabulky vítězů (DataGridu), nejen vzhledově, ale také zprovozníme odesílání jména a skóre aktuálního hráče na server.
9 - Izolované úložiště
V deváté části se naučíme používat izolované úložiště, kam lze ukládat libovolné hodnoty a objekty na klientské straně.
10 - Cachování
V desátém díle se naučíme používat cache na straně serveru tak, aby došlo k úspoře jeho prostředků a urychlení dříve implementovaných operací.
11 - Mizení balónku
V jedenácté části přidáme animaci pro mizení zasaženého balónku, který jakoby odletí do dáli až zcela zmizí, ještě před tím, než vylétne balónek další.
12 - Vítr
Ve dvanácté části přidáme k doposud pouze vertikálnímu pohybu balónku i jeho horizontální složku, což bude simulovat vliv větru. Jeho směr i síla přitom bude vždy volena náhodně.
13 - Zvuky
Ve třinácté závěrečné části do hry přidáme ozvučení zásahu balónku a konce hry pomocí MediaElementu.