Donner des yeux à ses bots

Octobre 6th, 2006

Présentation

Je vais vous présenter une méthode simple que je viens de mettre en oeuvre pour donner un semblant de vision à une entité dans un espace 3D.

Elle est très simple car elle ne s'occupe pas de l'atmosphère ni de la dégradation de la vue sur une longue distance. Cependant, il n'est pas si difficile de prendre en compte ces deux détails, peut être dans un prochain billet...

La technique que je vais présenter ici peut être adaptée à la plupart des visions. Je m'explique.

  • La vision pour une caméra, par exemple, va être fixe : elle va pointer dans une direction, va pouvoir repérer un mouvement plus ou moins loin selon sa qualité ;
  • Pour un humain ou apparenté, les yeux vont reprendre les mêmes propriétés que la caméra, mais vont avoir tendance à balayer un champ de vision (imaginez un garde qui doit surveiller une zone et qui scanne cette zone) ;
  • Enfin, une tourelle positionnée sur un tank va quant-à elle aussi reprendre le principe de l'humain, mais va effectuer une rotation totale et permanente.

On pourrait aussi imaginer d'autres visions, comme une vision omnidirectionelle.

Lire la suite »

12 c'est mieux !

Août 29th, 2006

Ça y est, je me suis fait plaisir ! Il faut dire qu'à force de rêver sur les sonorités acoustiques du Zep, il fallait bien que je craque un jour ;-)

Donc, voici ma petite nouvelle : une Yamaha FG413S-12 !

Yamaha FG413S-12

Un grand merci à la personne qui me l'a offert en grande partie, elle se reconnaîtra :-)

Au programme : 12 cordes, un son magnifique, une touche très agréable et une lutherie vraiment correcte.
Cela fait quelques jours que je joue dessus, il n'y a pas à dire, c'est vraiment formatteur (aïe les doigts!) et surtout vraiment agréable à l'oreille. J'essaye d'ailleurs désespérement de jouer le classique "Over the Hills and Far Away" mais il y a encore du boulot.
Forcément, c'est beaucoup plus difficile de jouer (spécialement les hammers) à cause de la tension des cordes et de la précision dont il faut faire preuve pour pincer les deux cordes à la fois. M'enfin... ça va venir !

Pour finir et contraster, mauvaise nouvelle : le meilleur magasin de musique [à mes yeux] de Lille va bientôt fermer... :'(
Merci à Pascal & Mike pour la chaleureuse ambiance qui y régnait, c'était vraiment un magasin (café?) atypique !

Pour les curieux, je mettrai peut-être un échantillon du son de cette gratte en ligne...

Et un premier test pour pytrivfs

Juillet 24th, 2006

Vu ma lenteur légendaire, j'ai tout de même décidé de sortir une première version des bindings python pour TrivFS.

Cette version est une réécriture complète de la première qui partait un peu dans tous les sens ;-).

Il y a donc le support de la lecture qui fonctionne assez bien et je me suis amusé à écrire deux petits translators pour la démo.

Le premier est un translator qui affiche le source d'une page web et le second est une réécriture partielle du translator "ms1" de syn ( http://cvs.sceen.net/index.cgi/ms1/ ). Ce dernier va chercher un mot aléatoire dans un dictionnaire et l'affiche.

En écrivant ce post, je viens d'avoir une idée sympatique pour un translator lecture-seule : télécharger un flux rss et en extraitre les informations. Si on veut des news, hop un cat et c'est parti ! Si j'ai un peu de temps, je m'amuserai surement à l'écrire (sauf si quelqu'un veut le faire pour tester les bindings !).

Pour en revenir à pytrivfs, la release a pour but de le tester dans tous les sens de manière à partir sur une base stable pour la gestion des erreurs et le support de l'écriture.

À ce propos, j'espère pouvoir démarrer ceci rapidement.

En attendant, la release est disponible sur la page du projet ( http://www.patapouf.org/projects/python-trivfs ) et il y a un dépôt Arch pour les curieux.

Vous trouverez dans la tarboule un fichier README qui, je pense, est assez explicite. Il donne des informations sur comment lancer un translator et comment programmer avec les bindings.

Bons tests !

Pytrivfs

Juin 12th, 2006

Il y a un an presque tout pile maintenant, j’ai commencé l’écriture de bindings python pour la libtrivfs.

La libtrivfs est une bibliothèque spécifique au Hurd.
Elle permet l’écriture de translators[1] ou “traducteurs” simples. Ces translators ne peuvent être formés que d’un seul noeud. Cependant, cela laisse tout de même de nombreuses possibilités.

Le but de ce projet était d’apprendre les bases de fonctionnement des translators, ce qui, je pense est réussi au moins en partie. Pour ceci, j’ai suivi le Hurd Hacking Guide[2] (qui dispose d’ailleurs maintenant d’une traduction française sur le wiki[3]) et les précieuses explications que meuhmeuh[4] a pu me fournir.

Pour en revenir à pytrivfs, je travaille actuellement sur une réécriture. En effet, le premier jet que j’avais codé l’an passé était plutôt moche et moyennement stable. La première version avait des problèmes lors d’accès concurrents et souffrait de défauts majeurs.

Cette seconde version est réellement plus propre, plus simple à utiliser et supporte bien mieux la charge. J’ai d’ailleurs hésité à travailler dessus pour le Google SOC, mais je me suis retiré car je pense que je n’aurai pas le temps de faire tout bien dans les délais nécessaires (et ouiiii, je sais xaïki, je suis une loose ;-) ).

Donc oui, cette nouvelle version fonctionne déjà en partie, en lecture-seule pour être exact et ça semble être pas mal. J’ai aussi commencé la rédaction d’une mini doc[5] sur le wiki de l’asso qui explique comment l’utiliser et donne un exemple d’un fetcher http en quelques lignes.

Pour cet été, je compte donc au moins finir le support en lecture-seule (quasi terminé) et programmer l’écriture. Si je réussi à avancer correctement, j’essaierai peut-être de me motiver pour faire des bindings pour netfs. Dans tous les cas, j’ai l’intention de sortir une version (même minimale) le plus tôt possible.

Je vais m’y atteler dès que possible, c’est-à-dire dans deux semaines, une fois mes partiels terminés… ce qui devrait me laisser un petit moment pour penser à tout ça :-).
Pendant ce temps, si vous avez des remarques/critiques sur le design de la chose, n’hésitez pas à m’en faire part, ça ne pourra que l’améliorer !

==== Références ====

Des GNU-Crêpes !

Juin 5th, 2005

Ce soir je n’avais rien à faire (bon ok, c’est *complètement* faux) et on m’a évoqué l’idée de crêpes… bien entendu pas pu résister :-)

GNU-Crêpe!

100% réalisé avec des produits naturels et bien entendu sous GPL ! (Mais dépéchez vous, on a faim !)

Pour ceux que ça intéresse, la recette des GNU-crêpes est simple :

Munissez vous de :

  • 250 g de farine
  • 6 oeufs
  • 40 g de beurre demi-sel
  • 1/2 litre de lait
  • 40 g de sucre
  • 10 g de sucre vanillé

Ensuite, pour la préparation :

  • Versez la farine dans un saladier
  • Creusez un petit cratère au milieu
  • Déposez les 6 oeufs, battez le tout
  • Ajoutez les sucres
  • Versez le lait et le beurre fondu, mélangez bien le tout
  • Laissez reposer 1-2h si possible : c’est prêt :-)

C’est encore meilleur quand on les fait soit-même, promis !