lundi 20 janvier 2020

Plaque low-cost pour Warthog Hotas

Le souci, lorsque l'on a autant de boutons sur ses manettes, c'est de ne plus savoir ce qu'ils contrôlent. Alors afin de s'en souvenir (et aussi de faire joli !), de grands cinglés créent leurs propres plaques à poser par dessus leur manette des gaz, et cela donne des choses vraiment jolies. Pour des jeux plus grand public, comme Elite Dangerous, c'est carrément un business !

Ces plaques là, très pro, sont faites avec des plaques acryliques ou encore métalliques. Mais est-ce qu'on peut faire quelque chose à bas coût avec du matériel un peu plus standard ? C'est ce que j'essaie de découvrir.

Mon plan : imprimer sur papier simple ou légèrement cartonné, à partir des patrons de Arrowdynamixx fournis sur le forum X-Plane, mes propres plaques adaptées à chacun de mes avions favoris. Les laminer ensuite à froid, et basta, on devrait avoir quelque chose de raisonnablement solide et joli sans avoir besoin d'outillage spécialisé.

Ma première étape fut d'imprimer un patron représentant juste les contours, puis de le découper pour vérifier que la taille est correcte, et enfin choisir les fonctions de chaque bouton pour les rajouter au crayon à papier. Voici donc mon patron pour le Cirrus SF-50, le petit mono-réacteur fourni de base sur X-Plane.

Malheureusement, le papier trop fin laisse passer l'affichage luminescent. Il faudra donc soit utiliser un papier plus épais (à voir comment mon imprimante va le prendre), ou trouver comment éteindre les LED de la manette sous Linux (apparemment, il y a une astuce).

Prochaine étape, faire la plaque au propre avec Inkscape, puis faire l'impression et le laminage. Si cela fonctionne comme attendu, il ne me restera plus alors qu'à créer les plaques pour mes autres avions favoris : A320, A350, Diamond DA62, peut-être le Boeing 737, et peut-être bien également le Mirage 2000 de DCS World.

samedi 4 janvier 2020

Warthog HOTAS

C'est l'événement de ce début d'année, le Père Noël ayant été généreux, je suis maintenant l'heureux possesseur d'un Warthog HOTAS (pour "hands on throttle and stick", c'est à dire un joystick et une manette des gaz) et d'un palonnier TFRP. Et ça change la vie, aussi bien dans X-Plane que dans DCS World (et aussi dans Kerbal Space Program, mais on y reviendra).

Le HOTAS est de toute beauté, bien lourd, avec tout plein de boutons partout pour tout configurer comme on a envie. La manette des gaz vient avec deux poignées pour les gaz, un axe supplémentaire bien pratique pour les volets, et tout un tas de boutons que j'ai configuré dans X-Plane pour les trains d'atterrissage, le frein de parc, l'ouverture de la verrière (fun !), ou encore l'inversion de poussée des réacteurs et l'armement des aérofreins.

Le joystick, lui, monté sur une énorme plaque de métal, ne bougera pas. Muni d'un nombre impressionnant de boutons et de chapeaux, réplique du véritable A-10 oblige, on le sent bien dans la main et c'est un plaisir de faire les atterrissages manuels de gros porteurs.

Le palonnier, lui, est nettement moins impressionnant (mais nettement moins cher aussi). J'ai longuement hésité entre cet entrée de gamme et d'autres beaucoup plus sérieux, comme le MFG Crosswind, ou encore le Slaw Device, mais mon choix se confirme comme étant le bon: à moins de faire de l'hélico, là où la précision des pédales est fondamentale, ou beaucoup de GA (general aviation, c'est à dire pas de l'avion de ligne), c'est vraiment overkill. Pour gérer quelques virages avant et après la phase en pilote automatique, et pour le roulage, c'est amplement suffisant, surtout si l'on contrôle la roulette de nez avec la molette située sur la manette des gaz (qui manque cependant de précision, probablement le seul point noir de la manette).

Reste qu'il faut passer du temps à configurer tout ça. En particulier, il est à noter que les boutons métalliques à deux ou trois états ont généralement un état de moins: c'est à dire que l'enclencher correspond à une pression de bouton, et le dés-enclencher correspond au relâchement du bouton. Ce qui veut dire que si vous mettez, par exemple, la montée du train d'atterrissage sur la position haute, vous n'avez par défaut pas de position basse dans l'interface X-plane, par exemple, pour y configurer la descente du train d'atterrissage.

La solution officielle est d'utiliser le logiciel de configuration fourni par Thrustmaster, qui ne fonctionne que sous Windows. Heureusement pour nous autres Linuxiens, X-Plane comme DCS World proposent des fichiers de configuration supplémentaires pour créer des boutons virtuels correspondant aux positions relâchées de tous les boutons (voir les explications ici). Dans X-Plane version 1.41, le fichier pour Linux (HOTAS Warthog Throttle - Linux.joy) est incomplet, et il faut le compléter avec le fichier pour Windows (Joystick - HOTAS Warthog - Windows.joy). J'ai donc gardé l'en tête du premier, puis le corps du deuxième, et tout marche impeccable (à part un échange des axes gaz et volets, mais c'est bénin).

J'ai maintenant hâte de continuer à configurer mon HOTAS aux petits oignons pour X-Plane, et de commencer sérieusement à l'utiliser avec DCS World. Quant à Kerbal Space Program, les problèmes de contrôleurs sous Linux semblant avoir été résolus, ce sera l'occasion de tester en profondeur.

vendredi 3 janvier 2020

Bonne année !

Je vous souhaite à toutes et à tous une excellente année 2020, pleine de bonnes choses !

Petite année pour le blog, avec un minimum historique de 17 messages. J'étais bien parti, et puis la fin de l'année ayant apporté pas mal de changements, j'ai complètement oublié de venir vous causer. Je n'ai plus qu'à prendre une nouvelle fois la résolution d'être un peu plus loquace. Restez branché !

lundi 23 septembre 2019

Et on rebondit !

Voilà les principaux éléments mis en place: l'on a la balle, et la surface sur laquelle elle rebondit. Je lui ai donné un moment (c'est à dire une vitesse de rotation, pas une petite pause, hein...), histoire de rendre son mouvement plus intéressant.

J'ai modélisé la balle et la surface marbrée dans Blender, puis exporté au format GLTF. Ensuite, j'ai intégré les modèles au sein d'une architecture entité-composant-système où chaque entité (la balle et la surface) a un composant physique, utilisant le moteur physique Bullet, et un composant graphique, qui référence le modèle GLTF et l'affiche via mes primitives de rendu OpenGL.

L'on notera les bugs graphiques sur la balle. Je ne sais pas encore s'ils sont dus à mon modèle, à l'export, ou à mon lecteur de GLTF, il faudra que je creuse la question.

samedi 7 septembre 2019

Oeuf de canard - Petit exemple d'utilisation de la bibliothèque physique Bullet

Cela faisait longtemps que je n'avais pas pondu d'oeuf de canard. En voici un, qui n'est autre qu'une version simplifiée de l'exemple de base d'une balle rebondissant sur une boite.

Par rapport à l'original, je ne me suis tout d'abord pas embêté à construire les objets sur le tas. Bullet suit une règle simple: tout ce que l'on créé, on doit aussi le détruire. Il prend donc un peu partout des pointeurs à poil, et il ne faut surtout pas s'attendre à ce qu'il prenne la responsabilité d'en nettoyer la mémoire. Donc, pour faire plus simple, j'ai tout mis sur la pile, et passé les addresses là ou il fallait des pointeurs. Fuite mémoire impossible !

J'ai également apporté quelques changements supplémentaires, histoire de rendre la simulation un poil plus intéressante. Tout d'abord, j'ai défini une restitution, qui est grosso modo à quel point la surface rebondit. Et j'ai également donné une petite vitesse latérale.

En sortie, le vecteur position de la balle, que l'on peut tracer à l'aide du bon vieux Libre Office Calc.

Et voilà notre balle qui rebondit !

Prochaine étape : brancher Bullet dans mon moteur graphique, histoire de voir un peu ce que l'on fait. Mais ça, ce sera certainement un poil gros pour un oeuf de canard...

jeudi 29 août 2019

Steam, Proton, Linux, et DCS World

J'ai fini par découvrir qu'à côté de la simulation de vol civil, il y avait aussi un sacré poids lourd de la simulation de vol militaire, nommé DCS World. Construit autour d'un cœur gratuit, le principe est d'acheter des modules payants (plutôt chers au demeurant) proposant des avions, des lieux ou encore des missions, et d'aller larguer bombes et missiles seul ou à plusieurs. Bien que fournissant niveaux de difficulté ajustables et aides en tous genres, l'accent est mis sur le réalisme et l'immersion (au point que certains youtubers fournissent plusieurs heures de tutoriels vidéo rien que pour faire démarrer un Mirage 2000...).

Rudement intéressant, moi qui justement trouvait que X-Plane manquait un poil de chasseurs (le Rafale est incroyable pour un gratuit, mais n'a tout de même rien à voir avec le M-2000 ou l'A10 de DCS World), c'est l'occasion de voler dans des zincs un peu différents. Seulement... DCS World n'est disponible que sous Windows...

Alors, il y a de cela pas si longtemps, Valve a officiellement lancé le projet Proton, qui, si j'ai bien compris, vise à compléter et optimiser Wine, en particulier les appels DirectX à émuler vers de l'OpenGL ou du Vulkan, tout cela dans le but de pouvoir faire tourner ses jeux Windows directement sous Linux.

Certains jeux supportent officiellement Proton, tandis que d'autres sont justes répertoriés comme fonctionnant plus ou moins bien. Et justement, ProtonDB dit que DCS World fonctionne très bien, pour peu qu'on bidouille un petit peu avec protontricks, qui installe les dépendances qui pourraient manquer.

Et en effet, ça marche du tonnerre. En plein écran (1920x1080), avec les détails au max, eh beh ça tourne à 45 images par seconde, et X-Plane ne peut pas en dire autant.

Yay, DCS.exe dans mon Ubuntu !

Les contrôles fonctionnent impecc, tout du moins avec une manette de jeu. Maintenant, il faudrait essayer avec joystick, manette des gaz et palonnier, ainsi qu'avec un casque VR, mais c'est peut-être pousser les choses un peu loin avec son conjoint.

mardi 20 août 2019

Un autre petit vol dans les Alpes

Vol aux instruments dans les Alpes à bord du Diamond DA-62 d'Aerobask. Après avoir fait l'exégèse de la documentation de l'aéroport d'Annecy, j'ai tenté l'approche VOR/NDB (sauf que les avions modernes n'ont plus de NDB...), avec un atterrissage tout en douceur.

C'est surtout les paysages, mix de photos satellites et du plugin X-Europe2, qui rendent la ballade bien agréable. Tant qu'il fait beau !