Tous les articles par Pando

Pando est un gentleman panda qui aime programmer sur son ordinateur, particulièrement des applications en rapport avec le monde de la modélisation 3D et de l'image de synthèse. Il aime aussi parler de ses coups de coeur littérature, musique et cinéma. Twitter Page perso

Mais que devient le panda ?

Exhausted panda
Exhausted panda

Les publications sur ce blog deviennent de plus en plus éparses (la dernière remonte à quatre mois !), mais j’ai des excuses.

J’ai d’abord récemment déménagé de la banlieue lyonnaise pour la campagne iséroise (dans la riante commune de Saint-Chef, notamment chère à l’écrivain Frédéric Dard), un évènement qui a en soi pris un temps important en termes de préparations et de mise en place.

C’est aussi que tout simplement, je travaille depuis un an au sein d’Arkane Studios, et que si cette collaboration se passe pour le moment plutôt bien, elle prélève tout naturellement son dû sur mon temps libre… Car l’entreprise étant à Lyon, je dois faire les trajets depuis chez moi tous les jours !

Enfin, le reste de mon temps libre est bien occupé lui aussi. Avec la Loutre et sa sœur, nous avons monté Agape Studios, un petit studio de développement de jeux vidéo à but non lucratif (pour le moment, en tout cas), et nous développons depuis un peu plus d’un an sur notre temps libre notre premier projet : Crossfire. Il s’agit d’un visual novel dans l’univers du manga l’Attaque des Titans (c’est complètement gratuit et je compte bien publier le code source du jeu quand il sera fini) sur lequel j’essaierai d’écrire ici ! C’est fait avec un moteur de visual novel conçu en Python, appelé Renpy. Je devrais également vous en parler très prochainement…

Et sur le plan des projets plus théoriques, il me reste toujours à découvrir le langage Rust de Mozilla, que j’avais prévu de découvrir en implémentant un petit logiciel de raytracer, lorsque mon PC a soudain été volé. Subitement, ce projet a grandement perdu en priorité, mais il traîne encore dans un coin de ma tête.

Dans l’absolu, je souhaiterais également m’attaquer à la création d’un petit moteur de jeu en 3D, oui, je sais, encore un petit moteur 3D amateur qui n’ira sans doute pas bien loin ! C’est pourquoi le nom est déjà tout trouvé: le YAGE (Yet Another Game Engine), enfin ça c’est si ce n’était pas déjà pris. Il faudra en trouver un autre…

Bref, ceci afin de mieux appréhender des concepts qui me sont nécessaires dans mon boulot à Arkane, et aussi car ce sera une manière assez ludique de faire quelques révisions en mathématiques 🙂 Sans parler des multiples aspects technologiques que j’ai tout simplement envie d’aborder comme ça, en face à face, directement, sans que quelqu’un ait déjà pré-mâché le travail pour moi à quelque niveau que ce soit. Qui dit moteur de jeu en 3D pense immédiatement au langage C++, c’est effectivement le langage vers lequel je me tournerai en premier, mais fondamentalement, j’aimerais à terme essayer de voir de quoi est capable le Rust dans ce domaine. C’est à voir. 🙂

À bientôt !

Petit précis du Git pratique

Git est un très bon logiciel de gestion de versions décentralisé qu’on ne présente plus (et pour ceux qui ne connaissent pas, il est toujours temps d’aller découvrir l’abondante documentation du projet), d’ailleurs créé par Linus Torvalds (qu’on ne présente plus non plus) et qui a depuis fait ses preuves pour gérer des projets d’une taille conséquente (comme, on pourrait le deviner, le kernel Linux).

Mais git est avant tout un outil très riche, et il n’est pas évident de maîtriser toutes ses spécificités – encore faut-il savoir qu’elles existent ! Les commandes Git, reposant en soi sur les mêmes principes que la plupart des VCS (ou logiciels de gestion de versions) et a fortiori des DCVS (VCS décentralisés), proposent beaucoup d’options utiles qui peuvent simplifier la vie des utilisateurs et de ceux qui utilisent un dépôt Git avec vous.

Voici donc un petit hall of fame des options que je suis bien content de connaître dans Git.

Continuer la lecture de Petit précis du Git pratique

Panda en vacances…

Un petit mot pour expliquer qu’il n’y a pas eu d’article depuis un long moment, pour cause de travail intensif, et qu’il n’y en aura probablement que très peu d’ici la rentrée (voire après), pour cause de déménagements et autres travaux.

Mais ne vous en faites pas : quelques articles sont en cours d’écriture. Certains récents, d’autres qui sont de vieux amas de notes à mettre au propre. Il y aura également le traditionnel billet d’anniversaire du blog dans quelques semaines.

Le Scylardor n’est donc pas mort. Juste en veille estivale.

sleepy_gentleman_panda

Quassel: No DockManager available

quasselIl m’est arrivé un drôle de tour ce matin…

J’utilise Quassel IRC, un client IRC connecté à un serveur distant, ce qui permet notamment d’apparaître connecté et de lire ce qui s’est dit lorsque vous n’êtes pas là.

Le problème du jour n’est pas là : sur ma bonne vieille Ubuntu utilisant sa bonne vieille interface Unity, aujourd’hui, Quassel refuse de démarrer. Enfer et damnation.

Ou plus exactement : il se lance, mais sans fenêtre ! Il apparaît bien dans la liste des processus lancés, mais nulle part sur l’interface graphique, impossible d’interagir avec.

Lorsqu’on lance le programme (quasselclient) en console, une unique ligne cryptique apparaît : « No DockManager available » . Après quelques recherches, j’apprends que c’est un bug connu, mais réputé résolu et datant d’un autre âge… Mais alors quand on y est quand même confronté, que faire ?

Mon salut est tout simplement venu d’un « wipe out » : dans mon cas (Ubuntu), je suis allé dans le dossier de config de Quassel (~/.config/quassel-irc.org), et j’ai effacé tous les fichiers de config de Quassel comme un gros bourrin (rm *) !

Et là, pif paf pouf, après ça mon Quassel a remarché. Comme par magie. Bon évidemment je n’avais rien de très important dans ce dossier, mais n’oubliez pas de faire une sauvegarde ailleurs si vous essayez.

À bon entendeur…

Lumière sur… «rinôçérôse»

La rubrique «Lumière sur…» constitue une série d’articles un peu particulière, pour parler d’un auteur que j’aime bien, en général pas très connu, avec un peu d’histoire sur son passé, son présent, son futur.

Aujourd’hui, j’aimerais parler d’un groupe bien de chez nous (Montpellier pour être exact), le nom ne vous dit probablement rien et pourtant vous les avez sûrement déjà entendus (vous allez comprendre), leur style a pas mal changé au cours des années, mais j’apprécie toujours autant ce qu’ils font. Ils sont la terreur des gens avec un clavier sans caractères spéciaux…

C’est rinôçérôse !
jppatrice

Continuer la lecture de Lumière sur… «rinôçérôse»

Les fichiers temporaires, ces red shirts de la programmation

enlist-red-shirt2Dans la série télévisée Star Trek, les agents de sécurité sont reconnaissables à leur gilet rouges, c’est pour cela qu’on les appelle couramment les red shirts. Le souci avec ces personnages, c’est qu’ils ont une fâcheuse tendance à mourir dès leurs premières minutes à l’écran (pour une raison différente à chaque épisode), ainsi, les personnages principaux (récurrents) se rendent compte du danger imminent sans subir eux-mêmes de dommages (pratique, scénaristiquement, non ?). Il s’agit souvent de leur unique rôle dans l’épisode, et on ne connaît parfois même pas leur nom.

De manière assez inattendue, on peut trouver des similitudes entre un redshirt de Star Trek et un fichier temporaire en programmation : on en a besoin dans un contexte particulier, son nom ne nous intéresse parfois même pas, et il se doit d’être détruit à la fin, lorsqu’on en a plus besoin.

Cette fois, je vas parler des fichiers temporaires, d’une astuce et de quelques fonctions pour les gérer facilement en C. Notez bien: on est en environnement Linux. Il n’est pas garanti que ça marche (voire même c’est sûr, certaines choses ne marcheront pas) sur Windows ou ailleurs.

Continuer la lecture de Les fichiers temporaires, ces red shirts de la programmation

Python – lancer un programme local avec sh

Voici un petit truc pour gérer une situation à laquelle j’ai été confronté récemment.

Il existe en Python un petit module fort sympathique : sh. Comme son nom l’indique, il permet de gérer des commandes shell, leurs paramètres et leur sortie de façon vachement intuitive. Autant dire que Perl vient de perdre un de ses derniers avantages par rapport à Python 😛

Mais alors où est le problème ? Le problème, c’est que les commandes systèmes marchent bien, mais comment gérer les commandes locales, « ./a.out » par exemple (lancer le binaire a.out dans le dossier courant) ? C’est en fait plutôt facile !

 

python Continuer la lecture de Python – lancer un programme local avec sh

« Un panda en hiver » (au Québec)

Il n’y a pas eu d’articles depuis un moment ici.

La faute à une session d’Hiver à l’université Laval particulièrement intense. Beaucoup de cours, de travail, j’ai profité de la fin des examens et de la semaine de relâche pour écrire ici. Après d’interminables hésitations autant sur le fond que sur la forme, je décide finalement de sauter le pas en écrivant tout ce qui me vient à l’esprit concernant l’hiver au Québec dans un long « article fleuve ».

L’hiver au Québec comporte son lot de périls : entre températures atteignant fréquemment le -20°C (voire un peu moins en cas de tempête ou de fort vent),  les « trous » quand il neige ou a beaucoup neigé (on marche tranquille normal et… d’un coup, on se retrouve avec de la neige au genou), le verglas assassin pendant le redoux… Il convient de bien se préparer.

Continuer la lecture de « Un panda en hiver » (au Québec)