Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revize Předchozí verze Následující verze | Předchozí verze | ||
2014:led-tetris [2015/01/18 16:13] Matej Hojdík |
2014:led-tetris [2015/01/18 22:07] (aktuální) Matej Hojdík [Záver] |
||
---|---|---|---|
Řádek 100: | Řádek 100: | ||
Od tejto súradnice sa v dvoch for cykloch (riadok, stĺpec) skontroluje, či sa neprekryje nový segment s vysvietenou časťou (čiže predchádzajúce segmenty, prípadne ich zvyšky). Ak dojde ku kolízií pole ''int dispArray[8][16]'' sa vynuluje a začína nová hra. Ak nenastane kolízia, segment sa na určitu dobu zapíše to tohoto poľa a tým sa vysvieti. | Od tejto súradnice sa v dvoch for cykloch (riadok, stĺpec) skontroluje, či sa neprekryje nový segment s vysvietenou časťou (čiže predchádzajúce segmenty, prípadne ich zvyšky). Ak dojde ku kolízií pole ''int dispArray[8][16]'' sa vynuluje a začína nová hra. Ak nenastane kolízia, segment sa na určitu dobu zapíše to tohoto poľa a tým sa vysvieti. | ||
- | V tomto momente sa začína inkrementovať premenná counter. Vždy keď je counter násobkom 4000, testuje sa návratová hodnota z funkcie pre obsluhu akcelerometra. Podľa návratovej hodnoty z funkcie obsluhujúcej akcelerometer sa rozhodne: | + | V tomto momente sa začína inkrementovať premenná counter. Vždy keď je counter násobkom 4000, testuje sa návratová hodnota z funkcie pre obsluhu akcelerometra, pričom plne dostačujúce sú hodnoty z osí x a y. Podľa návratovej hodnoty z funkcie obsluhujúcej akcelerometer sa rozhodne: |
* či sa má segment pohnúť v pravo - realizované náklonom dosky do prava | * či sa má segment pohnúť v pravo - realizované náklonom dosky do prava | ||
* či sa má segment pohnúť v ľavo - realizované náklonom dosky do ľava | * či sa má segment pohnúť v ľavo - realizované náklonom dosky do ľava | ||
Řádek 173: | Řádek 173: | ||
Zadaním bolo realizovať hru Tetris pomocou FRDM-KL25Z a RG LED matice 8x8 s využitím farebnosti matice. Ovládanie bolo realizované pomocou akcelerometra. | Zadaním bolo realizovať hru Tetris pomocou FRDM-KL25Z a RG LED matice 8x8 s využitím farebnosti matice. Ovládanie bolo realizované pomocou akcelerometra. | ||
- | Zadanie sa podarilo splniť v plnom rozsahu. Program bol odladený od drobných chýb takže hra je plne hrateľná, odskúšaná a relatívne náročná na ovládanie, čo jej prídáva na atraktivite. Drobnosti ako skóre, zvyšovanie rýchlosti po dosiahnutí určitej úrovne a podobne neboli pridané. Jednak je matica relatívne malá, takže už po pár segmentoch môže byť pole plne obsadené a ovládanie je už beztak dostatočne náročné, takže nízke skóre skôr odradí. Zato je hra vybavená random generátorom, takže hra je o to viac zaujímavejšia. | + | Zadanie sa podarilo splniť v plnom rozsahu. Program bol odladený od drobných chýb takže hra je plne hrateľná, odskúšaná a relatívne náročná na ovládanie, čo jej prídáva na atraktivite. Drobnosti ako skóre, zvyšovanie rýchlosti po dosiahnutí určitej úrovne a podobne neboli pridané. Jednak je matica relatívne malá, takže už po pár segmentoch môže byť pole plne obsadené a ovládanie je už beztak dostatočne náročné, takže nízke skóre skôr odradí. Zato je hra vybavená random generátorom, takže je o to viac zaujímavejšia. |
- | Malou nevýhodou je, že ak je pri pohybe do vodorovnej polohy s doskou jemne buchnuté, môže akcelerometer zaznamenať vyššiu hodnotu v opačnej osi (viz video 0:20). Riešenie je jednoduché: stačí mať hru vždy vo vzduchu. | + | Malou nevýhodou je, že ak je pri pohybe s doskou jemne buchnuté, môže akcelerometer zaznamenať vyššiu hodnotu v niektorej osi (viz video 0:20), najpravdepodobnejšie v tej, kde je najväčší náklon. Riešenie je jednoduché: stačí mať hru vždy vo vzduchu. |