Expérimentation et abandon d'une bibliothèque d'interface utilisateur de terminal

2025-09-04
Expérimentation et abandon d'une bibliothèque d'interface utilisateur de terminal

Lors du développement du jeu Kartoffels, l'auteur a tenté de créer une bibliothèque d'interface utilisateur de terminal hautes performances, Kruci, pour remplacer la bibliothèque Ratatui existante. Kruci utilise une conception d'interface utilisateur déclarative et tente d'améliorer les performances en évitant les calculs de différenciation pixel par pixel. Cependant, Kruci a rencontré de nombreux défis dans la gestion des événements, la gestion de l'état et le Z-stacking. Finalement, l'auteur a décidé d'abandonner le projet, concluant qu'optimiser Ratatui ou se concentrer sur le développement du jeu serait plus efficace.

Lire plus
(pwy.io)

Apprivoiser les événements récurrents iCalendar avec des fonctions de distance

2025-04-17
Apprivoiser les événements récurrents iCalendar avec des fonctions de distance

L'auteur a rencontré un défi en gérant les événements récurrents lors de l'implémentation d'une bibliothèque pour traiter les fichiers iCalendar. iCalendar utilise des règles complexes pour définir les événements récurrents, et les implémentations traditionnelles impliquent généralement d'écrire beaucoup de logique spécifique pour différentes fréquences et paramètres. L'auteur a adopté une approche différente, considérant les règles de récurrence comme des requêtes SQL et empruntant des idées des fonctions de distance signées (SDF) en infographie, représentant les occurrences d'événements à l'aide de fonctions de distance. Cette méthode décompose les règles complexes en fonctions de distance simples, calculant itérativement les heures d'occurrence des événements pour éviter de nombreux jugements conditionnels, ce qui donne un code plus propre et plus facile à maintenir. Bien que l'implémentation initiale n'était pas très efficace, l'auteur l'a optimisée pour gérer les règles de récurrence complexes en millisecondes.

Lire plus
(pwy.io)

Sortie de Kartoffels v0.7 : refonte de la génération de grottes et passage à RISC-V

2025-02-17
Sortie de Kartoffels v0.7 : refonte de la génération de grottes et passage à RISC-V

Kartoffels est un jeu où vous programmez le micrologiciel d’une pomme de terre virtuelle. La version 0.7, qui comprend 122 commits, introduit des améliorations significatives. La génération de grottes utilise désormais des automates cellulaires et du bruit blanc pour des résultats plus réalistes, résolvant les problèmes précédents liés aux grottes trop isolées. L’architecture du processeur du moteur de jeu est passée de RISC-V 64 bits à 32 bits pour une meilleure gestion de la mémoire. Une nouvelle fonctionnalité suit l’historique de chaque robot, ouvrant la voie aux classements. Des améliorations de l’interface utilisateur et des ajustements de la mécanique du jeu sont également inclus. Veuillez noter que cette mise à jour a réinitialisé le serveur, effaçant tous les programmes de robots téléchargés.

Lire plus
(pwy.io)