Z jakich bibliotek korzysta się tworząc grę.

0

Tzn. chodzi mi o to, że usłyszałem, od starszych kolegów, że na 2 semestrze AiR, do zaliczenia z informatyki należy napisać własną grę arkanoid lub coś w ten deseń, teraz zaczyna z OpenGL i GLUT.

I tu pytanie, bo nie chodzi o same zaliczenie, ale o dalszy rozwój, bo po tym całym AiR nawet nie wiadomo co będę robił, bo jak dotąd 1 semestr to matma i infa, i nie wiadomo na jak bardzo pomogą mi studia w zapoznaniu się z tą dziedziną techniki tzn. czy po studiach będę programował mikro kontrolery etc.

Więc chciałbym się dowiedzieć jaką bibliotekę graficzną należałoby zacząć poznawać, żeby podołać temu zadaniu, ogólnie jak wygląda tworzenie takiego prostego arkanoida, czy korzysta się tylko z biblioteki graficznej typu OpenGL, czy jakiegoś silnika graficznego. I czym to się różni. Czekam na odpowiedzi.

PS: Może ktoś z Was ukończył AiR i mógłby podzielić się wrażeniami na ile pomogły Wam studia w zdobyciu pracy, jaki zakres obowiązków macie etc.:P

0

Jakakolwiek biblioteka graficzna umożliwi Ci napisanie gry. Im lepszy samochód tym szybciej i wygodniej dojedziesz do celu ale starym autem też dojedziesz tyle że wolniej (i z bolącymi plecami) - tak samo jest z tworzeniem gier (i ogólnie tworzeniem oprogramowania). Nie napisałeś jaka to gra 2d/3d.
Do 2d polecam osobiście SFML - bardzo przyjemna i wygodna biblioteka.

1

Podczas tworzenia gier korzysta się z gotowych engine'ów do gier.

Np. Unity.

Rzeźbiąc bezpośrednio np. w OpenGL poznasz jak to wszystko działa od środka, ale nie napiszesz gry bo się zmęczysz i zniechęcisz :-)

1

Zainteresuj się Unity.

Btw, w produkcji prawie każdego softu dąży się do uzyskania możliwe jak najwyższych warstw abstrakcji. Dzięki czemu ostatecznie rozwiązanie można zawrzeć w stosunkowo niewielkiej liczbie kroków/linii kodu. Dla przykładu załóżmy, że masz już gotową grę single player i chciałbyś dopisać do niej multi. Mógłbyś zacząć implementować swoją libę sieciową (tcp/udp) bazując tylko na winsocku i berkeley sockets, ale trochę by to zajęło zanim uzyskałbyś coś w miarę funkcjonalnego. No ok załóżmy, że postanowiłeś jednak użyć już jakiejś gotowej liby do obsługi sieci (np. boost::asio/poco/qt) zaimplementowałeś multi. Przychodzi czas testów. Łączysz się po LANie, wszystko śmiga. Jesteś bardzo dumny ze swojej gry, więc chciałbyś zagrać w nią z Twoim kolegą. Przesyłasz mu instalkę. Próbujecie się połączyć i coś nie działa :( Okazuje się, że kolega siedzi za NATem. Ok, kolega przeforwarduje porty i będzie śmigać. Postanawiasz jednak zawrzeć w swojej grze takie rozwiązanie, które będzie sobie radzić z zestawieniem połączeń bez względu na to, czy ktoś jest za NATem, czy nie. Czytasz o czymś takim jak NAT punchthrough i postanawiasz tego użyć. Zaciągasz do pracy np. Rakneta. Itd... Dowiadujesz się, że Unity już to wszystko implementuje, więc rzucasz to wszystko w cholerę i uczysz się Unity ;p (nie no uczysz się dalej ;)).

0

Jeżeli jesteś bardzo zielony, polecam SDL'a. Biblioteka już od dawna nie utrzymywana, więc najwięcej problemów stwarza sama instalacja, aczkolwiek znakomita by zacząć przygodę z bibliotekami graficznymi. Link do nakładki upraszczającej pracę z biblioteką: http://lux.dmcs.pl/pdsc/graphmanual.html
PS. Sam na studiach uczyłem się bazując na niej. ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1