Podręcznik Mike’a Geiga jest jednym z nielicznych na polskim rynku. Mimo to, krążą o nim bardzo sprzeczne opinie. Jak jest naprawdę?
Faktycznie książka została przygotowana pod jedną ze starszych wersji Unity i siłą rzeczy zawiera trochę przestarzałych informacji. To jest główny problem dzieł drukowanych. Bardzo szybko się dezaktualizują, jednak uważam, że początkujący twórca może wyciągnąć z tej książki kilka wartościowych informacji.
O Autorze
Mike Geig jest twórcą gier, oraz nauczycielem. Prowadzi zajęcia z produkcji gier na Stark State Collage oraz w Cleveland Institute of Art. Ściśle współpracuje z Unity Technologies tworząc dla nich materiały, oraz jest członkiem sekcji Unity Learn.
O czym jest ta książka?
Książka jest dość rozbudowana i porusza szerokie spektrum różnych tematów. Dla kogoś kto nie miał styczności z Unity, może to być wartościowa publikacja. To co bardzo mi się podoba to układ książki. Najpierw dostajemy zestaw informacji i wiedzy, który jest omawiany na przykładach. Na końcu każdego rozdziału dostajemy krótkie FAQ, quiz oraz ćwiczenia. Pierwsza sekcja rozwiewa potencjalne wątpliwości czytelnika, druga część sprawdza czy uważnie przeczytaliśmy rozdział, a ostatnia to dodatkowe ćwiczenia do wykonania, dla lepszego przyswojenia wiedzy.
Oprócz takiej budowy każdego rozdziału, sama książka podzielona jest na sekcję. Najpierw kilka rozdziałów poświęconych jest pewnemu zakresowi wiedzy, a następnie dostajemy rozdział, w którym budujemy grę opartą o wiedzę z poprzednich fragmentów.
Jeżeli chodzi o samą wiedzę. Pierwszy rozdział to klasyczny wstęp. Opis interfejsu, poruszania się po edytorze. Tematycznie powiązany jest od razu kolejny rozdział, który przyswaja terminologię GameDevu opisując czym jest obiekt, czym są komponenty etc. Trzeci rozdział to znów omówienie teoretycznych zagadnień bardziej artystycznych, czyli czym są materiały czy tekstury. Można powiedzieć, że są to fundamenty pracy z Unity, których nie da się nigdy pominąć. Wiedza będzie nieco nieaktualna, głównie w kwestii interfejsu, gdzie z biegiem czasu pojawiają się nowe kontrolki, ale ogólnie nie mam tutaj czego się doczepić. Są to bardziej braki omówienia niektórych nowych kontrolek, niż przekłamania.
Następne dwa rozdziały to narzędzie terenu wraz ze wszystkimi bajerami jak generatory drzew, teksturowanie, tworzenie elementów środowiska itp. Narzędzie niezbyt ewoluowało pod względem użytkowym, więc można śmiało powiedzieć, że tutaj wiedza jest aktualna. Kolejny rozdział uzupełnia wiadomości o oświetlenie. Unity zmieniało nieco światło, ale bardziej od strony technicznej, niż użytkowej, więc i tutaj raczej nie ma się czego przyczepić.
Po tej dawce wiedzy, przechodzimy do stworzenia pierwszej gry, opartej na wiadomościach z poprzednich rozdziałów. Jest to coś w rodzaju wyścigów. Autor omawia też pokrótce projektowanie gry, ale jest to wersja pigułkowa i jeśli kogoś interesuje ten temat, to odsyłam do omawianej przeze mnie książki Jacka Wesołowskiego. Korzystamy tutaj głównie z materiałów gotowych, więc jest to bardziej przykład do lepszego poznania podstaw.
Następne dwa rozdziały to wejście skryptów. Autor omawia w skrócie język C#. Jeżeli ktoś go zna, to spokojnie może ominąć oba. Jeżeli ktoś nigdy nie programował, to na pewno je doceni. W języku podstawy nie zmieniły się od lat, więc nie ma problemów z aktualnością. Dalej dostajemy omówione kolizje wszelkiej maści, czyli Collidery, Raycasting czy Rigidbody. Temat też nie rozwijany, więc też aktualny. Na podstawie tej wiedzy, powstaje kolejna gra, tym razem bawiąca się fizyką.
Kolejny temat to Prefabrykaty. Bardzo fajna wiedza mówiąca czym one są, jak je stworzyć i jakie powstają zależności między prefabrykatem, a jego instancjami. Następny rozdział to Graficzny Interfejs Użytkownika. Ten rozdział jest zdecydowanie najgorszym. Omawiana jest klasa GUI, ale w kontekście wykorzystania jej jako faktyczne GUI. Jednak prawda jest taka, że ta klasa została stworzona do debugowania i tworzenia narzędzi, o czym pisałem innym razem. Opisana wiedza jest aktualna, ale opisana w złym zastosowaniu. Kolejna rzecz to omówienie CharacterControllera, czyli specjalnego komponentu fizycznego dla postaci. Ponownie zdobyta wiedza pozwala stworzyć nową grę w kolejnym rozdziale. Tym razem lecimy statkiem na który spadają meteory, trzeba je wymijać lub ostrzeliwać.
Kolejne moduły, to systemy cząstek, omówione dość szczegółowo, łącznie z opisem niemal każdej opcji w komponentach. Następnie mamy dwa rozdziały spokrewnione, jeden o animacji, a drugi o animatorze. Omówione jest tworzenie samych animacji, oraz posługiwanie się mecanimem. Na tej wiedzy opieramy kolejną grę w której gracz biegnąc musi wymijać przeszkody.
Następny rozdział porusza temat dźwięku w grach i jest to w zasadzie ostatni rozdział poświęcony samej istocie tworzenia gier. Później mamy dodatkowy rozdzialik mówiący o tym jak pracować z grami na urządzenia mobilne (omawiany jest program Unity Remote). Następnie autor wraca pokrótce do wszystkich gier rozbudowując je lekko, a na koniec pokazuje jak budować gry i zarządzać scenami. Oczywiście całość kończy zgrabne podsumowanie. Tak jak wspominałem na początku, spory przekrój przez niemal wszystkie dziedziny dający bardzo solidne podstawy.
Dla kogo jest ta książka?
Zdecydowanie mogę książkę polecić każdemu, kto nie miał do tej pory styczności ani z Unity, ani z programowaniem. Książka nie jest w 100% aktualna, ale jej wiek nie przeszkadza w stopniu znacznym w zapoznaniu się z materiałem. Zdecydowana większość jest aktualna, a niezgodności to częściej brak omówienia nowych rzeczy, niż całkowite rozbieżności.
Jeżeli ktoś już zna Unity lub jest wziętym programistą, a jedynie chciałby poznać środowisko, to prawdopodobnie ta książka będzie zbędnym zakupem.
Kup swój egzemplarz
Jeżeli po przeczytaniu tej recenzji masz ochotę kupić książkę, oraz wesprzeć przy okazji mojego bloga, skorzystaj z poniższego linku przy zakupie książki: