Ratty, l'émulateur de terminal qui affiche de la 3D directement dans la ligne de commande
Orhun Parmaksız, l'un des principaux mainteneurs de Ratatui (une bibliothèque Rust très utilisée pour créer des interfaces texte dans le terminal), vient de sortir un projet qui sort vraiment des clous.
Ça s'appelle Ratty, c'est donc un émulateur de terminal capable d'afficher des objets 3D, des sprites animés et des modèles complets en plein milieu de votre ligne de commande.
Sur le papier, ça paraît absurde. Un terminal sert à taper des commandes et lire du texte. Sauf que Parmaksız s'est demandé pourquoi on devait s'arrêter là, et sa réponse est qu'on n'y est pas obligés.
Le truc tourne donc sur Rust avec Ratatui pour la couche d'affichage texte, parley_ratatui pour le rendu de la typographie, et Bevy (un moteur de jeu open source qu'on retrouve dans pas mal de petits jeux indé) pour la partie graphique.
Un terminal classique génère son texte caractère par caractère, là chaque image devient une texture envoyée sur le GPU (la puce graphique de votre machine, celle qui gère normalement les jeux et les vidéos). Bevy place ensuite cette texture dans une scène 3D où vous avez des caméras, des éclairages, des animations.
Pour faire passer des objets 3D dans le flux, Parmaksız a inventé son propre protocole, le Ratty Graphics Protocol, qui permet à n'importe quelle commande de balancer un cube tournoyant ou un modèle de chat à côté d'un texte d'aide.
Le curseur lui-même est un rat 3D qui tourne sur lui-même, d'où le nom du projet. Inspiration officielle : TempleOS, l'OS développé en solo pendant des années par Terry Davis, célèbre pour permettre d'afficher des sprites 3D dans son shell. Une référence improbable, mais assumée.
Le code est open source sur github.com/orhun/ratty , et un widget Ratatui nommé ratatui-rgp permet d'intégrer la 3D dans vos propres apps terminal. La version 0.2.0 vient de sortir. C'est encore largement expérimental, mais le rendu sur les démos est franchement sympa.
Source : The Register














