W ostatnich latach dużo się…

W ostatnich latach dużo się mówi (narzeka) na rozmiary gier na naszych dyskach twardych. Nikogo już nie dziwią gry o rozmiarze ponad 100GB bo takich gier jest naprawdę sporo, jednak prawdziwy rekordzista dopiero nadciąga bo Microsoft Flight Simulator 2020 ma rozmiar ponad 2PT ~ 2 000 000GB całkiem sporo (sam klient wymagany na dysku gracza już tak nie straszy bo to raptem ~150GB), chociaż inna gra należąca obecnie do Microsoftu może się z tych liczb zaśmiać, bo wygenerowanie całej mapy w Minecraft (60 000 000 x 256 x 60 000 000) wymagałoby ponad 60PB przestrzeni dyskowej z naciskiem na więcej (i sporo wolnego czasu), gdyby na takiej mapie znalazł się płaski teren z jednego końca na drugi w linii prostej, to przejście mapy zajęłoby skromne 1800 godzin (a po drodze i tak nie znalazłbyś diamentów).

Oczywiście da się tworzyć mniejsze gry, dużo mniejsze. Od samego początku swojego istnienia, gry podlegały różnym ograniczeniom sprzętowym. Jednym z tych ograniczeń był rozmiar nośników pamięci. Obecnie wychodzimy już z tego etapu (patrz MS Flight Simulator) bo część danych można streamować ale wciąż na konsolach są dostępne dyski Blu-ray które po części determinują rozmiar gry (zawsze można do pudełka włożyć dwie i więcej płyt ale jak pokazuje historia takie rozwiązania nie przyjmują się na długo), wcześniej były płyty DVD, CD-ROM, dyskietki, kasety magnetofonowe, kartridże (co za paskudne słowo) i inne nośniki których nie sposób wymienić. Przykładowo konsola Atari 2600 (w Polsce popularne Rambo z bazarów w latach 90) w 1977 roku startowała z linią dziewięciu gier na kartridżach o zawrotnej pojemności 2KB później stopniowo zwiększanej. Popularny w Polsce NES osiągnął maksymalnie 512KB pojemności kartridża a największe wydane gry na SNESa (Tales of Phantasia i Star Ocean) osiągnęły już zawrotne 4MB rozmiaru – jakie były każdy wie.

A co jeśli chcielibyśmy zrobić najmnieszą możliwą grę FPS z grafiką 3D???

W 2004 roku w trakcie Breakpoint – festiwalu demosceny, niemiecka grupa .theprodukkt zaprezentowała swoją grę .kkrieger na konkurs – najmniejsza gra 96K.
Czym jest .kkrieger? Jest to w pełni grywalny FPS z grafiką 3D i dźwiękiem, w grze występują animowani przeciwnicy, działa tu również oświetlenie, a cały rozmiar gry na dysku wynosi 97 280 bajtów (95KB). Wszystko w tej grze jest generowane proceduralnie, gra nie przechowuje żadnych tekstur wszystko jest odtwarzane z historii tworzenia a nie jak standardowo z gotowych bitmap, dźwięki są wytwarzane przez syntetyzator V2 z strumienia danych MIDI.
Nie chcę zagłębiać się w aspekty typowo techniczne bo z pewnością są tu osoby znacznie bardziej kompetentne aby to wszystko wyjaśnić jak to działa – do czego oczywiście zachęcam.
Sama gra jest bardzo krótka, jej przejście zajmuje tylko kilka minut ale nie to jest tutaj najważniejsze a sam efekt jaki udało się uzyskać z tak małej przestrzeni dyskowej (kosztem wymagań technicznych), sami twórcy gry twierdzą że przy tradycyjnym sposobie tworzenia gier .kkrieger zajmowałby około 200-300MB. Gra nie jest też, delikatnie mówiąc ładna, szczególnie że w 2004 swoje premiery miały takie mniej znane strzelanki jak Far Cry, Painkiller i Half-life 2 – tak, wszyscy jesteśmy już starzy.

Gra do pobrania jest tutaj

Link do github

#gry #ciekawostki i trochę #programowanie – tutaj zachęcam do rozwinięcia tematu jak to działa i jakie są ograniczenia, co można by było osiągnąć dzisiaj na współczesnym PC