Czelabinsk

Praca nad grą komputerową ma dwie wady. Pierwsza z nich polega na tym, że przygotowanie nawet bardzo prostej rzeczy, takiej jak „Czelabińsk”, trwa długo. Druga polega na tym, że przez większą część tego czasu nie widać postępów. Na tym wykładają się projekty amatorskie: uczestnicy tracą entuzjazm, bo odnoszą wrażenie, że stoją w miejscu.

Dlatego bardzo się cieszę, że „Czelabińsk” dotarł do etapu, na którym możemy coś pokazać. Są obrazki!

Zanim gra będzie mogła być ładna, przez dłuższy czas musi być brzydka. Pierwsze zadanie autora polega na upewnieniu się, że w ogóle jest w stanie daną grę zbudować – a więc musi przede wszystkim przetestować technologię. W tym celu konstruuje „silnik” gry, czyli program komputerowy realizujący jej podstawowe mechanizmy. W dzisiejszych czasach silniki się kupuje, ale nawet wtedy trzeba sporo dopisać, bo przecież autorzy silnika nic nie wiedzą o naszym genialnym pomyśle na symulator smarowania chleba masłem lewą ręką o piątej nad ranem, przed poranną kawą.

Grę na tym etapie można by porównać do samochodu składającego się wyłącznie z silnika, wału napędowego, kół i jakiegoś rusztowania, dzięki któremu całość się nie rozlatuje. Zapomnijcie o pięknej karoserii. Zapomnijcie nawet o kierownicy i siedzeniach!

Dopiero gdy samochód – przepraszam, gra – ruszy, można zająć się tym, żeby nie tylko działała, ale też działała dobrze. Inaczej mówiąc: żeby była fajna. Dokładamy kierownicę i skrzynię biegów, regulujemy silnik, sprawdzamy czy jazda jest wygodna. W przypadku „Czelabińska” na tym etapie interesowało nas głównie, czy strzelanie z rakiet do meteorów jest ekscytujące, czy poziom trudności jest odpowiedni i czy gracz wie, co musi zrobić, żeby wygrać. Nie interesowało nas zupełnie, czy gra jest ładna, dlatego wyglądała ona tak:

Czelabinsk_placeholder

Zwróćcie uwagę na komunikat o liczbie włączonych „generatorów”, którego w ogóle nie powinno być widać, ale pomagał mi w usuwaniu błędów w programie. Od razu widać, że to wersja debugowa.

Czy ktoś z Was kupiłby grę, która tak wygląda? Ja bym nie kupił. Wszystko, co widać na tym zrzucie, to placeholdery, czyli rysunki rezerwujące miejsce dla „prawdziwej” grafiki. Do wewnętrznych testów to zupełnie wystarcza.

Pewnie już się domyślacie, że „Czelabińsk” jest grą o zestrzeliwaniu meteorów. Mniej więcej na środku ekranu jest sobie Czelabińsk, meteory lecą w jego stronę, a gracz stara się je strącać, zanim zniszczą miasto. Jeśli nie trafi, a rakieta, zamiast w meteor, uderzy w Ziemię, następuje eksplozja i mamy w Ziemi dziurę. Zderzenia meteorów działają podobnie, więc po jakimś czasie z planety zostaje marny ogryzek z Czelabińskiem dumnie tkwiącym na samym szczycie. To już cała gra – jest naprawdę prosta – a mimo to prace programistyczne i projektanckie zajęły mi dwa miesiące. Dlatego właśnie używa się placeholderów, a nie ładnej grafiki. Gdybym w trakcie prac doszedł do wniosku, że gra nie działa dobrze i trzeba ją zmienić, grafika wylądowałaby w koszu i nie byłoby z niej pożytku. Placeholderów nie szkoda, więc z ich użyciem szybko wypróbowujemy wiele różnych wariantów. Na przykład w jednym z pomysłów na „Czelabińsk” po planecie miały jeździć czołgi, a w innym satelity na orbicie miały strzelać z laserów. Dużo łatwiej wypróbowuje się takie koncepcje, gdy nie trzeba rysować ładnych czołgów ani pisać specjalnego shadera do rysowania promieni laserowych – tym bardziej że koniec końców żadna z nich nie znalazła się w ostatecznej wersji.

Przygotowanie grafiki do gry przechodzi nieco podobny proces. Najpierw trzeba zastanowić się – często na drodze eksperymentu – jaki styl chcielibyśmy zastosować, jakie kolory wykorzystać, w jaki nastrój celować i tak dalej. Gdy się już wie wszystkie te rzeczy, przygotowanie naprawdę fajnej grafiki staje się dużo łatwiejsze. Dlatego praca zaczyna się od narysowania tak zwanego concept artu, czyli rysunku koncepcyjnego. W przypadku „Czelabińska” wygląda on tak:

Czelabinks_concept_art

Prawda że ładniej? Od razu widać, że nie miałem z tym rysunkiem nic wspólnego. Przygotowała go Ewa, która ma talent i doświadczenie. Pracowała nad nim osobno, tak że nie przeszkadzaliśmy sobie w pracy. Uzgodniliśmy jedynie pewną wspólną koncepcję: planeta na środku, Czelabińsk na górze, ciemne niebo.

Jest sporo różnic między tym obrazem a poprzednim. Zamiast ciasnej kupki szarych budynków reprezentujących miasto jest radioteleskop. Rakiety nie są podłużne, tylko pękate, a do tego są dużo większe. Atmosfera ma inną grubość. Sam obraz ma inne proporcje.

Tak naprawdę to w ogóle nie jest zrzut ekranowy z gry, tylko rysunek, który zrzut udaje. Podobnie jak w przypadku placeholderów, ta sztuczka pozwala wypróbować więcej pomysłów, na przykład inny wygląd rakiety. Gdyby z eksperymentów z rysunkami koncepcyjnymi wynikło, że gra „nie działa” wizualnie, moglibyśmy poszukać innego wyglądu nie przerywając prac programistycznych. A gdyby okazało się, że wygląd trzeba zmienić tak bardzo, że wpływa to na stronę programistyczną – dowiedzielibyśmy się o tym szybciej niż po złożeniu wszystkiego do kupy. To bardzo ważne, dlatego że gra jeszcze złożona do kupy nie jest – a w sumie razem z Ewą i Łukaszem włożyliśmy w nią już trzy miesiące pracy.

(Łukasz jest specjalistą od dźwięku i muzyki. Bardzo żałuję, że na zrzutach ekranowych nie słychać wyników jego pracy, dlatego że dźwięki są równie ważne co grafika, choć niestety mniej doceniane.)

Nad „Czelabińskiem” trzeba jeszcze trochę popracować, więc na razie wygląda on tak:

Czelabinsk_beta

Większość obiektów wciąż ma placeholderowy wygląd, ale już widać nową grafikę, która wpasowała się w grę bez zarzutu.

To jest bardzo trudny moment w rozwoju przedsięwzięcia, dlatego że dopóki gra składała się tylko z placeholderów, była zaledwie nieładna. Teraz nie tylko jest nieładna, ale dodatkowo placeholdery są brzydkie w porównaniu z „prawdziwą” grafiką. Podobnie jest z pracą Łukasza: dopóki w grze nie było żadnych dźwięków, było po prostu cicho, ale teraz, gdy część zdarzeń jest udźwiękowiona, bardzo rzuca się w uszy cisza w nieobsłużonych miejscach. Dopiero w chwili, gdy wszystkie rusztowania zostaną usunięte, gra nagle zacznie wyglądać i brzmieć ładnie.

Dowcip polega na tym, że co prawda grze jeszcze trochę brakuje do ukończenia, ale my już dziś wiemy, że będą z niej ludzie. Rozgrywka działa. Graczom, którym ją pokazaliśmy, podobała się, pomimo tego, że straszyły ich placeholdery. To był bardzo ważny egzamin: gdyby gra nie zdała go, zrezygnowalibyśmy z kontynuowania prac i oszczędzilibyśmy bardzo dużo czasu. Ponieważ jednak wszystko wydaje się zmierzać w dobrym kierunku, kontynuujemy z większą pewnością siebie. Przyznam, że to pierwszy raz w moim życiu, gdy myśl o nadchodzącej „premierze” nie napawa mnie zgrozą.