ES-DE/ROADMAP.md
2023-03-11 16:54:52 +01:00

4.2 KiB

EmulationStation Desktop Edition (ES-DE) - Release roadmap

This roadmap is under constant review so expect it to change from time to time.

A more detailed breakdown can be found on the Kanban board, and for previous releases the Changelog contains all relevant details.

v1.0

  • New gamelist sorting and media handling logic
  • Overhaul of the menu system
  • Scraping of additional image types as well as videos
  • OpenGL shader support for blurred backgrounds, scanline rendering etc.
  • Navigation sound support
  • A comprehensive theme set bundled with the application
  • Ports for Windows, macOS and BSD Unix
  • Preconfigured systems configuration files for all supported operating systems
  • A detailed user guide

v1.1

  • Mix image generation based on screenshots, 3D boxes and marquee files (as in Skyscraper)
  • Ability to display game media in full screen from the gamelist view
  • Proper game launching screen
  • New FFmpeg-based video player
  • Better method to find installed emulators and cores
  • Move to the SDL2 GameController API
  • Different button graphics and names applied depending on controller type (Xbox, PlayStation or SNES style)

v1.2

  • Support for pre-defined alternative emulators and cores (configured in es_systems.xml)
  • Badges highlighting things like favorite games, completed games etc. (will require theme support)
  • Virtual (on-screen) keyboard
  • Support for the Raspberry Pi 4 (Raspberry Pi OS)
  • Improve fullscreen support and make game launching more seamless, remove the temporary fullscreen hacks
  • Add GLM library dependency for matrix and vector operations, decommission the built-in functions
  • AppImage and AUR releases on Linux

v2.0 (in progress)

  • New theme engine with generalized views (only System and Gamelist) and theme variants support
  • Multiple new components (carousel support for the Gamelist view, grid component etc.)
  • Support for Tate mode, i.e. vertical screen orientation for arcade cabinets and similar
  • Lottie animation (vector graphics) and GIF animation support
  • OpenGL ES 3.0 renderer for use on the Raspberry Pi
  • Replace the OpenGL fixed function pipeline renderer with a shader-based renderer
  • Replace NanoSVG with a more capable SVG rendering library
  • Improve text and font functions, e.g. dynamic texture allocation and faster and cleaner text wrapping
  • Improve GLSL shader post-processing performance

v2.1

  • Theme downloader
  • Theme engine composite element support for enabling advanced and finely controlled layouts
  • Theme engine element animation support (storyboards)
  • New texture/cache manager with improved memory management and performance
  • Better and more accurate RAM and VRAM usage statistics
  • Scraping of game manuals and maps plus a viewer for these (with PDF and raster image support)
  • Support for additional scraper services
  • Checksum support for the scraper for exact searches and for determining when to overwrite files
  • RetroAchievements.org integration

v2.2

  • Removal of legacy theme support
  • Background music
  • Proper audio mixer
  • Controller button mappings from inside ES-DE (similar to pad2key in Batocera)
  • Reorganize the menus, possibly adding basic/advanced modes
  • Reduced amount of gamelist reloading to retain cached textures and improve overall performance
  • Add "time played" counter per game, similar to how it works in Steam
  • Replace the built-in Unicode functions and lookup tables with those of the ICU library
  • Add text kerning support using the HarfBuzz library

v2.3

  • Vulkan renderer for all supported operating systems
  • Use of MoltenVK to get Metal support on macOS
  • Localization/multi-language support
  • Bulk metadata editor
  • Scrollbar component for the gamelist view which can be used by themes
  • Simple file browsing component
  • Web proxy support for the scraper
  • Improve multi-threading

v2.4

  • Mouse/touch screen support
  • Animated menu elements like switches and tick boxes
  • Migration tools for importing game metadata and media from other frontend applications
  • Audit tools to clean up orphaned gamelist entries, media files etc.
  • Auto-import tools for Steam, Lutris etc.
  • Replace the abandoned FreeImage library