PROJEKT UCYF. Specyfikacja wstępna. 1. Informacje o grze: TEMAT: Sprzętowa realizacja gry Arkanoid przy pomocy języka opisu sprzętu VHDL.



Podobne dokumenty
Projekt z UCYF Specyfikacja II (realizacja projektu w CAD) Temat: Sprzętowa realizacja gry Arkanoid

Projekt z UCYF Dokumentacja końcowa. Temat: Sprzętowa realizacja gry Arkanoid

Układy Cyfrowe. Specyfikacja wstępna Zebranie informacji dotyczących tematyki projektu oraz przedstawienie koncepcji realizacji projektu.

FINCH PONG. Realizator: Partner: Patronat:

MIKROKONTROLERY ARM DOKUMENTACJA WSTĘPNA PROJEKTU GRA PONG

WASM AppInventor Lab 3. Rysowanie i animacja po kanwie PODSTAWY PRACY Z KANWAMI

Ping-Pong. Gra dla dwóch graczy.

Mateusz Żyliński Tadeusz Włodarkiewicz. WireWorld. Zebranie informacji dotyczących tematyki projektu oraz przedstawienie koncepcji realizacji projektu

Pong to dwuwymiarowy symulator tenisa sportowego. Gracz, poruszając prostokątem symulującym paletkę, stara się zdobyć punkt poprzez posłanie piłki

Układy Cyfrowe. Symulacje komputerowe Realizacja prototypu projektu z wykorzystaniem systemu CAD. Projekt: Realizacja:

Technika mikroprocesorowa. Konsola do gier

2.1. Duszek w labiryncie

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Model: JMC-03_V2.2_RNS510 TV DVB-T for CAR INSTRUKCJA OBSŁUGI RNS 510. Spis treści

interfejs szeregowy wyświetlaczy do systemów PLC

Mikrokontrolery wytyczne do projektów

1. Opis okna podstawowego programu TPrezenter.

Gra logiczna dla 2 5 osób Czas rozgrywki około 45 minut Wiek od 7 lat

Instrukcja użytkownika programu TAXI.NET 1.0

gra Chińczyk dla 6 osób

Misja#3. Robimy film animowany.

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

Interfejs analogowy LDN-...-AN

Podręcznik instalacji

Strzelanka dla dwóch graczy

ARRIS VIP Copyright 2015 Grupa MULTIPLAY.

STEROWANIE MASZYN I URZĄDZEŃ I. Laboratorium. 4. Przekaźniki czasowe

Efekt Halla. Cel ćwiczenia. Wstęp. Celem ćwiczenia jest zbadanie efektu Halla. Siła Loretza

Zasoby. Musimy zaimportować zasoby dla gry z Asset Store

Nazwa implementacji: Pong. Autor: Jarosław Żok. Opis implementacji: Zmiany w skryptach gry Pong, dodające kolejny element zmieniający jej zasady.

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Unity. Platforma do tworzenia gier dla różnych systemów docelowych, m.in.: Windows, macos, ios, Android, Powstała w 2005 r., obecnie wersja 5.3.

I. Spis treści I. Spis treści... 2 II. Kreator szablonów Tworzenie szablonu Menu... 4 a. Opis ikon Dodanie nowego elementu...

Kształtowanie szybkości Starty w parach ze strzałem. U 14 U 16

gry na planszy do WARCABÓW WARCABY TRADYCYJNE WARCABY NAROŻNIKOWE gra dla 2 osób rekwizyty: - plansza - 12 pionków białych i 12 pionków czarnych

Program EDYTOR-AS-OUX

INSTRUKCJA OBSŁUGI TABLICY WYNIKÓW SPORTOWYCH SERIA PROFI

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 3

Tekstury 2. Ćwiczenie 2 (Budynek)

D O K U M E N T A C J A

SML3 październik

Magiczny ogródek INSTRUKCJA GRA DLA 2 OSÓB WIEK DZIECKA 4+

WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI KATEDRA AUTOMATYKI. Robot do pokrycia powierzchni terenu

Miernik poziomu cieczy MPC-1

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

MenadŜer haseł Instrukcja uŝytkownika

CHIŃCZYK. CHIŃCZYK z blokadą ruchomą INSTRUKCJA. gry na planszy do Chińczyka. gra dla 2-4 osób

1 Zakres dostawy. Podręcznik instalacji. Monitor LCD z funkcją zarządzania kolorami. Ważne

1.1. Przykład projektowania konstrukcji prętowej z wykorzystaniem ekranów systemu ROBOT Millennium

Materiały pomocnicze do ćwiczeń z podstaw techniki cyfrowej (przygotował R.Walkowiak) Dla studiów niestacjonarnych rok AK 2017/18

i-glasses SVGA Instrukcja Użytkownika

LEKCJA TEMAT: Zasada działania komputera.

Architektura systemów komputerowych Laboratorium 10 Symulator SMS32 Urządzenia wejścia i wyjścia

Testy zdolności motorycznych i specjalnych umiejętności ruchowych z softballa, służące do naboru IV klasy sportowej dziewcząt obowiązujące w 2013 roku

Veronica. Wizyjny system monitorowania obiektów budowlanych. Instrukcja oprogramowania

Robo - instrukcja obsługi

8. I klasa gimnazjum. 8.1 Organizacja gry - założenia taktyczne

WYŚWIETLACZ UNIWERSALNY

Model: JMC-03_V2.2_RNS510 TV DVB-T for CAR INSTRUKCJA OBSŁUGI MMI 2G. Spis treści

Spis treści. 1 Moduł Mapy 2

Konsola operatora TKombajn

Opis układów wykorzystanych w aplikacji

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Przyspieszenie na nachylonym torze

Cyfrowy regulator temperatury

Łożysko z pochyleniami

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

Warsztaty dla nauczycieli

POMOC / INSTRUKCJA OBSŁUGI

DIPOLOWY MODEL SERCA

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Zajęcia z aplikacją ScratchJr mogą zostać przeprowadzone na dwa sposoby:

INSTRUKCJA OBSŁUGI PROJEKTORA BARCO. Spis treści. 1.Informacje ogólne. 2.Panel Communicator a. 1. Informacje ogólne.

Komputery I (2) Panel sterowania:

WEJŚCIE W TRYB PROGRAMOWANIA

Opis implementacji: Poznanie zasad tworzenia programów komputerowych za pomocą instrukcji języka programowania.

Instrukcja montażu i obsługi Schodowego Czujnika Ruchu SCR-3/4

Przełącznik KVM USB. Przełącznik KVM USB z obsługą sygnału audio i 2 portami. Przełącznik KVM USB z obsługą sygnału audio i 4 portami

Rys. 1. Rozpoczynamy rysunek pojedynczej części

Komplet do nadawania i odbioru obrazu video drogą radiową. Instrukcja obsługi

3. Wyświetlacz LCD. 4. Przycisk [TIME]

Rys.1. Uaktywnianie pasków narzędzi. żądanych pasków narzędziowych. a) Modelowanie części: (standardowo widoczny po prawej stronie Przeglądarki MDT)

W rozgrywkach regionalnych i centralnych: 16 drużyn

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: TECHNIKA CYFROWA 2 TS1C

Implementacja algorytmu szyfrującego

INSTRUKCJA DO GRY TRAIN DRIVER 2

Platforma szkoleniowa krok po kroku

etrader Pekao Podręcznik użytkownika Ustawienia

Opis dydaktycznych stanowisk pomiarowych i przyrządów w lab. EE (paw. C-3, 302)

Proste układy sekwencyjne

PRZEWODNIK PO ETRADER PEKAO ROZDZIAŁ XIX. USTAWIENIA SPIS TREŚCI

Instrukcja podłączenia i programowania modułu

1722/85 I 1722/86 INSTRUKCJA UŻYTKOWNIKA. Panel MIKRA i monitory głośnomówiące CXMODO. Nr ref. 1722/85 Nr ref. 1722/86 INSTRUKCJA UŻYTKOWNIKA

VetLINK moduł MAPA Instrukcja obsługi

Compressor Supreme Instrukcja obsługi

Zestaw przedłużacza, 4K HDMI HDBaseT, 70 m

Podręcznik instalacji

Instrukcja do oprogramowania ENAP DEC-1

Zestaw przedłużacza, 4K HDMI HDBaseT, 100 m

Transkrypt:

PROJEKT UCYF Specyfikacja wstępna TEMAT: Sprzętowa realizacja gry Arkanoid przy pomocy języka opisu sprzętu VHDL. 1. Informacje o grze: a) Rys historyczny Arkanoid jest grą typu aracade stworzoną przez japonską firmę Taito Corporation w 1986 r. Oparta jest na grze Breakout firmy Atari powstałej dziesięć lat wcześniej. Gra zyskała ogromną popularność na całym świecie, co zaowocowało licznymi klonami gry. b) Fabuła Czas i dokładne miejsce akcji nie są znane. Gra rozgrywa się w kosmosie. Po zniszczeniu statku matki arkanoid, jeden z pojazdow kosmicznych - Vaus zdołał przetrwać, lecz tylko po to, aby zostać uwięzionym. Zadaniem gracza jest przebrnąć przez 33 plansze (w oryginalnej grze), by finalnie zmierzyć się z Fortem Kontrolujacym Wymiar o nazwie Doh, przypominajacym głowy Moai z Wysp Wielkanocnych. c) Zasady Celem gry jest zniszczenie muru znajdującego się na planszy, złożonego z cegiełek. Na początku gracz ma do dyspozycji określoną liczbę piłeczek lub platform (w 1/8

zależności od wersji gry), które traci kolejno jeśli piłeczka ucieknie poza obszar gry. Za zbijane cegiełki przyznawane są punkty. Po zbiciu wszystkich cegiełek następuje przejście do kolejnego poziomu, co oznacza nowe ułożenie klocków (nowa plansza). 2. Mechanika gry: Illustration 1: Przykładowa plansza Arkanoida Plansza przedstawia obszar gry, prostokątnego kształtu, otwarty od dołu. W obszarze gry znajduje się mur złożony z cegieł. Gracz dysponuje jedną kulką, którą może odbijać paletką. Paletka może się przesuwać w poziomie od strony otwartej obszaru gry. Kulka odbija się od ścian ograniczających pole gry zgodnie z prawami fizyki (kąt padania równy kątowi odbicia), ale bez uwzględniania grawitacji. Trafienie kulką w mur powoduje niszczenie cegły, zyskanie zyskanie 1punktu i odbicie piłki. Paletka natomiast podzielona jest na 3 sektory, gdy piłka trafi w środkowy sektor lub uderzy w krótszy bok paletki, to odbija się pod takim kątem pod jakim padała, gdy pada na jeden z bocznych sektorów, odbija sie pod kątem 30 stopni. Gracz ma na starcie do wykorzystania trzy szanse (3 platformy). Gracz nie może dopuścić do tego, aby kulka opuściłą pole gry gdy zdarzy się to trzykrotnie, gra kończy się przegraną gracza. Gra składa się z 10 poziomów plansz, przedstawiających różne ukształtowanie muru jak i różniących się szybkością poruszania się piłeczki, która wzrasta wraz z numerem poziomu. Przejście na kolejny poziom nastepuje po zniszczeniu muru na poziomie poprzednim. Plansza oprócz obszaru gry zawierać będzie informacje o wyniku punktowym (pole SCORE), poziomie gry (pole LEVEL) oraz dostępnej liczbie platform (pole LIVES). Cegiełki mogą być 4 kolorów: żółty, czerwony i zielony. Sterowanie grą odbywa się za pomocą trzech przycisków: lewo, prawo, start jednoczesne wciśnięcie dwóch przcisków lewo i prawo. Gra wyświetlana będzie na monitorze VGA. 2/8

Rozdzielczość gry: 320 x 200. Poniżej zamieszczamy planowany wygląd planszy z zamiszczonymi wymiarami elementów (w pikselach): Illustration 2: Planowany wygląd planszy z zamiszczonymi wymiarami elementów (w pikselach) 3. Opis funkcji poszczególnych elementów i sposób ich współdziałania: Projektowany przez nas układ składa się z dwuch podstawowych bloków: bloku wyświetlania boku kontrolera gry. Liczba punktów 10 bitów Ilość żyć 2 bity Mapa klocków 70 bitów Pozycja piłeczki x 9 bitów Pozycja piłeczki y 8 bitów Pozycja paletki 9 bitów Blok wyświetlania VGA R G B H SYNC V SYNC Drawing 1: Blok wyświetlania: 3/8

Do bloku tego wchodzą sygnały zawierające informacje o aktualnym stanie planszy (stan każdego klocka jest lub nie ma), oraz o pozycji ruchomych elementów gry, czyli paletki i piłeczki. Trafiają tutaj również sygnały o ilości żyć oraz ilości punktów zdobytych przez gracza. Na podstawie tych sygnałów wejściowych generowany jest graficzny obraz planszy, który nadaje się już do wyświetlenia na monitorze VGA, zatem z bloku tego wyjściami są już wejścia monitora w standarcdzie VGA takie jak R, G, B, oraz sygnały odchylania poziomego i pionowego H Sync i V Sync. Dowolna zmiana wartości sygnałów wejściowych(np. pozycji piłeczki) powoduje natychmiastową zmianę obrazu na monitorze. Ilość punktów 10 bitów RESET CLK Wejscia z przycisków KONTROLER GRY Ilość żyć 2 bity Mapa klocków 70 bitów Pozycja piłeczki x 9 bitów Pozycja piłeczki y 8 bitów Pozycja paletki 9 bitów Drawing 2: Blok kontrolera gry Blok ten jako wejścia przyjmuje stan przcisków sterujących ruchem paletki, sygnał zegarowy CLK, oraz sygnał RESET, którego wywołanie powoduje ustawienie wszystkich rejestrów wewnętrznych w stan jak zaraz po włączeniu zasilania układu. Układ ten na podstawie danych o stanie przycisków oraz danych o historii swojego działania(przechowywanych w rejestrach i pamięci ROM ) generuje aktualny stan pola gry(pozycja paletki, piłeczki, ilość klocków, ilość punktów I ilość żyć)i wysyła te informacje do układu wyświetlania VGA. Dzieje się to według dołączonego algorytmu. 4/8

Illustration 3: Schemat działania algorytmu kontrolera gry 5/8

Illustration 4: Kontrola ruchu paletki 6/8

W algorytmie tym widać 9 sytuacji kolizyjnych oznaczonych numerami od I do IX. I. kolizja z lewą ścianą: II. kolizja z górną ścianą: III. Kolizja z prawą ścianą: IV. kolizja z paletką: V. kolizja z dolną ścianą (wypadnięcie): VI. kolizja z klockiem od góry: VII.kolizja z klockiem od dołu: VIII.kolizja z klockiem od prawej strony klocka: IX. kolizja z klockiem od lewej strony klocka: Każda z tych sytuacji jest obsługiwana indywidualnie, a obsługa niektórych z nich wiąże się ze zmianą mapy planszy w pamięci RAM, zmianą ilości żyć, czy nawet wczytaniem nowej planszy z pamięci ROM. Za każdym razem z wyjątkiem kolizji z dolną ścianą (wypadnięcie piłeczki) konieczna jest zmiana wektora ruchu piłeczki. 7/8

Jak widać informacje o ilości punktów, pozycji i wektorze piłeczki, pozycji paletki, etc. muszą być przechowywane w rejestrach i po sytuacjach kolizyjnych specjalny układ sterujący wykrywający te kolizje w odpowiedni sposób zmienia wartości danych w tych rejestrach. Jeżeli nastąpi zbicie klocka, wówczas układ sterujący zmienia stan pamięci RAM, w której przechowywane są informacje o stanie każdego klocka na planszy. Układ ten pobiera również informacje z przycisków, za pomocą których można zmieniać położenie paletki lub odpalić piłeczkę z paletki. wektora piłeczki X wektora piłeczki Y Do modułu wyświetlania RESET ROM CLK Sterowanie z przycisków UKŁAD STERUJĄCY RAM pozycji pozycji piłeczki piłeczki X Y Drawing 3: Moduł układu sterującego pozycji paletki punktów numeru poziomu ilości żyć Podsumowując układ sterujący jest sekwencyjnym układem cyfrowym analizującym stan przycisków wejściowych, rejestrów oraz pamięci ROM oraz RAM i na tej podstawie ustawiający stany tych rejestrów tak aby było to zgodne z przedstawionym powyżej algorytmem. Układ ten co każdy pełny cykl ustawia na wyjściu do wyświetlania aktualne dane o stanie planszy aby mogly one za pośrednictwem układu wyświetlania zostać zwizualizowane na monitorze VGA. 4. Bibliografia 5.1 Synteza ukladow cyfrowych T. Łuba 5.2 Projektowanie układów cyfrowych z wykorzystaniem języka VHDL M.Zwoliński 8/8