Vector

From Atariki

Jump to: navigation, search

Grafika:Vector-numen-4exit-game.png

Planowana, nigdy nie ukończona gra FPP na Atari XL/XE.

Fox zaimplementował silnik 3D wzorowany na Build, wykorzystanym m.in. w grze Duke Nukem 3D na PC. Cechy wspólne tych silników:

  • mapa zbudowana z prostopadłościanów ("sektorów"), których ściany mogą być widoczne lub niewidoczne ("portale")
  • sprite-y w dowolnych miejscach świata 3D, wyświetlane równoległe do ekranu
  • swobodny ruch we wszystkich kierunkach w 3D
  • obrót wokół osi pionowej
  • symulacja patrzenia w górę i w dół przez przesuwanie linii horyzontu
  • mapy tworzone w edytorze "Build" lub pochodnym (np. "Mapster")
  • sposoby poruszania: chodzenie, bieganie, latanie, pływanie, skakanie, czołganie
  • różne rodzaje drzwi
  • windy

Główne różnice:

  • brak tekstur w silniku Vector (ściany mają kolor jednolity lub "w kratkę")
  • tylko poziome podłogi i sufity w silniku Vector

Silnik pracuje w trybie 9++/10++ w rozdzielczości 80x48. W zależności od stopnia komplikacji widoku na ekranie, renderowanie klatki trwa od trzech do kilkudziesięciu ramek. Ograniczenia dla pojedynczej mapy: współrzędne X i Y 16-bitowe, współrzędna Z (wysokość) 8-bitowa, kąt obrotu 8-bitowy, maksymalnie 256 ścian (w tym portale), 64 sektory, 64 sprite-y.

Silnik Vector został użyty w demie Numen. Oprócz tego, co można zobaczyć w demie, powstał kod obsługujący poruszanie przy pomocy joysticka lub klawiatury, różnego typu drzwi i windy, detekcję kolizji oraz wybór broni. Cały kod można znaleźć w źródłach dema, działa on na komputerach z 64 KB pamięci RAM.

Przygotowanie map

Grafika:Vector-numen-4exit-mapster32.png

Mapy były tworzone w edytorze Mapster. Edytor ten posiada widok mapy z góry (na obrazku nowsza wersja: Mapster32) oraz widok 3D WYSIWYG. Sprite-y powstały w programach graficznych na PC.

Silnik Build (a tym samym Mapster) wykorzystuje pliki *.map (pojedyncza mapa), tiles*.art (tekstury) oraz palette.dat (kolory). Na potrzeby Vectora powstały konwertery tych plików:

  • PCXToArt.java - odczytuje pliki *.pcx i tworzy z nich plik art - pozwala to uniknąć niewygodnego edytora tekstur dołączanego do Build i Mapster.
  • MakePatternPCX.java - tworzy pliki *.pcx dla "tekstur" ścian - jednolite kolory i "szachownice" dwóch kolorów.
  • ConvArt.c - odczytuje plik art, dokonuje kompresji powtarzających się elementów i zapisuje plik asx (dla xasm). Autorem tego narzędzia jest Eru.
  • ConvMap.java - odczytuje plik map i zapisuje plik asx.
  • FindAtariColors.java, SetAtariColors.java - narzędzia wspomagające stosowanie określonych kolorów Atari w sprite-ach.

W demie Numen trasy były definiowane w plikach tekstowych track.txt. ConvTrack.java zamieniał je na asx.

Historia

Silnik powstał w sierpniu 2001. Autor nie był zainteresowany tworzeniem gry, lecz za namową Sikora podjął taką próbę. Z powodu braku chętnych do współpracy projekt gry został anulowany w roku 2002, kilka miesięcy po wydaniu dema Numen.

Personal tools