[#4381] Re: Zapowiedzi nowych gier

@Don_Adan, post #4379

szkoda że EA nie dało źródeł także z wersji dla MacOSa, akurat wymagała PPC, ale pewnie zmiany zeby skompilowac pod 68k byłyby minimalne. Np. taki System Shock w wersji dla Macosa ma troche kodu dla 68k (chociaż wyszedl tylko pod PowerPC).

https://github.com/NightDive-Studio/shockmac/
[#4382] Re: Zapowiedzi nowych gier

@michal_zukowski, post #4381

BSzili tym razem przymierza się do zrobienia portu Wolfenstein 3D, który będzie działał dobrze już na A1200 z odrobiną FastRAM. Więcej szczegółów i testowa wersja jest do ściągnięcia tutaj.
2
[#4383] Re: Zapowiedzi nowych gier

@Solo Kazuki, post #4382

Tutaj zaś gameplay z tego portu W3D:
1
[#4384] Re: Zapowiedzi nowych gier

@mailman, post #1

Pojawiło się też demo/WIP gry Scramble. Gameplay:


Ostatnia aktualizacja: 25.02.2022 12:22:19 przez zzielinski
[#4385] Re: Zapowiedzi nowych gier

@zzielinski, post #4383

hej, nie moge dostrzec info na czym to jest uruchomione, na a1200 z fastem?
[#4386] Re: Zapowiedzi nowych gier

@juen, post #4385

Tak, A1200+8MB FAST.
[#4387] Re: Zapowiedzi nowych gier

@zzielinski, post #4386

Wolf3d na A1200 z fastem ma 70-90 klatek? Jestem pod wrażeniem.
[#4388] Re: Zapowiedzi nowych gier

@zzielinski, post #4386

no to faktycznie super skoro to "tylko" port
[#4389] Re: Zapowiedzi nowych gier

@mmarcin2741, post #4387

BSzili tłumaczy, że to nie FPS a liczba milisekund potrzebna do narysowania klatki animacji.

Dla przypomnienia: 20 milisekund to 1/50 sekundy (50 fps). Czyli wartość 60 to 3/50 sekundy (16,6 fps), zaś 80 to 4/50 sekundy (12,5 fps).

Ten Wolf3D wygląda świetnie, ciekaw jestem jak to działa również na Blizzard 1230/50MHz.

W przypadku gier 3D według mnie procesor 68030/50MHz na Amidze AGA to powinno być minimum. Albo Amiga CD32 + Akiko.

Są wyjątki, jak np. Alien Breed 3D II w wersji 2MB, który jest troszkę okrojony, ale działa dobrze na gołej A1200.

Chodzi mi o to, że 030/50MHz lub Akiko gwarantują C2P w wysokim framerate.

Koszt konwersji pikseli to tylko ok. 4 instrukcje CPU na piksel 8bpp (256 kolorów) i ta procedura jest elastyczna, tzn. za pomocą tej samej procedury możemy konwertować więcej pikseli na raz w razie potrzeby.

@Juen

Zapewne autor portu jednak trochę to optymalizuje samodzielnie.

Ostatnia aktualizacja: 25.02.2022 13:55:14 przez Hexmage960
[#4390] Re: Zapowiedzi nowych gier

@mmarcin2741, post #4387

[#4391] Re: Zapowiedzi nowych gier

@selur, post #4390

A gdzie optymalizacja, pytam ja się.
[#4392] Re: Zapowiedzi nowych gier

@mmarcin2741, post #4391

KK napisze za pare lat :)
[#4393] Re: Zapowiedzi nowych gier

@Hexmage960, post #4389

Nie wygląda świetnie, bo na razie ma piksele 2x1 i może tak zostać. To Wolf dla słabszych konfiguracji, dla mocniejszych idealny jest AmiWolf NovaCodera, bo wierny oryginałowi.

Ostatnia aktualizacja: 25.02.2022 16:49:36 przez Jacques
[#4394] Re: Zapowiedzi nowych gier

@Jacques, post #4393

To Wolf dla słabszych konfiguracji, dla mocniejszych idealny jest AmiWolf NovaCodera, bo wierny oryginałowi.


No nie do końca wierny bo ma strafing i automapę. :) A co do "idealności" to właśnie go ogrywam i na 040 nie mogę wybrać pełnego ekranu bo siada płynność. Na dodatek wyskoczył mi bez ostrzeżenia do systemu po skończeniu całego pierwszego epizodu. I stany gry się mieszają. tzn zapisuje je sobie jak mu się tam chce. Stąd dla bezpieczeństwa muszę robić kopie i je przerzucać. Nie sprawdzałem jeszcze ukrytych poziomów.
[#4395] Re: Zapowiedzi nowych gier

@Hexmage960, post #4389

Koszt konwersji pikseli to tylko ok. 4 instrukcje CPU na piksel 8bpp (256 kolorów)

To nie jest "tylko". Dla A1200 + fast razem z odczytem i zapisem tych danych to daje tak dużą liczbę cykli że sama konwersja trwa kilka ramek, a gdzie tu jeszcze rysowanie czegokolwiek czy nawet wyczyszczenie ekranu. Dobre efekty na tak wolnych komputerach można uzyskać tylko gdy użyje się dodatkowo blittera a sam rendering obrazu jest na tyle specyficzny że da się go wpleść w konwersję.
[#4396] Re: Zapowiedzi nowych gier

@Hexmage960, post #4389

W przypadku gier 3D według mnie procesor 68030/50MHz na Amidze AGA to powinno być minimum. Albo Amiga CD32 + Akiko.


To zależy też od samej karty. Moja ACA1233 68030/50Mhz ma 12Mips i vs. mój blizzard 9Mips jest to duża różnica.

Koszt konwersji pikseli to tylko ok. 4 instrukcje CPU na piksel 8bpp (256 kolorów) i ta procedura jest elastyczna, tzn. za pomocą tej samej procedury możemy konwertować więcej pikseli na raz w razie potrzeby.

A ile "kosztuje" przesłanie tych danych do CHIP, gdy mówimy o 320x256?
4 instrukcje przy większej rozdzielczości i robi się ciasno.
[#4397] Re: Zapowiedzi nowych gier

@Kefir_Union, post #4395

To nie jest "tylko". Dla A1200 + fast razem z odczytem i zapisem tych danych to daje tak dużą liczbę cykli że sama konwersja trwa kilka ramek, a gdzie tu jeszcze rysowanie czegokolwiek czy nawet wyczyszczenie ekranu.

Od razu zaznaczam, że z 3D nie miałem styczności, tylko z przetwarzaniem obrazów.

Ja pisałem w kontekście A1200 z kartą Blizzard 030/50MHz, a nie A1200 z Fast RAM. Tej drugiej konfiguracji nie testowałem.

Zgadzam się, że na A1200 z 020/14MHz konwersja 81920 pikseli 1x1 w ośmiu bitplanach zajmuje kilka ramek. Dlatego napisałem, że "do gier 3D procesor 68030/50MHz to rozsądne minimum".

Procedura C2P ma kilka fajnych właściwości:

1. To co osiągamy poprzez kolejne instrukcje (1,25 instrukcji) konwersji na piksel to podwojenie efektywności zapisu grafiki z 1 bita do 2 bitów, 4 bitów itd., aż do 32 bitów. Koszt zatem jest stosunkowo niewielki.

2. Procedura konwertuje 128 bitów i możemy na słabych konfiguracjach obniżyć jakość do 2x1 w wybranych miejscach ekranu nie zmieniając procedury i uzyskać podwójną prędkość.

3. Podobnie możemy uzyskać podwójną prędkość ustalając podzbiór kolorów, np. 16 pul po 16 kolorów.

Elastyczność tej procedury mnie zadziwia.

Sam napisałem konwersję 128 bitów, czyli 32 pikseli w 4 bitplanach. Konwersja z wejściem w rejestrach d0-d3 i wyjściem w d0-d3 zajmuje 70 instrukcji po 2 cykle na 68020/030.

Dobre efekty na tak wolnych komputerach można uzyskać tylko gdy użyje się dodatkowo blittera a sam rendering obrazu jest na tyle specyficzny że da się go wpleść w konwersję.

Blitter jest fantastyczną jednostką, ale nie ma potrzeby za bardzo wykorzystywać go do konwersji. Może on z kolei nanosić, przesuwać i maskować grafikę bez udziału CPU.

Blitter jeden bitplan lub więcej o rozmiarze 320x256 obsłuży szybko. Warto zlecić mu większe operacje - wtedy pracuje efektywniej.

Na Amidze najlepiej robić logikę na CPU a grafikę na Blitterze, ale można wykorzystać CPU do grafiki - w sposób umiarkowany i oszczędny, tzn. np. obniżyć rozmiar danych dla słabszych procesorów (niekoniecznie zmniejszając okno gry - po prostu mniej pikseli do przetwarzania).

@Jacques

Przyznam, że nie zauważyłem, że ten Wolf3D ma piksele 2x1. Wygląda według mnie OK. Zaznaczam, że tych innych portów typu AmiWolf w akcji nie widziałem.

@Snifferman

To zależy też od samej karty. Moja ACA1233 68030/50Mhz ma 12Mips i vs. mój blizzard 9Mips jest to duża różnica.

To bardzo ciekawa informacja.

A ile "kosztuje" przesłanie tych danych do CHIP, gdy mówimy o 320x256?
4 instrukcje przy większej rozdzielczości i robi się ciasno.

Taki jest koszt konwersji dla procesorów z rodziny Motorola MC680x0. Tyle instrukcji tych procesorów jest potrzebne do konwersji. Jest różnica w przypadku procesorów MC68020, 030, 040 oraz 060.

Wbudowany procesor 020/14MHz z samym CHIP RAM konwertuje dosyć szybko, tzn. cały ekran w kilka ramek. Z Akiko przy tym samym procesorze jest lepiej i konwertuje w ok. ramkę.

Na A1200 bez Akiko, przy 030/50MHz możemy w zasadzie konwertować cały ekran bez większych opóźnień.

Uwaga: oczywiście powyższy koszt konwersji dotyczy paczek po 32 pikseli w 8 bitplanach. Na 020/14MHz też jesteśmy w stanie uzyskać szybką konwersję ekranu odpowiednio zmniejszając rozmiar danych wejściowych.

Zapis do CHIP RAM odbywa się 32-bitowo od jednego do ośmiu zapisów na 32 piksele. Zapis odbywa się co dwa cykle magistrali, więc warto rozdzielić operacje zapisu jedną instrukcją CPU.

Oczywiście musimy konwertować tylko to co potrzeba. Możemy przecież raz skonwertować jakieś dane a później wyświetlać Blitterem bez potrzeby ponownej konwersji.

Pamiętajmy też o tym, że dane raz przesłane do pamięci graficznej już nie trzeba przesyłać. Czasem wystarczy tylko przesunąć Blitterem.
[#4398] Re: Zapowiedzi nowych gier

@Hexmage960, post #4397

1. To co osiągamy poprzez kolejne instrukcje (1,25 instrukcji) konwersji na piksel to podwojenie efektywności zapisu grafiki z 1 bita do 2 bitów, 4 bitów itd., aż do 32 bitów. Koszt zatem jest stosunkowo niewielki.

Po prostu złożoność konwersji c2p wynosi log n, gdzie n to liczba kolorów.


Zapis odbywa się co dwa cykle magistrali, więc warto rozdzielić operacje zapisu jedną instrukcją CPU.

To trochę bardziej złożone. Zależy od liczby wolnych w tym czasie slotów DMA a te zależą od ilości wyświetlanych bitplanów, sprajtów, trybu pobierania danych (Fetch mode), częstotliwości odtwarzanych sampli i tego czy i w jakim trybie akurat pracuje blitter.

Blitter jest fantastyczną jednostką, ale nie ma potrzeby za bardzo wykorzystywać go do konwersji.

Na 020 oczywiście że jest. Ostatnie dwa przebiegi (mieszające po dwa bity i jeden) lepiej zrobić blitterem bo w tym czasie cpu może liczyć kolejną klatkę.
[#4399] Re: Zapowiedzi nowych gier

@Kefir_Union, post #4398

Po prostu złożoność konwersji c2p wynosi log n, gdzie n to liczba kolorów.

Zapewniam Cię, że tak nie jest. Konwersja c2p podwaja szybkość zapisu do pamięci graficznej w koszcie jednostkowym.

Słowo maszyny 32-bity nam o tyle "przeszkadza", że musimy obsłużyć aż 32 pikseli * 8 = 256 bitów w jednym przebiegu (w praktyce tyle się nie mieści w rejestrach, więc konwertujemy 128 bitów).

Gdyby efektywne słowo maszyny było węższe, np. 4 bity, zaś w każdym rejestrze mielibyśmy tak samo jak teraz, czyli po 1 bicie ułożonym, potrzebowalibyśmy obsłużyć 4 piksele * 8 = 32 bity, a konwersja trwałaby 2 operacje na piksel (zamiast ok. 5 w 32 bitach). Przypominam, że "operacja" to 1,25 instrukcji na piksel (10 instrukcji CPU na 8 pikseli, a w jednym przypadku jest to 5/8=0,625 instrukcji).

Już teraz możemy tak zrobić, ale najlepiej przesłać do pamięci nie po 4 bity, ale po 32 bity.

Już po 5 operacjach uzyskujemy efektywność 32-bitową zapisu. Koszt zrobienia efektywnego zapisu za pomocą c2p to logarytm z szerokości tego słowa.

To trochę bardziej złożone. Zależy od liczby wolnych w tym czasie slotów DMA a te zależą od ilości wyświetlanych bitplanów, sprajtów, trybu pobierania danych (Fetch mode), częstotliwości odtwarzanych sampli i tego czy i w jakim trybie akurat pracuje blitter.

Tak, zdaję sobie sprawę, że jest to bardziej złożone.

Na 020 oczywiście że jest. Ostatnie dwa przebiegi (mieszające po dwa bity i jeden) lepiej zrobić blitterem bo w tym czasie cpu może liczyć kolejną klatkę.

OK, można Blittera użyć do c2p, ale to marnowanie potencjału tej jednostki. Dużo lepiej jest przesłać dane z kanału A do kanału D na dużym obszarze opcjonalnie przesuwając dane. Wtedy dopiero zastępuje CPU w sposób efektywny.

Prócz tego C2P jest po to, by to procesor zmapował piksele. W innych przypadkach go nie potrzebujemy i wystarczy Blitter.

Ostatnia aktualizacja: 26.02.2022 04:45:05 przez Hexmage960
[#4400] Re: Zapowiedzi nowych gier

@zzielinski, post #4384

super jak na starych automat
[#4401] Re: Zapowiedzi nowych gier

@Hexmage960, post #4399

Ze starych testow, dobra c2p zajmuje tyle czasu procesora dla 68060 ( Cyberstorm i Blizzard) co kopiowanie danych z fastu do chipu, czyli w zasadzie tyle samo czasu co odgrywanie niespakowanej animacji na Amidze. Dla 68040 to jest troszke wiecej, ale tez prawie tyle samo co kopiowanie danych z fastu do chipu. Dopiero w przypadku 68030 jest widoczna roznica, ale to m.in dlatego, ze najszybsza wersja na 68030 robi c2p w 2 petlach, zeby zmiescic sie w cache procesora. Wersja z 1 petla jest wolniejsza, bo nie miesci sie w 256 bajtach cache.

link
[#4402] Re: Zapowiedzi nowych gier

@Don_Adan, post #4401

Ze starych testow, dobra c2p zajmuje tyle czasu procesora dla 68060 ( Cyberstorm i Blizzard) co kopiowanie danych z fastu do chipu, czyli w zasadzie tyle samo czasu co odgrywanie niespakowanej animacji na Amidze.

A wiesz z czego to wynika? Z tego że zapis do chip odbywa się z koszmarną prędkością 4Mhz, dodatkowo spowolniony oczekiwaniem na DMA. 68060 dzięki mechanizmowi write-back może przechować dane do zapisu tak długo aż uzyska dostęp do wolnego slotu DMA a w tym czasie wykonuje kolejne instrukcje.
Co z tego że 060 robi to w czasie porównywalnym do kopiowania skoro samo kopiowanie trwa 3/4 ramki dla 320x256. Właśnie dlatego w demach na 060 nie ma efektów one-frame bo takie muszą się wyrobić z rysowaniem w 1/4 ramki.
[#4403] Re: Zapowiedzi nowych gier

@Kefir_Union, post #4402

Tak, jest wolne, ale tego juz nie przeskoczysz. Za to mozna robic efekty na 25FPS, bo masz wtedy 5/4 ramki :)
[#4404] Re: Zapowiedzi nowych gier

@Don_Adan, post #4403

Port Spear of Destiny:
[#4405] Re: Zapowiedzi nowych gier

@zzielinski, post #4404

Ten port istnieje już co najmniej od 7 lat. W 2015 w to grałem i wymagał 68030. Jak rozumiem to jakaś optymalizacja.
[#4406] Re: Zapowiedzi nowych gier

@mailman, post #4405

Chyba tu chodzi o nastepny port BSzillego wiec raczej to jest cos nowego. Pewnie sa jakies roznice.
[#4407] Re: Zapowiedzi nowych gier

@Don_Adan, post #4406

widzę, że strasznie skacze przy obrocie, poza tym raczej szybko działa
[#4408] Re: Zapowiedzi nowych gier

@Don_Adan, post #4406

Nastepny port klasyka z arcade, Karate Champ. Chyba pierwsza gra na Amige na 2 dzojstiki (na raz).

link
1
[#4409] Re: Zapowiedzi nowych gier

@Don_Adan, post #4408

W filmie w to grali szeroki uśmiech

[#4410] Re: Zapowiedzi nowych gier

@Don_Adan, post #4408

To mogła być pierwsza gra w którą grałem w wozie Drzymały.
Mimo ówczesnej fascynacji i ogromnego sentymentu, obecnie wystarczy mi film z gry na youtube
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem