Jak się robi konwersję z palety 24bit do indeksowanej 8bit w grach czy demach na Falcona aby to działało wydajnie w c/c++?
Bo mam sobie taki przypadek, blok 250x70 pikseli (czyli jakieś 18 tysięcy pikseli) i po przeliczeniu mega prostego efektu na tym bloku (które trwa jakieś kilka milisekund pod Hatari 68040@32MHz) dopasowanie składowych R, G, B do palety 8bit za pomocą SDL'owej funkcji SDL_MapRGB dla tych 18 tysięcy pikseli trwa około 3,5 sekundy!
Pod CT63 podkręconym na 95MHz jest oczywiście zauważalnie szybiej, ale i tak jest to dalekie od jakiejkolwiek sensownej prędkości.
Wymyśliłem, że sam sobie stworzę taką funkcję konwertującą, ale wyszło jeszcze z pół sekundy dłużej, a do tego ostateczne odwzorowanie koloru/indeksu palety jaki został wybrany jest zdecydowanie gorsze.
Jak się w takim razie ogarnia jakieś efekty na większej ilości pikseli, tak aby to działało znośnie? No chyba, że efekty robi się jakoś bezpośrednio na docelowej palecie aby uniknąć konwersji, ale to była by chyba jakaś masakra.
Fujisan 1.1.4 Fujisan 1.1.4 przynosi wsparcie dla napędów H1-H4 przez TCP API oraz poprawki błędów dla Linuxa.
Steem SSE 4.2.0 R9 Popularny emulator Atari ST doczekał się aktualizacji poprawiającej błędy w obsłudze dysku twardego.
Rusza głosowanie w FujiCup! Wybierz najlepszą grę roku na 8-bitowe Atari i weź udział w corocznym plebiscycie FujiCup.
Atari800MacX 6.2.0 Popularny emulator Atari dla macOS doczekał się dużej aktualizacji z obsługą nowych kartridży.
Gearlynx 1.1.3 Nowa wersja emulatora konsoli Atari Lynx wprowadza binaria dla Linux ARM64 i ulepszony debugger