le but de cette article est d’expliquer comment gérer plusieurs set de visuel de contrôles pour l’aide dans le thème GameOS du Pegasus de pixL.
On parle donc de ce qui va nous servir dans le thème généralement en bas à droite de l’écran :
Les sets de « controller »
Aujourd’hui il y a 2 sets supportés, le « Gamepad » et le « Arcade »… Le « Gamepad » était celui par défaut déjà présent dans gamesOS\assets\images\controller
Les fichiers PNG sont nommés par défaut ainsi : {index}.png
mais avec l’arrivé de ceux pour « Arcade », on a du rajouter le style: {index}-{style}.png (Attention: pour le style historique, il est sans le -{style})
A ce jour Pegasus et donc le thème sait géré 12 touches différentes pour l’aide.
Voici les 12 touches pour le style « Gamepad »
La configuration des 12 ‘touches’ dans Pegasus
On en profite pour faire un rappel : ces 12 touches sont configurables dans le menu de Pegasus. En fait dans ce frontend, on peut choisir complétement les touches de navigation en fonction du contrôleur que l’on possède et aussi de ce qui nous arrange en terme d’expérience utilisateur (habitude, accessibilité, etc…). Pour info, on peut aussi affecter des touches de clavier supplémentaire en cas de besoin.
Il faudra aller pour cela dans le menu « Interface/Change menu controls »
Attention, la configuration dans Pegasus et le thème est indépendant de la configuration des contrôleurs dans les jeux. Pour les jeux, c’est configurable pour cette partie dans le menu « Controllers/Gamepad Layout«
La configuration du ‘style’ dans le thème
Aujourd’hui, les 2 styles possibles pour les visiuels des contrôles sont sélectionnable dans le menu du thème:
- « Gamepad » (style original de gameOS)
- « Arcade »(nouveau style pour avoir le style arcade comme pour moi qui possède un panel 😉
Il suffit d’aller dans la configuration du thème pour changer de set de logos, dans la partie « Settings/General/System Logo Style«
Pour rajouter un nouveau set
Il faudra respecter un format pour les images utilisées:
- image carrée de 46 x 46 pixels (merci de redimensionner si besoin)
- le motif est initialement en blanc sur fond transparent pour les set existants mais un style en couleur peut être proposé 😉
- format PNG (mais il est bien de garder le SVG de conception dans le repo and le même répertoire mais il ne sera pas mis dans le thème à terme… normalement 😉
Donc Il a été prévu de pouvoir gérer plus de 2 visuel de contrôleurs par la suite
Il suffira d’aller modifier le fichier QML du thème: Gameos/Settings/SettingsScreen.qml
Et changer cette liste :
ListElement {
settingName: "Help buttons style"
setting: "Gamepad,Arcade"
}
Comme ceci par exemple, si on veux rajouter le style « Psx » :
ListElement {
settingName: "Help buttons style"
setting: "Gamepad,Arcade,Psx"
}
Ensuite le nouveau set de .png devra être formé ainsi :{index}-{style).png
Exemple: 0-psx.png, 1-psx.png, 2-psx.png, …
et donc stocker dans le bon répertoiredes assets: gameOS\assets\images\controller
Attention à l’indexation, on devra suivre la même position des touches que celui initial dy style « Gamepad » que l’on trouve dans le répertoire nommé ainsi: 0.png, 1.png, 2.p,g,…
Pour tester
Le thème existant est inclu dans pegasus.
Donc le mieux et de cloner à partir du repo et mettre le thème dans le répertoire /recalbox/share/themes de votre box
Ici est le zip de la branche en cours qui peut gérer cela (au 25/10/2021):
https://github.com/bozothegeek/gameOS/archive/refs/heads/helpbar-buttons-improvements.zip
Remarque: Après dézippage, vous pouvez renommer par exemple gameOS-helpbar-buttons-improvements en gameOS, ou garder ainsi, pegasus pourra le trouver dans tout les cas quand il sera dans le répertoire de thème et après un redémarrage.
Avant de redémarrer la box pour détecter le thème ajouté, il est conseillé de modifier le nom du thème qui va s’afficher dans les menus pour pouvoir le sélectionner par la suite:
Il faut modifier le fichier /recalbox/share/themes/gameOS/theme.cfg ainsi :
Enjoy !!!