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 !

dimanche 18 août 2019

Kerbal - Un minibus efficace

Le fer de lance de mes opérations spatiales, c'est ce petit vaisseau qui ne paie pas de mine: cockpit, 6 passagers, réservoirs et moteurs nucléaires installés sobrement sur les côtés, un port d'amarrage au dessus et un port d'amarrage au dessous, correctement éclairés histoire de faciliter l'amarrage dans la nuit, lorsque le soleil est de l'autre côté de la planète.

Amarrés à ma station spatiale autour de Kerbin (voir la capture d'écran), ils me permettent de remplir les missions de sauvetage autour de Kerbin, Mun et Minmus, de remplir les missions touristiques autour de ces mêmes astres, et finalement de transporter mes Kerbal d'une station à une autre. Grace à ses 3500m/s de delta-V, je peux aller à peu près n'importe où dans le système de Kerbin, et également rejoindre l'orbite de plusieurs autres planètes, à condition d'y avoir du ravitaillement pour revenir !

Ci-dessous, vous pouvez voir ma dernière mission de sauvetage autour de Mun. Je suis parti de mon spatioport en orbite basse de Kerbin, récupéré le Kerbal en orbite basse de Mun, rendez-vous avec une station spatiale sur Mun pour rajouter un peu de carburant, et retour en orbite basse de Kerbin et rendez-vous avec le spatioport. De là, j'ai un véhicule différent dont la seule mission est de décoller du centre spatial pour y rejoindre le spatioport avec personnel et carburant, et pour y retomber en toute sécurité avec les Kerbal suffisamment chanceux pour retourner se reposer sur Kerbin. La capture montre le moment où je m'éloigne de la station lunaire, une mocheté pourtant sacrément utile car elle me permet de raffiner le minerai que je récolte sur Mun.

dimanche 23 juin 2019

Configuration du FMS 737-Zibo

Une mini-vidéo pour montrer le setup de base du FMS du 737 Zibo de X-Plane, entre London Heathrow et Toulouse Blagnac. L'on voit bien à la fin de la vidéo que le top of descent a été correctement calculé.

mardi 18 juin 2019

Fembots and fast vehicules

C'est à partir de concepts plus virils que d'habitude que je me lance dans mon prochain projet d'animation avec Blender. Au menu, voici une tentative de modélisation de visage avec lequel j'essaie de créer une androïde.

J'ai également modélisé un petit véhicule rapide pour se déplacer dans le désert, nom de code "fennec".

Puisque l'on parle de désert, le défi principal sera d'en modéliser un qui ressemble à quelque chose. J'ai commencé à créer plusieurs modèles de cactus pour peupler un peu tout ça.