Polski

Wolfenstein 3d (A1200+FAST), work in progress

xandra Informacja od autora:
Dawno temu eksperymentowałem z portem Wolfensteina 3D dla CD32, ale doszedłem do wniosku, że raycaster jest po prostu zbyt wolny i porzuciłem projekt. Ostatnio widziałem kilka filmów z Wolf3D działającego na maszynach 286, co skłoniło mnie do myślenia: A1200 z odrobiną Fast RAM może być wystarczająco szybki dla tej gry. Można by założyć, że A1200 jest szybsza niż 286, ale brakuje jednego kluczowego elementu: karty VGA. Oznacza to brak trybów pracy, brak szybkiej dedykowanej pamięci wideo, brak rysowania wielu pikseli przy pojedynczym zapisie, itd. Na 68020+ nie można także wykonywać kodu samomodyfikującego bez wyłączenia lub przepłukania pamięci podręcznej. Rzucenie na to trochę szybkiej pamięci RAM może to zrównoważyć.


Wyczyściłem mój stary port, naprawiłem większość problemów, zaimplementowałem brakujące funkcje. Byłem w stanie ponownie wykorzystać część kodu z Blake Stone, ale nadal miałem wiele problemów z szybkością. Na przykład musiałem uczynić skalery w większości 16-bitowymi stałoprzecinkowymi, ale na szczęście nie miało to dużego wpływu na grafikę w 320x200. Jedną z przewag Wolf3D nad Blake Stone jest to, że nie rysuje żadnych sprite'ów poza obszarem widoku 3D, więc wszystkie grafiki 2D wokół niego mogą być natywnymi bitmapami, tylko widok 3D używa chunky. Jak można się było spodziewać, największą przeszkodą okazał się raycaster. Próbowałem 16-bitowego wariantu, ale nie był on dużo szybszy i powodował wiele błędów z powodu braku precyzji. Skończyło się na zmniejszeniu rozdzielczości poziomej o połowę, więc widok 3D jest rysowany w 2x1. Z drugiej strony oficjalny port GBA Wolf3D też był w 2x1, a to jest potężniejszy system, więc nie sądzę, żeby to był zły wynik.

Minimalne wymagania:
- 68020 14 MHz
- Chipset AGA
- 1 MB Chip RAM
- 2 MB Fast RAM
- około 3 MB wolnego miejsca na dysku

TL;DR Systemem docelowym jest A1200 z pewną ilością Fast RAM, akcelerator CPU nie jest wymagany. Potrzebne są zarejestrowane pliki danych Wolf3D 6-episode (*.WL6) z wyjątkiem CONFIG.WL6.


Jak dla mnie brzmi nieźle, w sumie taki Breathless także działał na A1200 + fast, ale nie wiem czy realne jest to stabilne ponad 70 FPS na takim sprzęcie ;)

Źródło: http://eab.abime.net/showthread.php?t=109873
Download: http://bszili.morphos.me/stuff/wolf3d.zip
Page 1 of 1 1 https://forum.thecompany.pl/zapowiedzi/wolfenstein-a1200plusfast-work-progress-t6992.html
2022-02-20T19:35:02+01:00
Informacja od autora:
Dawno temu eksperymentowałem z portem Wolfensteina 3D dla CD32, ale doszedłem do wniosku, że raycaster jest po prostu zbyt wolny i porzuciłem projekt. Ostatnio widziałem kilka filmów z Wolf3D działającego na maszynach 286, co skłoniło mnie do myślenia: A1200 z odrobiną Fast RAM może być wystarczająco szybki dla tej gry. Można by założyć, że A1200 jest szybsza niż 286, ale brakuje jednego kluczowego elementu: karty VGA. Oznacza to brak trybów pracy, brak szybkiej dedykowanej pamięci wideo, brak rysowania wielu pikseli przy pojedynczym zapisie, itd. Na 68020+ nie można także wykonywać kodu samomodyfikującego bez wyłączenia lub przepłukania pamięci podręcznej. Rzucenie na to trochę szybkiej pamięci RAM może to zrównoważyć.


Wyczyściłem mój stary port, naprawiłem większość problemów, zaimplementowałem brakujące funkcje. Byłem w stanie ponownie wykorzystać część kodu z Blake Stone, ale nadal miałem wiele problemów z szybkością. Na przykład musiałem uczynić skalery w większości 16-bitowymi stałoprzecinkowymi, ale na szczęście nie miało to dużego wpływu na grafikę w 320x200. Jedną z przewag Wolf3D nad Blake Stone jest to, że nie rysuje żadnych sprite'ów poza obszarem widoku 3D, więc wszystkie grafiki 2D wokół niego mogą być natywnymi bitmapami, tylko widok 3D używa chunky. Jak można się było spodziewać, największą przeszkodą okazał się raycaster. Próbowałem 16-bitowego wariantu, ale nie był on dużo szybszy i powodował wiele błędów z powodu braku precyzji. Skończyło się na zmniejszeniu rozdzielczości poziomej o połowę, więc widok 3D jest rysowany w 2x1. Z drugiej strony oficjalny port GBA Wolf3D też był w 2x1, a to jest potężniejszy system, więc nie sądzę, żeby to był zły wynik.

Minimalne wymagania:
- 68020 14 MHz
- Chipset AGA
- 1 MB Chip RAM
- 2 MB Fast RAM
- około 3 MB wolnego miejsca na dysku

TL;DR Systemem docelowym jest A1200 z pewną ilością Fast RAM, akcelerator CPU nie jest wymagany. Potrzebne są zarejestrowane pliki danych Wolf3D 6-episode (*.WL6) z wyjątkiem CONFIG.WL6.


Jak dla mnie brzmi nieźle, w sumie taki Breathless także działał na A1200 + fast, ale nie wiem czy realne jest to stabilne ponad 70 FPS na takim sprzęcie ;)

Źródło: http://eab.abime.net/showthread.php?t=109873
Download: http://bszili.morphos.me/stuff/wolf3d.zip

2022-02-20T20:37:46+01:00

Re: Wolfenstein 3d (A1200+FAST), work in progress

Z tymi FPS jest pomyłka.
Autor o tym wspomina na forum eab
FPS należy wyliczyć ze wzoru 1000/liczba z ekranu.
Czyli te 70 to 1000/70=14.2 prawdziwych FPS

A tak było pięknie :-)

Return to Zapowiedzi