Fascynujące rozwiązania techniczne Prince of Persia
Prince of Persia

Trzydzieści lat temu, w październiku, zadebiutował niezapomniany tytuł – Prince of Persia. Epicka opowieść o odważnym młodzieńcu, który stawił czoła setkom niebezpieczeństw i pokonał złego Jaffara, by ocalić księżniczkę, wciąż żyje w naszej pamięci. Równie fascynująca jest jednak historia powstawania tej gry. Dzięki minidokumentowi opublikowanemu przez Ars Technica sam Jordan Mechner zdradza wiele smakowitych szczegółów na temat Prince of Persia, w tym sztuczki, którymi musiał się posłużyć, aby przełamać ograniczenia pamięci w Apple II.

Jak pisaliśmy w artykule o oryginalnych filmach wideo użytych do stworzenia animacji, Jordan Mechner postawił na rotoskopię – ubrał swojego brata Davida na biało, a ten odwzorował wszystkie ruchy bohatera. Mechner kupił digitalizer. Był rok 1989 i choć Prince of Persia nie odniósł wielkiego komercyjnego sukcesu w Stanach Zjednoczonych, reszta świata przyjęła go z otwartymi ramionami.

Zanim powstał Prince of Persia, był Karateka. Do tamtej pory wszystkie gry Mechnera opierały się na tej samej mechanice zręcznościówek (trzy życia, maksymalny wynik, spróbuj ponownie), ale w Karatece zdecydował się opowiedzieć historię: zły Akuma bierze do niewoli księżniczkę Mariko, a nasz bohater musi ją uratować, rozdając ciosy i kopniaki na wszystkie strony. Karatekę i Prince of Persia dzieli pięć lat (jeden powstał w '84, drugi w '89), ale obie gry narodziły się na tej samej platformie – Apple II.

Apple II: ograniczenia, które wymusiły geniusz

W minidokumencie opublikowanym przez Ars Technica w serii „War Stories” sam Mechner przyznaje, że praca z Apple II nie była łatwa. Uznawany za „system numer jeden” do grania w latach 80. (przynajmniej w Stanach Zjednoczonych), miał bardzo poważne ograniczenia sprzętowe. Audio było kilka poziomów poniżej innych komputerów, wideo ograniczało się do czterech kolorów przy rozdzielczości 280 x 192 pikseli, a łączna pamięć RAM wynosiła 48 kilobajtów.

Tu właśnie wkracza słynna rotoskopia. Wszystkie próby ożywienia postaci wychodziły „surowo” i rozczarowująco, ale dzięki pomocy swojego nauczyciela karate Mechner zdołał opracować animacje dla Karateki. Znalazłszy dobre rozwiązanie, zaczął myśleć o następnej grze, a jako główne źródło inspiracji podaje pierwsze dziesięć minut „Poszukiwaczy zaginionej Arki” (nie zapominając o „Tysiącu i jednej nocy” oraz „Złodzieju z Bagdadu”). W tamtych czasach, gdy postać w grze spadała do studni lub rury, była lekka jak piórko i praktycznie niezniszczalna, ale on chciał przekazać ideę bólu: jeśli gracz chybi skok lub wpadnie w trudne miejsce, skończy źle.

https://old.neoteo.com/el-codigo-fuente-de-prince-of-persia/

Rotoskopia i taśma VHS: jak powstały animacje

Ale Prince of Persia potrzebował skokowego wzrostu pod względem liczby i jakości animacji: powtórzenie tego, co zrobił w Karatece, nie wystarczy. Klucz znalazł w VHS, które pozwoliło mu nagrać brata klatka po klatce. Konwersja wideo na animację wymagała swego rodzaju procesu „analogowo-analogowo-cyfrowego”. Najpierw przechwytywał klatki (przewijając taśmę o jedną klatkę za pomocą swojego magnetowidu) używając kamery 35-milimetrowej skierowanej na telewizor z wideo w ciemnym pokoju. Następnie każdą klatkę wykorzystywał jako referencję do stworzenia negatywowych wersji brata, podkreślając ich kontury markerem Sharpie. To zostało przetworzone kserokopiarką, dzięki czemu uzyskiwał białą postać na dobrze zdefiniowanym czarnym tle. Ostatnią fazę wykonał digitalizer, dodatkowy komponent dla Apple II, który kosztował 599 dolarów w latach 80. (1250 dolarów po uwzględnieniu inflacji). To były tygodnie ciężkiej pracy, przetwarzanie i konwersja poszczególnych klatek.

Fascynujące rozwiązania techniczne Prince of Persia
Tak Mechner tworzył animacje do Prince of Persia: marker Sharpie, kserokopie i mrówcza praca, klatka po klatce

Walka o pamięć: 48 KB i sztuczki programistyczne

Jednak każda klatka to pamięć, a jak już wspominaliśmy, Apple II nie miał jej zbyt wiele… 48 kilobajtów. Do tego na rynek miały wkrótce wejść nowe systemy, a wrażenie, że Apple II „umiera”, stawało się coraz bardziej realne. Kolejnym punktem spornym był fakt, że Mechner wyobrażał sobie Prince of Persia jako grę o przetrwaniu… ale nie wychodziła zabawna. Rozwiązanie? Dodać walkę, zgodnie z sugestią kolegi Tomi Pierce, jednej z założycielek Brøderbund.

Ale jak dodać walkę, skoro nie ma już pamięci? Odpowiedź kryła się w funkcji „Exclusive-OR”: jeśli dwa bity są takie same, otrzymujesz 0, jeśli różne – 1. Używając Exclusive-OR z przesunięciem o jeden bit i pisząc kod w zaledwie pięć minut, narodziła się „Cień” – przeciwnik, którego Prince of Persia tak bardzo potrzebował. Dla strażników Mechner zdołał uzyskać dodatkowe 12 KB ukryte w dodatkowej karcie pamięci Apple II, a ich animacje pochodziły z adaptacji „Robin Hooda” z 1938 roku z Errolem Flynnem.

3 października 1989 roku Prince of Persia trafił na półki sklepowe, a świat gier wideo pożegnał się z Apple II, szukając systemów z większymi zasobami. Ale to porty uratowały tę fantastyczną grę. Ograniczenia pamięci zniknęły, dając jeszcze płynniejsze animacje, świetne tła, żywe kolory i pasjonującą przygodę od początku do końca. Chcesz zagrać w nią ponownie? Jest dostępna w sklepie Windows – za darmo!

https://old.neoteo.com/el-primer-juego-de-pc-comercializado-en-cd/