Myślałam, iż Doom już niczym mnie nie zaskoczy. A potem trafił do Painta

konto.spidersweb.pl 2 godzin temu

Programiści po raz kolejny udowadniają, iż Dooma da się uruchomić dosłownie wszędzie. Najnowszy projekt pozwala na uruchomienie gry wewnątrz windowsowego Painta – i to nie jako film, ale w pełni grywalną wersję.

Po odpaleniu Doomie na słuchawkach, orbiterku i adapterze Lightning, programiści przyjęli kolejne wyzwanie. Kultowa gra uruchomiła się tym razem w Microsoft Paint, czyli prostym edytorze grafiki dołączanym do systemu Windows od dekad. Za nietypowym projektem stoi Mark Russinovich, dyrektor ds. technologii (CTO) platformy Microsoft Azure, który udostępnił jego kod źródłowy na GitHubie.

Doom naprawdę działa w Paintcie

Projekt nosi nazwę DoomPaint i wyróżnia się na tle wielu internetowych eksperymentów z uruchamianiem Dooma na nietypowych urządzeniach. Zamiast imitować rozgrywkę lub wyświetlać wcześniej nagrane wideo, wykorzystuje prawdziwy silnik gry ViZDoom oraz oryginalne pliki shareware DOOM1.WAD. Microsoft Paint pełni wyłącznie rolę „ekranu”, na którym pojawiają się kolejne klatki rozgrywki.

Autor wykorzystał mechanizm schowka systemu Windows. Każda wygenerowana przez silnik gry klatka trafia najpierw do schowka, a następnie jest automatycznie wklejana na płótno programu Paint jako zwykła operacja edycji obrazu. Dzięki temu Paint zachowuje się tak, jakby użytkownik nieustannie wklejał kolejne obrazy, choć w rzeczywistości obserwuje działającą grę.

Mimo tak nietypowego rozwiązania DoomPaint potrafi działać z prędkością sięgającą 35 klatek na sekundę. Według Marka Russinovicha płynność zależy od wydajności komputera oraz wybranej rozdzielczości. Najlepsze rezultaty zapewnia klasyczne 320 × 200 pikseli, czyli natywna rozdzielczość oryginalnego Dooma, choć projekt obsługuje również wyższe ustawienia, takie jak 640 × 400 czy 640 × 480 pikseli.

Projekt zachowuje wiele charakterystycznych elementów gry. Dostępne są efekty dźwiękowe, muzyka oraz standardowe sterowanie, a użytkownicy posiadający pełną wersję Dooma mogą wykorzystać własne pliki WAD, aby odblokować pozostałe kampanie. Na GitHubie opublikowano również instrukcję uruchomienia programu wraz z listą dostępnych parametrów.

Jednym z najbardziej nietypowych efektów ubocznych wykorzystania Painta jest sposób działania funkcji Cofnij. Ponieważ każda klatka gry stanowi osobną operację edycji obrazu, skrót Ctrl+Z pozwala dosłownie cofać kolejne momenty rozgrywki. Po śmierci bohatera można więc „cofnąć czas”, wracając do wcześniejszego stanu. Z kolei zapisanie obrazu z menu Plik zapisuje aktualną klatkę jako zwykły plik PNG, ponieważ Paint traktuje ją jak każdą inną grafikę.

Mark Russinovich podkreśla, iż Paint nie odpowiada za wykonywanie żadnych obliczeń związanych z grą. Cała logika działa w tle za pośrednictwem silnika ViZDoom, a edytor Microsoftu wyłącznie wyświetla kolejne obrazy przekazywane przez schowek systemowy. Jak sam zaznacza w dokumentacji projektu: „Paint renderuje grę, ale niczego nie oblicza. Paint nigdy niczego nie obliczał. Na tym polega żart”.

Kod DoomPaint został udostępniony na licencji MIT. Projekt jest dostępny publicznie na GitHubie wraz z plikami potrzebnymi do uruchomienia shareware’owej wersji gry oraz szczegółową dokumentacją opisującą sposób działania rozwiązania. Dzięki temu każdy użytkownik systemu Windows może samodzielnie sprawdzić, jak Doom wygląda uruchomiony wewnątrz Painta.

Idź do oryginalnego materiału