Opublikowano wersję projektu RetroArch 1.15, rozwijającego nakładkę do emulacji różnych konsol gier, umożliwiającego uruchamianie klasycznych gier za pomocą prostego, zjednoczonego interfejsu graficznego. Obsługiwane są emulatory takich konsol, jak Atari 2600/7800/Jaguar/Lynx, Game Boy, Mega Drive, NES, Nintendo 64/DS, PCEngine, PSP, Sega 32X/CD, SuperNES itd. Można korzystać z joypadów od już istniejących konsol, w tym Playstation 3, Dualshock 3, 8bitdo, XBox 1 i XBox360, jak również ogólnych joypadów, takich jak Logitech F710. Emulator obsługuje takie rozszerzone funkcje jak gry wieloosobowe, zapisywanie stanu, poprawa jakości obrazu starych gier za pomocą shaderów, przewijanie gry wstecz, szybkie podłączanie kontrolerów i transmisję wideo.
Wśród zmian:
- Zdecydowanie poprawiono działanie na platformie macOS, na przykład dodano wsparcie dla protokołu MFi dla joypadów; zapewniono równoczesne wsparcie w jednej wersji graficznych API OpenGL i Metal; dodano sterownik dla API Vulkan, obsługujący HDR; dodano sterownik glcore do wyjścia wideo z użyciem OpenGL 3.2. Wersja RetroArch dla macOS jest umieszczona w Steam.
- W systemie shaderów wprowadzono możliwość kaskadowego dodawania i nakładania presetów shaderów (można mieszać różne presety shaderów i zapisywać je jako nowe presety). Na przykład, w celu stworzenia efektów wizualnych, można łączyć shadery CRT i VHS.
- Proponowana jest alternatywna metoda obliczania renderowanych klatek — „preemptive frames”, która różni się od wcześniej dostępnej metody „runahead”, osiągając wyższą wydajność dzięki nadpisywaniu historii przed bieżącą klatką jedynie w przypadku zmiany stanu kontrolera. W teście uruchomienia gry Donkey Kong Country 2 w emulatorze Snes9x 2010, przy zastosowaniu nowej metody, wydajność wzrosła z 1963 do 2400 klatek na sekundę.
- W wersjach dla platformy Android dodano ustawienie input_android_physical_keyboard oraz element menu do wymuszania użycia urządzenia jako klawiatury, a nie joypada.
- Poprawiono wsparcie dla protokołu Wayland, dodano wsparcie dla rozszerzeń protokołu pointer-constraints i relative-pointer.
- Przeprojektowano menu.
- Poprawiono wsparcie dla interfejsu API Vulkan.
Źródło: opennet.ru
