Individální projekty MPOA

Mikroprocesory s architekturou ARM

Uživatelské nástroje

Nástroje pro tento web


2014:arkanoid-game

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
2014:arkanoid-game [2015/01/18 22:59]
Jindřich Šindelář [Úvod]
2014:arkanoid-game [2015/01/18 23:41] (aktuální)
Jindřich Šindelář [Závěr]
Řádek 25: Řádek 25:
  
 =====Firmware===== =====Firmware=====
-Firmware byl psán v prostředí [[http://​developer.mbed.org/​|mbed.org]]. Pro komunikaci s displejem byla využita knihovna [[http://​developer.mbed.org/​users/​DimiterK/​code/​KS0108/​|KS0108]]. Z časových důvodů není kód rozdělen do více souborů, všse nachází v souboru ''​main.cpp'',​ který lze nalézt v [[http://​developer.mbed.org/​users/​JSindelar/​code/​Arkanoid_v1/​|repozitáři projektu]]. Ze stejných důvodů obsahuje hra pouze jednu úroveň, funkce ale byly psány tak, aby bylo možné jednoduše přidat další úrovně.+Firmware byl psán v prostředí [[http://​developer.mbed.org/​|mbed.org]]. Pro komunikaci s displejem byla využita knihovna [[http://​developer.mbed.org/​users/​DimiterK/​code/​KS0108/​|KS0108]]. Z časových důvodů není kód rozdělen do více souborů, všechny funkce ​se nachází v souboru ''​main.cpp'',​ který lze nalézt v [[http://​developer.mbed.org/​users/​JSindelar/​code/​Arkanoid_v1/​|repozitáři projektu]]. Ze stejných důvodů obsahuje hra pouze jednu úroveň, funkce ale byly psány tak, aby bylo možné jednoduše přidat další úrovně.
  
 V následujícím textu budou popsány jednotlivé používané funkce. V následujícím textu budou popsány jednotlivé používané funkce.
Řádek 76: Řádek 76:
 ====funkce DrawBricks()==== ====funkce DrawBricks()====
 Funkce ''​DrawBricks()''​ dle obsahu polí ''​column[]'',​ ''​row[]''​ a ''​BrickExists[]''​ naplněných předchozí funkcí vykresluje matici cihel. Parametry cihel, které jsou pro všechny stejné (šířka, výška) jsou dány konstantami překladače ''​BrickW'',​ ''​BrickH''​. Původně bylo zamýšleno použít místo 3 samostatných polí jedno pole struktur o 3 položkách,​ přístup do položek struktur v tomto poli ve funkci volané z ''​main''​u se však zdál příliš komplikovaný. Funkce ''​DrawBricks()''​ dle obsahu polí ''​column[]'',​ ''​row[]''​ a ''​BrickExists[]''​ naplněných předchozí funkcí vykresluje matici cihel. Parametry cihel, které jsou pro všechny stejné (šířka, výška) jsou dány konstantami překladače ''​BrickW'',​ ''​BrickH''​. Původně bylo zamýšleno použít místo 3 samostatných polí jedno pole struktur o 3 položkách,​ přístup do položek struktur v tomto poli ve funkci volané z ''​main''​u se však zdál příliš komplikovaný.
 +-----
 +{{ 2014:​arkanoid-game:​arkanoid_screen.png?​550 }}
 +Takto vypadá displej po vykreslení loga, tabulky s nulovým skóre a 3 zbývajícími životy, ohraničení herní plochy, matice cihel, pálky a míčku ve výchozí pozici.
 +
 ----- -----
 ====Funkce reset()==== ====Funkce reset()====
Řádek 202: Řádek 206:
  
 =====Demonstrační video===== =====Demonstrační video=====
-{{youtube>​GC-csz9e6Wk?​large}}+{{ youtube>​GC-csz9e6Wk?​large }}
  
 V první části videa je hra úspěšně dohrána, po restartu je záměrně prohrána pro demonstraci chování v obou případech. V první části videa je hra úspěšně dohrána, po restartu je záměrně prohrána pro demonstraci chování v obou případech.
 ----- -----
 =====Závěr===== =====Závěr=====
-V rámci tohoto projektu byl vyvinut klon hry [[http://​en.wikipedia.org/​wiki/​Arkanoid|Arkanoid]] ovládaný akcelerometrem vývojového kitu [[http://​www.freescale.com/​webapp/​sps/​site/​prod_summary.jsp?​code=FRDM-KL25Z|FRDM KL25Z]]. Hra zatím obsahuje pouze jednu úroveň včetně počítání ​skóre a zbývajících pokusů ​a je plně funkč.+V rámci tohoto projektu byl vyvinut klon hry [[http://​en.wikipedia.org/​wiki/​Arkanoid|Arkanoid]] ovládaný akcelerometrem vývojového kitu [[http://​www.freescale.com/​webapp/​sps/​site/​prod_summary.jsp?​code=FRDM-KL25Z|FRDM KL25Z]]. Hra zatím obsahuje pouze jednu úroveň, funkce ​však byly psány tak, aby rozšíření ​ o další úrovně nebylo příliš pracné. Hra je plně funkční a zobrazuje také informace o skóre a počtu  ​zbývajících pokusů. Kompletní kód včetně použitých knihoven lze nalézt v [[http://​developer.mbed.org/​users/​JSindelar/​code/​Arkanoid_v1/​|repozitáři projektu]].
2014/arkanoid-game.1421618365.txt.gz · Poslední úprava: 2015/01/18 22:59 autor: Jindřich Šindelář