Jak się robi gry? ;)

0

Tytuł tematu to oczywiście żart, nie szukam "programu do robienia gier".

Sprawa wygląda w ten sposób, iż mam za zadanie napisać prostą gierkę (aktualnie planujemy klon Space Invaders) z sugestią, aby użyć Java i wymogiem, by wykorzystać jak najwięcej możliwości oferowanych przez programowanie obiektowe.

Na chwilę obecną znam trochę C++, choć klasy dopiero zacząłem odkrywać. Czasu na gotowy program jest jednak sporo, dlatego sądzę, że uda mi się opanować Javę w odpowiednim stopniu.

I tutaj prośba o pomoc w postaci zasugerowania mi konkretnej literatury, dzięki której mógłbym uporać się z zadaniem. Mam tu na myśli zarówno książki, jak i tutoriale dostępne w necie. Co myślicie o "Java: Tworzenie Gier" (http://helion.pl/ksiazki/javtwg.htm). A jeśli nie tą, to czy "Core Java 2" jest lepsze od "Thinking in Java"? Może macie jeszcze inną podpowiedź?

0

Magiczne słowo "Framework". CJ2 jest lepsze od TiJ3ed, ale wymięka przy 4ed TiJ.

Co do polecanych książek warto zainteresować się serią "Perełki Programowania Gier" i "Rzeźnikiem", czyli 5cio tomowym podręcznikiem do fizyki akademickiej tom bodajże 1 i 2. W pierwszej serii najlepsi spece opisują metody rozwiązywania typowych problemów i trzeba sobie t tylko z C++ na Javę przetłumaczyć. W drugiej masz całą teorię fizyki, która przydaje się w grach, no po za fizyką statystyczną.

0

Core JAVA 2 jest dobra nawet bardzo jeśli chodzi o początki. W niej znajdziesz wszystko czego potrzebujesz do zbudowanie pierwszych aplikacji/apletów. Ale nie ma tam nic o tworzeniu gier jako tako. Chodzi mi o to że nie znajdziesz tam działu poświeconego jak stworzyć grę. Ale za to tu zamieszczam paczuszkę w niej krok po kroku Piotr Modzelewski opisuje tworzenie gry. pozdrawiam

http://orfi.uwm.edu.pl/~nsl_2/dlaMimizu.rar

0

Szalek - myślisz, że przeczytanie Core JAVA 2 oraz lektura zamieszczonego przez Ciebie poradnika (dzięki!) wystarczy mi do stworzenia takiej prostej gierki?

0

Ja stworzyłem prostą gierkę tylko na podstawie Core JAVA 2 Podstawy. I to tylko rozbudowując program do przesuwania kwadracików z tej książki. Sądzie że ty nastawiając się na stworzenie gry. Stworzysz coś lepszego i owiele szybciej ;)

0

Też przerabiam J2 Podstawy, jeszcze mi zostały operacje na plikach. Ale nawet nie wpadłem żeby z tych kwadracików zrobić grę. Aż chyba jutro coś pokombinuję, z ciekawości, tylko koncepcji brak, co nimi robić [green]. Ale coś sie wymyśli, z ciekawości różne rzeczy się robiło już. Dzięki za podpowiedź.

0

Ja napisałem swój silnik do tworzenia gier po przeczytaniu:
Core Java 2 Podstawy - cała
Core Java 2 Techniki zaawansowane - niektóre rozdziały
Java Tworzenie gier - część o grafice 2D
Java Obsługa wyjątków, usuwanie błędów i testowanie kodu - prawie cała

Nie powstała jeszcze na tym żadna gra poza prostymi demami. Do tworzenia gier tak naprawdę nie jest potrzebna "Core Java 2 Techniki zaawansowane". Mogą się z niej przydać jedynie kolekcje.

"Java Obsługa wyjątków, usuwanie błędów i testowanie kodu" też raczej nie jest potrzebna, ale moim zdaniem mżna się z niej trochę projektowania nauczyć. Oczywiście o rzucaniu wyjątków w trakcie trwania gry nie ma mowy!

"Java Tworzenie gier" jest przydatna, ale raczej ze wzgledów teoretycznych. Dzięki niej można się dowiedzieć jak taka gra działa. Niestety kody w niej zawarte są moim zdaniem paskudne. Nadają się ponadto jedynie do tworzenia gry w trybie pełnoekranowym. Gdy włożysz jednak trochę własnego wysiłku i ruszysz głową to możesz sobie zrobić ładny siliczek, dzięki któremu jedna gra moze działać na fullscreen, w oknie i na aplecie.

0

@TommyB, bo język to nie wszytko. Trzeba mieć jeszcze pomysł.

@Crane, testowanie kodu jest dość istotne. Ja na podstawie tej książki, książki do Springa i tutka do OSGi napisałem mały silniczek do automatycznego zgłaszania błędów i aktualizacji dla aplikacji okienkowych. Warto jeszcze poczytać tutoriale do J2ME, a to dlatego, że przewija się tam masa sztuczek optymalizacyjnych. Wiadomo powszechnie, że gry warto optymalizować.

0

Pomysły to się ma, ale dotychczas pisałem same aplikacje użytkowe. Ot tak dla treningu a może któraś okaże się hitem... Gry to jednak chyba nie jest domena javy nie ta szybkość, spodobał mi się ten język, ale engine w klasycznych c++/opengl/... jest wydajniejszy. Ale jak poznam głębiej javę to może odkryje jej możliwości. Pewnie to kwestia niewiedzy.

0
Koziołek napisał(a)

Wiadomo powszechnie, że gry warto optymalizować.

Nie tak znowu powszechnie, skoro nie wiedzą o tym profesjonalni twórcy gier ;)

0

@Mimizu, wiedzą, a to czy optymalizują to inna historia. To, że dany element nie jest optymalizowany zazwyczaj wynika z kosztów lub z użytej technologii.

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