Projekt Grafika Komputerowa 312B
Aukasz Kubuś
Temat Snake 3D Marcin Dziób
Michał Iwański
Wstęp
Naszym celem było stworzenie gry 3D przy użyciu OpenGL, a dokładniej biblioteki GLUT.
Nasz projekt oparliśmy na następujących założeniach: po scenie porusza się obiekt (Snake),
który zbiera obiekty (sześciany), po zebraniu obiektu Snake staje się większy. Jest to
klasyczna gra komputerowa rozwinięta o trzeci wymiar (Snake porusza się nie tylko po
płaszczyznie, ale również góra/dół).
Projekt
Nasz projekt składa się z następujących plików:
control.cpp/ control.hpp zmienne i funkcje związane ze sterowaniem
display.cpp/ display.hpp zmienne i funkcje związane z wyświetlaniem
ligot.cpp/ ligot.hpp zmienne i funkcje związane z oświetleniem
logic.cpp/ logic.hpp zmienne i funkcje związane z logiką gry
main.cpp plik zawierający funkcję main()
texture.cpp/ texture.hpp - zmienne i funkcje związane z teksturami
Nasz projekt wyświetla oświetloną (oświetlenie można wyłączyć) scenę 3D na której znajduje
się płaszczyzna, Snake a który się po niej porusza oraz obiekty, które powinien zbierać. Na
wszystkie obiekty zostały nałożone tekstury. Za pomocą odpowiednich klawiszy oraz myszy
można zmieniać położenie Snake a oraz zmieniać perspektywę.
Instrukcja użytkownika
Po uruchomieniu programu pojawi się okno gry.
Na planszy znajdują się dwa obiekty, będziemy za pomocą strzałek sterować czerwonym,
próbując zebrać kolejne biało-czerwone obiekty.
W przypadku, gdy przegramy możemy wybrać jedną z dwóch opcji: zakończyć grę lub
rozpocząć nową.
Sterowanie:
Strzałka do góry - ruch do góry
Strzałka w dół - ruch w dół
Strzałka w lewo ruch w lewo
Strzałka w prawo ruch w prawo
[Shift] ruch do góry (zmiana poziomu)
[Ctrl] ruch w dół (zmiana poziomu)
Spacja pauza
[W] obserwator przemieszcza się do góry
[S] obserwator przemieszcza się w dół
[A] obserwator przemieszcza się w lewo
[D] obserwator przemieszcza się w prawo
[Z] oddalenie obserwatora
[X] przybliżenie obserwatora
[L] włącz/wyłącz oświetlenie
[+] zwiększenie skalowania (powiększenie sceny)
[-] zmniejszenie skalowania (zmniejszenie sceny)
Prawy przycisk myszy [PPM] menu podręczne
Lewy przycisk myszy [LPM] - zmiana perspektywy (można również użyć klawiszy
[2],[4],[6],[8] na NumPadzie)
Menu podręczne:
Aspekt obrazu:
1:1 - oznacza zachowanie proporcji naszych obiektów bez względu na wymiar okna
Całe okno oznacza dostosowanie obrazu okna do jego wymiarów
Podział pracy
Aukasz Kubuś silnik gry
Marcin Dziób wyświetlanie sceny
Michał Iwański teksturowanie i oświetlenie
Wnioski
Wykorzystując bibliotekę GLUT można w krótkim czasie stworzyć prostą grę komputerową.
Korzystając z odpowiednich funkcji biblioteki możemy bez specjalistycznej wiedzy z zakresu
grafiki 3D oraz szczegółów dotyczących systemu operacyjnego stworzyć okno, a w nim
umieścić obiekty 3D. Na początku korzystanie z biblioteki może sprawiać problemy, jednak
im dłużej z nią pracujemy tym staje się to łatwiejsze. Stworzona przez nas gra jest bardzo
prosta, ale posiada wszystkie potrzebne funkcjonalności, w przyszłości można by ją
rozbudować o dodatkowe poziomy oraz dodać na przykład system punktów czy listę
rankingową. Można by się również zastanowić nad zapisem stanu gry i następnie
wznowieniem jej po ponownym włączeniu aplikacji.
Wyszukiwarka
Podobne podstrony:
gk sprawozdanie lab1sprawozdanie felixa2Sprawozdanie Konduktometriazmiany w sprawozdaniach finErrata do sprawozdania2009 03 BP KGP Niebieska karta sprawozdanie za 2008rid&657Sprawozdanie nr 3 inzSprawozdanie FundacjaBioEdu2007Sprawozdanie Ćw 2sprawozdanie 4sprawozdanie 2009więcej podobnych podstron