RetroArch est l'interface de référence pour l'API libretro. Des exemples populaires d'implémentations de cette API incluent des émulateurs de systèmes de jeux vidéo et des moteurs de jeux ainsi que des programmes 3D plus généralisés. Ces programmes sont instanciés sous forme de bibliothèques dynamiques. Nous les appelons « cœurs libretro ».
libretro est une API qui expose des rappels génériques audio/vidéo/entrée. Une interface pour libretro (comme RetroArch) gère la sortie vidéo, la sortie audio, l'entrée et le cycle de vie des applications. Un noyau libretro écrit en C ou C++ portable peut fonctionner de manière transparente sur de nombreuses plates-formes avec très peu ou pas d'effort de portage.
Bien que RetroArch soit l'interface de référence pour libretro, plusieurs autres projets ont utilisé l'interface libretro pour inclure la prise en charge des émulateurs et/ou des moteurs de jeu. libretro est entièrement ouvert et gratuit pour tous.
en-tête de l'API libretro
Les derniers binaires sont actuellement hébergés sur le buildbot.
Pour toucher les développeurs, créez un problème ici sur GitHub, créez un fil de discussion sur le forum, discutez sur Discord ou visitez notre canal IRC : #retroarch @ irc.freenode.org. Vous pouvez créer une publication dans Reddit avec le flair du support technique .
Consultez notre centre de documentation. Sous Unix, des pages de manuel sont fournies. Des informations plus centrées sur les développeurs peuvent être trouvées ici.
RetroArch tente d'être petit et léger tout en conservant toutes les fonctionnalités de base utiles attendues d'un émulateur. Il est conçu pour être très portable et dispose d’une interface utilisateur centrée sur la manette de jeu et à écran tactile. Il dispose également d’une interface de ligne de commande complète.
Dans certains domaines, RetroArch va au-delà et met l'accent sur des fonctionnalités techniques peu courantes telles que la prise en charge des shaders multi-passes, le rembobinage en temps réel (style Braid), l'enregistrement vidéo (à l'aide de FFmpeg), la suppression de la latence d'entrée anticipée, etc. .
RetroArch met également l'accent sur la facilité d'intégration dans diverses interfaces de lancement.
RetroArch a été porté sur les plateformes suivantes :
Il n’existe pas de véritables dépendances dures en soi.
Sous Windows, RetroArch peut fonctionner avec uniquement Win32 comme dépendance.
Sous Linux, il n'y a pas de véritables dépendances. Pour une utilisation optimale, les dépendances suivantes sont recommandées :
Le port OSX de RetroArch nécessite les dernières versions de Xcode pour être construit.
RetroArch peut utiliser ces bibliothèques s'il est activé :
RetroArch a besoin d'au moins une de ces bibliothèques de pilotes audio :
Pour fonctionner correctement, RetroArch nécessite une implémentation libretro présente ; cependant, comme il est généralement chargé dynamiquement, il n’est pas requis au moment de la construction.
Les ports de console ont leurs propres dépendances, mais ne nécessitent généralement rien d'autre que ce que fournissent les SDK respectifs.
Votre carte vidéo doit au moins prendre en charge la spécification OpenGL 1.1.
Shaders : N/A
Prise en charge du pilote de menu : MaterialUI, XMB, Ozone et RGUI devraient tous fonctionner correctement. XMB n'aura pas d'effets de pipeline de shaders en raison du manque susmentionné de prise en charge des shaders.
Votre carte vidéo doit au moins prendre en charge la spécification OpenGL 2.1.
Shaders : vous pouvez choisir entre les shaders NVIDIA Cg (obsolètes, nécessite l'installation d'un runtime distinct sur votre système) ou les shaders GLSL.
Prise en charge du pilote de menu : MaterialUI, XMB, Ozone et RGUI devraient tous fonctionner correctement.
Votre carte vidéo doit au moins prendre en charge la spécification des fonctionnalités principales d'OpenGL 3.2.
Shaders : Vous pourrez utiliser des shaders Slang modernes avec ce pilote.
Prise en charge du pilote de menu : MaterialUI, XMB, Ozone et RGUI devraient tous fonctionner correctement.
Votre carte vidéo doit au moins prendre en charge la spécification Direct3D11 11.0. La carte doit également prendre en charge au moins le Shader Model 4.0.
Shaders : Vous pourrez utiliser des shaders Slang modernes avec ce pilote.
Prise en charge du pilote de menu : MaterialUI, XMB, Ozone et RGUI devraient tous fonctionner correctement.
Votre carte vidéo doit au moins prendre en charge la spécification Vulkan 1.0.
Shaders : Vous pourrez utiliser des shaders Slang modernes avec ce pilote.
Prise en charge du pilote de menu : MaterialUI, XMB, Ozone et RGUI devraient tous fonctionner correctement.
La configuration par défaut est définie dans config.def.h
. Il n'est pas recommandé de modifier cela à moins que vous sachiez ce que vous faites. Ceux-ci peuvent ensuite être modifiés à l'aide d'un fichier de configuration. Un exemple de fichier de configuration est installé dans /etc/retroarch.cfg
. Il s'agit du fichier de configuration à l'échelle du système.
RetroArch créera au démarrage un fichier de configuration dans $XDG_CONFIG_HOME/retroarch/retroarch.cfg
s'il n'existe pas. Les utilisateurs doivent uniquement configurer une certaine option si la valeur souhaitée s'écarte de la valeur définie dans config.def.h.
Pour configurer les joypads, utilisez le menu intégré ou configurez-les manuellement dans retroarch.cfg
.
Les instructions pour compiler et installer RetroArch peuvent être trouvées dans le centre de documentation Libretro/RetroArch.
CRT SwitchRes s'allumera à la volée. Cependant, vous devrez redémarrer RetroArch pour le désactiver. Avec l'activation de CRT SwitchRes, RetroArch démarrera en 2560 x 480 à 60.
Si vous utilisez Windows, avant d'activer les options CRT SwitchRes, assurez-vous d'avoir installé CRTEmudriver et installé certaines modeslines. Les modèles minimum pour que tous les jeux changent correctement sont :
Installez ces modèles en remplaçant 2560 par la super résolution souhaitée. Les résolutions ci-dessus sont NTSC uniquement, donc si vous souhaitez lire du contenu PAL, veuillez ajouter des modèles PAL :
Certains jeux nécessiteront des résolutions PAL plus élevées qui devront également être installées :
Idéalement, installez tous ces modèles et tout fonctionnera très bien.
La super résolution par défaut est de 2560. Elle est affichée juste sous l'option du commutateur CRT, qui se trouve dans les paramètres vidéo. Cela peut être modifié dans retroarch.cfg. Les seules résolutions compatibles sont 1920, 2560 et 3840. Toutes les autres résolutions seront ignorées et la commutation native sera activée.
Si les résolutions natives sont activées, vous aurez besoin d'un tout nouvel ensemble de modèles :
256 x 240 @ 50.006977 SNESpal
256 x 448 @ 50.006977 SNESpal
512 x 224 @ 50.006977 SNESpal
512 x 240 @ 50.006977 SNESpal
512 x 448 @ 50.006977 SNESpal
256 x 240 @ 60.098812 SNESntsc
256 x 448 @ 60.098812 SNESntsc
512 x 240 @ 60.098812 SNESntsc
512 x 224 @ 60.098812 SNESntsc
512 x 448 @ 60.098812 SNESntsc
256 x 192 @ 59.922745 MDntsc
256 x 224 @ 59.922745 MDntsc
320 x 224 @ 59.922745 MDntsc
320 x 240 @ 59.922745 MDntsc
320 x 448 @ 59.922745 MDntsc
320 x 480 @ 59.922745 MDntsc
256 x 192 @ 49.701458 MDpal
256 x 224 @ 49.701458 MDpal
320 x 224 @ 49.701458 MDpal
320 x 240 @ 49.701458 MDpal
320 x 288 @ 49.701458 MDpal
320 x 448 @ 49.701458 MDpal
320 x 480 @ 49.701458 MDpal
320 x 576 @ 49.701458 MDpal
256 x 288 @ 49.701458 MSYSpal
256 x 240 @ 60.098812 NESntsc
256 x 240 @ 50.006977 NESpal
640 x 237 @ 60.130001 N64ntsc
640 x 240 à 60,130001 N64ntsc
640 x 480 à 60.130001 N64ntsc
640 x 288 à 50 000 000 N64pal
640 x 480 à 50 000 000 N64pal
640 x 576 à 50 000 000 N64pal
256 x 252 @ 49.759998PSXpal
320 x 252 @ 49.759998PSXpal
384 x 252 @ 49.759998 PSXpal
640 x 252 @ 49.759998PSXpal
640 x 540 @ 49.759998 PSXpal
384 x 240 @ 59.941002 PSXntsc
256 x 480 @ 59.941002 PSXntsc
352 x 240 à 59,820000 Saturne/SGFX_NTSCp
704 x 240 à 59,820000 SaturnNTSCp
352 x 480 à 59,820000 SaturnNTSCi
704 x 480 à 59,820000 SaturnNTSCi
352 x 288 @ 49.701458 SaturnPALp
704 x 288 @ 49.701458 SaturnPALp
352 x 576 @ 49.701458 SaturnPALi
704 x 576 @ 49.701458 SaturnPALi
240 x 160 à 59,730000 Go
320 x 200 à 60 000 000 Destin
// Arcades
Ces modèles sont plus précis et donnent le Hz exact. Cependant, certains jeux peuvent avoir des résultats indésirables. Cela est dû aux changements de résolution à mi-scan sur le matériel d'origine. Pour de meilleurs résultats, les super résolutions sont la solution.
Certaines résolutions d'arcade peuvent être très différentes de celles des CRT grand public. Il existe une détection de résolution pour garantir que les jeux MAME seront affichés dans la résolution disponible la plus proche mais dessinés à leur résolution native dans cette résolution. Cela signifie que le jeu MAME ressemblera au matériel d’origine.
Les ROM MAME qui s'exécutent dans un aspect vertical comme DoDonPachi doivent être pivotées dans MAME avant que le changement de résolution et la correction d'aspect ne fonctionnent. Faites-le avant d'activer CRT SwitchRes afin que RetroArch s'exécute dans la résolution de votre bureau. Une fois que vous avez effectué la rotation des jeux qui pourraient en avoir besoin, activez CRT SwitchRes.
Les liens ci-dessous appartiennent à nos chaînes officielles. D’autres liens peuvent avoir été créés par des fans, des membres indépendants ou des abonnés. Nous vous recommandons sérieusement d’utiliser nos ressources originales.