ZeMarmot, principal contributeur de GIMP 2.10.0-RC1

Nous avons sorti GIMP 2.10.0-RC1 il y a déjà presque 3 semaines (et sommes même sur le point de sortir une RC2)! Mais c’est seulement maintenant que nous faisons notre petit compte-rendu habituel de contributeurs, en français (celui en anglais a été fait la semaine dernière, ce qui était déjà tard). Notre excuse étant bien entendu le fait que le développement de GIMP et la production de ZeMarmot nous prend le plus gros de notre temps; j’espère que vous considérerez cette excuse aussi valide que nous. 😉

Quoiqu’il en soit, ceci fut notre première Release Candidate de GIMP 2.10.0, c’est donc un énorme évènement (une Release Candidate, c’est une version presque finale, un peu entre une version de développement et une version stable)! Eh oui, 6 ans déjà que vous l’attendez, et l’attente touche à sa fin…

Quelle fut la partication de ZeMarmot?

C’est d’autant plus une sortie excitante pour nous que pour la première fois, je fus le contributeur majeur, avec 270 commits sur les 784 faits entre 2.9.8 et 2.10.0-RC1. C’est donc plus du tiers des modifications et corrections de bugs sur les 4 derniers mois! D’autres participants du projet ZeMarmot ont eux-même quelques commits, notamment Aryeom, notre réalisatrice, qui a contribué 2 icônes manquantes (pour se changer les idées entre ses séances d’animation de marmottes, image par image), ainsi que Lionel (un des membres du CA de l’association LILA qui gère le projet) qui a travaillé sur l’amélioration de la prise en charge de l’unité de mesure “pouce”.

On le voit, à chaque sortie, ZeMarmot est un acteur de plus en plus majeur du développement de GIMP. Il n’y a pas à dire, nous en sommes fier. Normalement après chaque sortie, je liste en détail mes contributions, mais il y en a tellement que j’ai décidé de désormais limiter aux quelques contributions plus marquantes:

  • Amélioration du debuggage avec une boîte de dialogue récupérant des données et traces d’exécution. J’en ai déjà parlé (en anglais seulement).
  • Sauvegarde automatiques d’images juste avant un crash! Oui vous ne rêvez pas! Alors je sais… GIMP est très stable. On a donc eu quelques remarques à ce sujet nous disant que de toutes façons, GIMP ne plante jamais (et on est fier de lire ce type de remarques car on a beaucoup travaillé pour en arriver à cette stabilité qui n’était absolument pas un acquis quand j’ai commencé à contribuer, il y a quelques années; c’est même l’une des raisons pour laquelle j’ai fait mes premiers patchs). Mais cela reste du logiciel, et dans le logiciel, tout est possible! Je développe celui-ci, et suis pourtant le premier à vous l’affirmer: non, GIMP n’est pas parfait! Il est très stable, mais les plantages peuvent arriver. Pire! C’est sûr, un jour, il vous plantera à la figure, si vous l’utilisez beaucoup! Et ce sera le jour où vous vous y attendrez le moins (loi de Murphy). La différence, c’est que maintenant GIMP sera prêt!
    Bon soyons précis, ce n’est pas non plus du “sauvetage” à 100%. Par nature, un crash est un état d’instabilité extrême d’un processus. On peut essayer de préserver des données, mais même cela peut échouer. Par contre souvent cela réussira. Et c’est seulement ce jour qui importera: celui où vos heures de travail auront été sauvées par ce petit bout de code. 😀
  • La pipette à couleur prend maintenant en compte la gestion des couleurs de votre moniteur sur macOS.
  • J’ai implémenté la capture d’écran avec l’API générique Freedesktop.  Sur les plateformes GNU/Linux, à terme, c’est censé remplacer les APIs spécifiques des environnements de bureaux. Néanmoins les implémentations GNOME/KDE gardent tout de même la priorité à ce jour jusqu’à ce que les implémentations Freedesktop soient plus complètes (et ainsi éviter des pertes de fonctionnalités).
  • J’ai ajouté de nouvelles configuration des préférences pour l’export de métadonnées, et fait en sorte que tous nos plug-ins d’export respectent ces préférences (notamment en rajoutant de nouvelles APIs pour les développeurs de plug-ins: gimp_export_exif()gimp_export_xmp() et gimp_export_iptc()). C’est un sujet sensible car les métadonnées de fichiers peuvent contenir des données sensibles (votre nom souvent déjà, souvent le nom de votre entreprise voire votre adresse email, parfois même des coordonnées GPS que les appareils modernes ajoutent automatiquement, etc.) et clairement certaines personnes peuvent préférer ne pas avoir à gérer et filtrer manuellement ces données et simplement demander à ne pas les exporter par défaut.
  • Diverses nouvelles APIs pour les développeurs de plug-in:
    • gimp_get_pdb_status() retourne le statut du dernier appel PDB. Cela permet à un plug-in qui dépend d’autres plug-ins d’en savoir plus sur les raisons de retour. Par exemple si une procédure est stoppée intéractivement, cela ne doit pas être considéré comme une erreur, mais plutôt comme une interruption manuelle.
    • gimp_stack_trace_available(), gimp_stack_trace_print() et gimp_stack_trace_query() pour aider au débuggage de plug-ins.
    • gimp_context_get_distance_metric() et gimp_context_set_distance_metric() pour le choix de métrique de distance utilisé par gimp_edit_blend() (et à usage futur).
  • Amélioration de l’API gimp_edit_blend() qui se base maintenant sur l’opération “gegl:distance-transform“, ce qui rend la procédure bien plus rapide.
  • Amélioration du traitement d’image splash avec du redimensionnement pour apparaître avec une taille raisonnable sur toute dimension d’écran.
  • Des vulnérabilités furent reportés fin 2017, donc j’ai corrigé CVE-2017-17784, CVE-2017-17786, CVE-2017-17787 et CVE-2017-17789.

Au milieu de tout cela, j’ai aussi déjà annoncé le nouveau paquet mypaint-brushes.
Enfin il y a toutes ces autres mini-fonctionnalités mais surtout les nombreux bugs corrigés. En fait je ne crois pas que j’aurais pu corriger aussi facilement autant de bugs sans notre nouveau système de débug. Donc j’en suis particulièrement content. Je sais que certains ne considèrent pas cela si important (ce n’est pas une vraie fonctionnalité, pour du dessin ou de l’édition d’image ou autre). Je le sais, puisque j’ai lu sur un forum une remarque se plaignant que la news sur gimp.org mette surtout en avance des fonctionnalités de debug, comme si cela ne les valait pas. Pourtant c’est une des contributions dont je suis le plus fier. Je l’ai expérimentée ces derniers mois, et très clairement, cela nous a aidé énormément à débugguer plein de problème sans même avoir eu à demander aux gens de faire des actions ésotériques (telles que “pourriez-vous lancer GIMP dans un débuggueur?” – “Un quoi?”).
En outre je ne le rappellerai jamais assez, mais pour moi la stabilité et fiabilité d’un logiciel est l’une des bases qualitatives. Cette fonctionnalité va clairement dans ce sens.

Quoiqu’il en soit, je l’avais déjà dit: la correction de bug et stabilité sont mes buts personnels pour la 2.10. Comme vous le voyez, ce n’étaient pas des paroles en l’air. 🙂

Tutorer un étudiant pour coder dans GIMP

Parmi les autres nouvelles sympas, un étudiant, Darshan Kadu, nous a approché comme stagiaire FSF. Je lui ai proposé de continuer le portage de notre prise en charge du format JPEG2000  (passant d’une implémentation basée sur Jasper vers OpenJPEG, puisque la première bibliothèque est déprécié). J’agis donc comme tuteur. Ce n’est pas ma première fois à travailler avec des étudiants universitaires. J’ai déjà donné quelques cours dans une université parisienne l’an dernier, et franchement j’aime beaucoup ces échanges (que ce soit avec un seul stagiaire ou une classe entière).

Cela a relancé les discussions sur GSoC et si on souhaitait à nouveau tenter d’y participer (pour mémoire, le projet GIMP y a participé plusieurs années mais a ensuite arrêté; en fait il me semble que le dernier GSoC du projet fut l’année où j’ai commencé à faire mes premiers patchs sur GIMP, je n’ai donc jamais eu l’opportunité d’y participer en tant que tuteur). Quelques personnes proposaient d’avoir des stagiaires pour travailler sur toute sorte de fonctionnalités majeures dans le cœur de GIMP. Je voudrais commenter ce souhait.
Personnellement cela m’intéresse de participer car j’aime accompagner des étudiants dans le monde du développement professionnel. Si au passage, on peut avoir quelques patchs cools, c’est génial. Mais je pense qu’un tel évènement ne doit pas être utilisé juste pour avoir du “bon code pas cher”. Déjà car j’ai toujours détesté l’exploitation de stagiaires mal payés (bon en l’occurrence, avec GSoC, ils ont clairement une paie raisonnable). Ensuite simplement pour une raison qualitative: je pense que tout projet qui se repose principalement sur ce type de contribution ne peut obtenir que du code peu maintenable et de piètre qualité.

C’est simple: quelque soit votre métier, imaginez vous quand vous étiez étudiant. Maintenant demandez vous ce qu’il se passerait si on lâchait le “vous étudiant” à votre poste actuel (auquel vous êtes arrivé après des années à apprendre le métier, à faire des projets, avec des succès et des erreurs…). Pensez-vous vraiment que vous auriez révolutionné votre métier? J’espère que vous répondrez non, sinon c’est un peu triste que vous considériez ne pas avoir évolué posivitement depuis votre vie étudiante! ;p

Donc oui, GSoC comme tout stage, est une opportunité sympa pour travailler avec des jeunes esprits vifs et avec des idées neuves. Mais cela ne doit pas être pris comme une sorte de solution magique pour obtenir du code pas cher, rapide et bon. J’ai l’impression que beaucoup de gens voient cela ainsi malheureusement.
Bon on verra l’an prochain si on décide finalement d’y revenir (cette année encore, on ne s’est pas inscrit), mais je souhaitais donner un peu mon avis à ce sujet puisqu’il est dans l’air.

Release Candidate? Sortie de 2.10 bientôt?

Clairement nous travaillons dur ces derniers temps. Nous sommes même passé sous les 10 bugs bloquants il y a quelques jours (mais cela oscille beaucoup, et à l’heure d’écriture, on est de retour à 10 bugs)!

Nous avons tout de même dû discuter un peu s’il fallait vraiment nommer cette sortie une RC. En effet de manière stricte, ce ne devrait pas être un “candidat pour une sortie (stable)”. Cependant nous sommes un peu fatigué de trainer des pieds (depuis 6 ans!). GIMP 2.10 ne sera pas parfaite. Aucune sortie de logiciel ne sera jamais parfaite. C’est un fait! Mais GIMP 2.10 sera déjà vraiment méga cool, même s’il devait sortir dans l’état actuel. C’est pourquoi on s’est dit qu’on devait un peu pousser dans le bon sens. Faire une “Release Candidate” est donc une sortie psychologiquement forte pour se dire “maintenant faut qu’on pousse vers la sortie”. Et c’est donc exactement ce que l’on fait. 🙂
Attendez vous donc à voir la 2.10 très bientôt, sauf si vraiment on découvre un problème très grave que nous n’aurions pas repéré jusque là (on touche du bois!).

Amusez vous bien avec GIMP 2.10 RC1, tout le monde! Et surtout, testez, testez, testez! Et envoyez des rapports de bugs si vous trouvez quelque chose qui ne va pas! 😀

 

Rappel: vous pouvez financer mon travail sur du
Logiciel Libre sur Liberapay, Patreon ou Tipeee
à travers le projet ZeMarmot.

Nouvelle image pour nouvelle année

New year 2018

Bonne année à tous!

Aryeom a commencé le premier jour de l’année par un dessin en live de bienvenue à la nouvelle année, qui est dorénavant l’image d’en-tête du présent site.  Il était temps d’ailleurs, notre précédent en-tête était un peu à tendances estivales. 🙂

New year 2018Cette image est aussi au format 16:9 donc vous pouvez l’utiliser en fond d’écran si vous le souhaitez et si le format correspond. Cliquez simplement la miniature à droite pour la télécharger pleine taille.
Elle est sous licence Creative Commons BY 4.0 par Aryeom Han, réalisatrice de ZeMarmot.

En outre la session de dessin numérique fut diffusée live (comme beaucoup de sessions de GIMPage d’Aryeom dorénavant, tel qu’expliqué dans la section “Live Streaming du travail sur ZeMarmot” de notre compte-rendu 2017). Si vous avez manqué le live, vous pouvez vous rattrapper en regardant l’enregistrement. Comme d’habitude, nous rappelons que ce ne fut pas édité après coup, ni accéléré, ni rien; nous n’avons pas non plus rajouté de musique pour rendre la vidéo “cool” ou quoi que ce soit du genre. 😛
Il s’agissait d’un vrai live, avec Aryeom concentrée sur son dessin, ce qui explique qu’il s’agisse d’une vidéo de presque une heure avec des endroits où il ne se passe d’ailleurs rien. Faites avance rapide si vous voulez juste voir la progression en quelques minutes. 😉
Bon visionnage!

Ce live et ce dessin sont rendus possibles grâce à nos nombreux donateurs!

Rappel: les créations (Art Libre) d'Aryeom peuvent
être soutenues financièrement sur Liberapay, Tipeee
ou Patreon (projet ZeMarmot).

ZeMarmot, GIMP 2.9.8 et compte-rendu de fin 2017…

Et voilà, GIMP 2.9.8 est sorti il y a quelques jours, dernière version de développement de GIMP! Comme il est de  coutume, nous détaillons ci-dessous notre implication dans cette version, notamment pour que nos donateurs sur les plateformes de financement participatif savent ce qu’ils financent.

Comme en plus, l’année 2017 vient de terminer, je complèterai aussi ce post avec notre rapport de fin d’année, comme nous avions déjà fait fin 2016.

Qu’avons-nous fait dans GIMP 2.9.8?

Pendant ces derniers mois, j’ai décidé de me concentrer surtout sur de la correction de bug. J’ai terminé quelques fonctionnalités ici ou là, mais me suis en fait beaucoup retenu de coder trop de nouvelles choses. Pourquoi donc? Parce que je pense que nous avons assez de nouveautés et qu’on est à un point où on doit simplement sortir GIMP 2.10 au plus vite. Bien sûr, GIMP 2.10 pourrait être 2 fois mieux en repoussant de quelques mois, et 10 fois mieux en repoussant encore plus. Mais au final, quel intérêt si personne ne le voit?! Je prévois donc de me focaliser essentiellement sur les bugs et finalisations de fonctionnalités commencées jusqu’à la sortie de 2.10.

J’ai aussi passé beaucoup de temps à la gestion des rapports de bugs (plus d’une  centaine de participation à des rapports de bug entre 2.9.6 et 2.9.8, i.e. en 3 mois et demi).  J’ai notamment entamé la réorganisation de notre cible 2.10 en sélectionnant les bugs “bloquant” pour GIMP 2.10. À ce jour, il nous reste donc 29 bloqueurs à considérer en priorité pour GIMP 2.10.

De même, j’ai redoublé d’effort pour que nous puissons enfin avoir une sortie flatpak officielle de GIMP sur flathub, ce qui est le cas depuis le 16 octobre! Ce paquet est bien sûr disponible dans la section GNU/Linux de la page de téléchargement de GIMP, avec un gros bouton orange “Install GIMP flatpak” (au passage, vous remarquez le dessin en haut de page? C’est un dessin d’Aryeom!).

À ce jour, on ne peut installer que la version stable par ce biais, c’est à dire GIMP 2.8.x (flathub n’accepte que les versions stables) mais en l’installant par ce biais, quand GIMP 2.10 sortira, vous serez en mesure de le mettre à jour aisément et rapidement (probablement le jour de la sortie) avec une build officielle!
Dans tous les cas, la maintenance de ce flatpak me prend un temps certain (en particulier pour garder le manifest flatpak à jour dans notre dépôt de source et tester les builds)!

En tout, je suis l’auteur de 122 commits entre GIMP 2.9.6 et 2.9.8, sur 474 commits totaux (soit ~25%), et j’ai poussé quelques autres commits de développeurs tiers après revue de code…
Notons aussi encore 2 commits “invités” par Lionel N., membre du Conseil d’Administration de LILA, l’association loi 1901 gérant le projet ZeMarmot.

Bien entendu, même si je dis m’être concentré sur les bugs, j’ai participé à quelques fonctionnalités sympas qui sont arrivées avec cette sortie:

  • Prise en charge d’import de fichiers PDF protégés par mot de passe (les 2 commits de Lionel de LILA!) et une nouvelle procédure `file-pdf-load2()` pour que les plug-ins et scripts puissent aussi ouvrir des PDFs avec mot de passe, mais aussi des PDFs multi-pages (il était déjà possible d’importer des PDFs multi-pages graphiquement, mais la fonctionnalité n’était pas disponible pour les scripts et plug-ins).
  • Amélioration du système d’aide: en cas de détection d’installations multiples de manuels dans plusieurs languages, GIMP permettra dorénavant la sélection du langage de manuel préféré dans les Préférences (Interface > Help System). Il me semble que cette fonctionnalité est importante car nous avons régulièrement des gens ne comprenant pas pourquoi GIMP ne voyait pas le manuel qu’ils avaient installés.  En outre, nous n’avons pas autant de traductions du manuel que de l’interface graphique. Ainsi nous avons 3 traductions chinoises de l’interface (zh_CN|TW|HK) mais uniquement une traduction du manuel (zh_CN). Je pourrais tout à fait imaginer quelqu’un avec une interface zh_HK (chinois de Hong Kong) utilisant alors le manuel zh_CN (chinois simplifié). De même que quelqu’un pourrait vouloir son interface en breton (oui, on a une traduction bretonne!) et un manuel en français.
  • La version verbeuse (ligne de commande: gimp -v) affiche maintenant aussi des informations sur le compilateur C utilisé (utile pour le debugging).
  • Les information de rotation et de retournement du canevas sont maintenant visibles dans la barre de statut et cette information est interactive (en cliquant les icones de retournement, vous remettez le canevas à l’endroit; cliquer l’angle de rotation ouvre la boîte de dialogue “Sélectionner l’angle de rotation“). Certaines personnes remarquaient en effet qu’à force de retourner ou tourner le canevas, on pouvait “s’y perdre” et ne plus savoir s’il était retourné ou non. En outre la barre de statut a déjà les informations de zoom, très similaires. 🙂
  • Implémentation de la capture d’écran pour KDE/Wayland.
  • Implémentation de la pipette à couleur pour KDE/Wayland.
  • Amélioration de la gestion du délai pour les captures d’écran.
  • Revue des patches de prise en charge du format HGT et amélioration de ceux-ci avec de l’auto-détection des variantes (SRTM-1 et SRTM-3), et aussi une procédure `file-hgt-load()` pour les scripts et plug-ins.

Quoiqu’il en soit, je considère que les corrections de bug et la maintenance de code que j’ai faites furent plus importantes que cette liste de fonctionnalités, mais c’est malheureusement toujours compliqué de rendre une liste de bugs aussi attrayante qu’une liste de fonctionnalités! Cela ne m’empêchera pas de continuer à me focaliser sur les bugs jusqu’à la sortie de 2.10.

ZeMarmot en 2017: notre compte-rendu!

Vous le savez bien: ZeMarmot, ce n’est pas seulement du code sur GIMP, même si ce logiciel est une grosse partie du projet. ZeMarmot est avant tout la réalisation d’un film d’animation, en 2D dessinée, animation traditionnelle mais néanmoins numérique (dessin sur ordinateur et non papier). Bien sûr, nous dessinons dans GIMP. Pour être plus précis, Aryeom Han, animatrice et réalisatrice, dessine (pas moi). Et nous finançons le projet participativement.

Finances

Cette année fut un peu dure psychologiquement et nous nous sommes demandés à plusieurs reprises si le projet était bon pour nos vies.  En effet, le financement participatif augmentait, mais très lentement pendant tout 2017 (autour des 400 € par mois).

C’est ainsi qu’en octobre, j’ai lancé un appel à l’aide après que mon ordinateur ait cassé, et nous fûmes très heureux que beaucoup de gens y répondent. Le financement a doublé en quelques jours.

Ensuite, soyons clair: notre financement actuel est plus ou moins de 1000€ mensuels (depuis octobre), ce qui est mieux et nous a donné beaucoup d’espoir; cependant cela ne nous paie pas 2 salaires (en fait, pas même un seul temps plein). Nous espérons donc que si vous appréciez notre projet, que ce soit pour le développement de GIMP et/ou pour le film ZeMarmot, vous ne nous oublierez pas et soutiendrez le projet en donnant. Nous vous en serons très reconnaissant!

Les donations à ZeMarmot peuvent se faire là:

» Liberapay «
(donations hebdomadaires, USD et EUR possibles, frais les plus bas)

» Patreon «
(donations mensuelles, USD ($) seulement)

» Tipeee «
(donations mensuelles, EUR (€) seulement)

Live Streaming du travail sur ZeMarmot

Nous sommes conscients que le peu de nouvelles du côté animation n’était pas idéal. L’animation est un travail qui prend beaucoup de temps; donc le travail sur le film avance, mais c’est simplement très dur de donner des nouvelles concrètes.

À titre d’exemple, en fonction de la complexité et du détail d’animation, une minute d’animation peut prendre un mois de travail à temps plein, voire plus (vous trouverez pleins de liens sur le web, qui donnent tous des infos similaires).
Cela dépend bien sûr de vos choix artistiques. De l’animation vectorielle ou de  l’animation limitée (Les Simpson par exemple) seront animées bien plus rapidement. En gros vous n’animerez pas South Park ou un film Disney à la même vitesse (ce qui n’est pas un problème, mais un choix; j’apprécie aussi Les Simpson ou South Park). Dans le cas de ZeMarmot, comme vous le savez, nous avons choisi un style détaillé et une animation traditionnelle classique. C’est un choix (que nous avons parfois regretté à cause du temps pris, mais ce qui est fait est fait!).

C’est ainsi qu’ Aryeom a décidé de diffuser des lives de ses sessions de travail! Après quelques jours de recherche de logiciel, elle a choisi OBS comme logiciel libre de streaming (on a au passage réussi à casser Fedora en réinstallant les pilotes NVidia en suivant des tutoriels! :p), et après plusieurs tests en décembre, elle a commencé officiellement ses lives publics le 25 décembre 2017!

Voici le lien où les lives sont régulièrement visibles:

» https://www.youtube.com/c/LibreArtInfo/live «

Nous n’avons pas encore trouvé l’organisation idéale pour planifier les lives à venir. Par conséquent, le mieux pour le moment est soit de nous suivre sur Twitter, soit de s’inscrire à la chaîne Youtube, ou simplement de jeter un œil de temps en temps sur le lien ci-dessus.

Les lives précédents sont automatiquement enregistrés et visibles en différé sur la chaîne à la fin du streaming. Soyez prévenus cependant: il s’agit de vrais lives de quelqu’un travaillant réellement. Cela signifie déjà que c’est du temps réel (et pas accéléré 20 fois comme on peut le voir dans divers “speed painting”), des erreurs peuvent se produire et cela n’est pas édité ensuite. Il n’y a pas de son (ni musique, ni parole) et Aryeom n’intéragit pas avec les gens en direct. Elle est concentrée sur son travail et ne regarde pas le streaming. De temps en temps, nous regardons le chat et on peut répondre à des questions, mais ne considérez pas cela comme une évidence. Il s’agit d’un aperçu du travail d’animateur professionnel et non d’un service de chat ou de questions-réponses. De même, il arrive que l’animateur fasse une pause au milieu d’un live et nous ne vous promettons pas que vous ne vous ennuierez jamais. 😉
D’ailleurs le plus long streaming qu’elle ait enregistré à ce jour est de plus de 7 heures d’affilées! Vous êtes prévenus! 😛

Dans tous les cas, c’est une expérience vraiment très enrichissante et nous avons déjà reçu des commentaires très positifs de la communauté.

 

Symbiose Art+Code

Nous avons eu régulièrement la question: “pourquoi ne pas faire de financements participatifs séparés pour le développement et l’animation?

Réponse: parce que ce projet est un tout. C’est une symbiose. Je code du Logiciel Libre car je l’utilise; si ZeMarmot n’existait pas (ou un autre projet où on utiliserait GIMP), alors je ne contribuerais probablement pas à GIMP. C’est aussi simple que cela. Aryeom de son côté n’utiliserait probablement pas GIMP si elle n’avait pas un développeur à ses côtés.

Nous rappellons que c’est ainsi que nous avons commencé nos premiers patchs à GIMP: nous avions des bugs et des crashs et considérions alors que GIMP n’était pas suffisant pour un usage professionnel à l’époque. Nous sommes heureux de pouvoir dire que c’est beaucoup beaucoup mieux de nos jours (avec la version de développement). Soyons clairs que nous ne sommes pas les seuls responsables, loin de là! Nous sommes chanceux de pouvoir hacker GIMP aux côtés de plusieurs développeurs vraiment talentueux (notamment Mitch, le mainteneur de GIMP, qui est toujours là après 20 ans!). Par contre le fait qu’on nous ait permis d’y mettre du notre est clairement la raison pour laquelle nous nous accrochons à ce projet.

Pour illustrer à quel point notre projet est un tout, lors d’un streaming d’Aryeom, il y a quelques jours, nous avons été capable de démontrer en live comment nous travaillons ensemble. Pendant le live, un crash de GIMP s’est produit! Ouch! En quelques minutes, elle fut capable de trouver des étapes de reproduction du crash, et moins de 2 heures plus tard (cela ne m’a pas pris 2H, mais je pouvais pas non plus abandonner mon activité du moment d’un coup!), j’ai poussé un correctif dans le dépôt de source de GIMP.

Et c’est ainsi que le projet ZeMarmot est un projet très efficace de 2 personnes, une collaboration d’un développeur et d’une animatrice (qui travaille quotidiennement et professionnellement avec ce logiciel), et absolument pas 2 projets séparés. 🙂

Ainsi si jamais vous vous êtes retenu de donner jusque là car vous souhaitez seulement donner pour un film, ou au contraire seulement donner pour du développement GIMP, nous espérons que vous pourrez revoir votre jugement et voir qu’en donnant à ZeMarmot, vous aidez tous les aspects du projet en même temps!

GIMP Motion

GIMP Motion est notre our plug-in pour l’animation dans GIMP (nous en avions déjà parlé en démontrant la création d’animations simple puis complexes). Vous pouvez d’ailleurs aussi le voir en action presque quotidiennement dans les lives d’Aryeom maintenant.

Malheureusement j’en ai un peu négligé le développement dernièrement pour la raison donnée précédemment: je me concentre surtout sur la sortie de GIMP 2.10 pour le moment. J’espère donc bien que cette sortie sera très bientôt (pour en finir enfin avec GIMP 2 et commencer l’aventure GIMP 3!).
Cela signifie que GIMP Motion ne sera vraisemblablement pas inclus dans GIMP 2.10, mais il sera sûrement dans une sortie GIMP 2.10.x puisque nous avons décidé début 2017 que nous relâchions notre politique d’absence de nouvelles fonctionnalités dans les versions mineures. J’ai donc décidé que GIMP Motion n’était pas prêt pour être considéré “stable”. C’est d’ailleurs exactement pour cela que je pousse cette relâche de notre politique de sortie depuis 2014 (cf. la section “Les Réunions GIMP” dans notre compte-rendu LGM 2014!): pour ne pas se presser à sortir des fonctionnalités à moitié faites ni pousser les sorties indéfiniment.

Nous utilisons ce plugin en interne bien sûr, mais il reste instable et avec de nombreux bugs. Vous êtes prévenus!

Documenter le processus d’animation

Cette année, nous avons beaucoup moins documenté notre travail. On a bien eu un article sur l’animatique, le key-framing, etc. et un sur le background design. Nous avons aussi fait quelques conférences pendant le festival NUMOK des bibliothèques parisiennes ainsi qu’aux JM2L avec quelques explications du processus d’animation que nous n’avons pas encore mises noir sur blanc (mais bientôt!).

Mais ce n’est pas assez puisque nous souhaitons vraiment documenter le plus possible pour que les techniques de films animées n’aient pas de secret pour tous. Comme je disais, cette année ne fut pas rose et nous n’étions tout simplement pas dans dans l’esprit. Espérons que nous ferons mieux l’an prochain!

ZeMarmot à la télé!

Grâce aux JM2LZeMarmot est passé 2 fois à la télé en fin d’année. Dans toutes les vidéos, GIMP est clairement mentionné et visible à l’écran, de même qu’Aryeom hackant des animations dans GIMP, sous bureau GNOME. 🙂

Nous sommes ainsi passé sur France 3 côte-d’Azur (à l’écrit aussi):

Puis sur PleinSud TV (à 2:32):

Et une mention dans le journal papier Nice Matin:

Matériel mis à jour

Grâce au financement accru de fin d’année, nous avons pu renouveler notre matériel. En particulier nous avons acheté une Wacom MobileStudio Pro (en gros un portable-tablette de Wacom) sur laquelle notre première action fut de remplacer Windows par une distribution GNU/Linux (Fedora 27) et d’installer GIMP. Cela fontionne bien! Bon soyons clair: on a tout de même ouvert plus d’une dizaine de rapports de bug pour divers projets libres, donc ne vous attendez pas à une prise en charge parfaite. Mais on y travaille!

Nous avons d’ailleurs documenté  un peu l’évolution sur un moment Twitter avant de devoir faire une pause à cause de problèmes matériels (nous avons dû renvoyer la tablette au service après-vente qui a mis plus de 3 semaines à nous la retourner!).

Nous publierons plus tard un guide complet pour ce matériel de peintre numérique avec GNU/Linux et GIMP. 🙂

Conclusion

L’année fut dure mais intéressante et la fin d’année en particulier nous a redonné de l’espoir que l’on croyait perdu, avec un financement un peu plus raisonnable et une mise-à-jour du matériel.

Les streamings d’Aryeom GIMPant ZeMarmot furent aussi une idée super cool et nous sommes heureux de voir que les gens semblent apprécier. À ce jour, nous n’avons eu que des retours positifs. Nous aurions dû en faire plus tôt!

Nous avons donc espoir que les choses continueront à s’améliorer. Nous aimons ce que nous faisons et notre projet, et rêvons de ce jour où nous pourrons dire fièrement que nous sommes capable de vivre de Logiciel Libre et d’Art Libre.
Lorsque ce jour arrivera, ce sera clairement un jour heureux où nous pourrons sabrer le champagne. 🙂

En attendant, nous vous souhaitons à tous une année 2018 heureuse, amusante et libre!

Le projet ZeMarmot maintenant aussi sur Liberapay!

On nous parle régulièrement de Liberapay. Cette plateforme de financement récurrent est différente des plus connues (telles que Patreon or Tipeee) surtout du fait qu’elle est gérée par une association (française) à but non-lucratif avec des frais bien moindres (de ce que je comprends, il n’y a que les frais de paiement, mais pas de frais de plateforme!) puisqu’ils s’auto-financent sur leur propre plateforme (en outre, le code même du site est du Logiciel Libre).

Bien sûr, on ne peut qu’apprécier le concept. Par le passé, nous avons toutefois été réticent d’y faire un compte pour une raison principale: ZeMarmot est déjà présent sur 2 plateformes (quand nous avons commencé, nous ne connaissions pas Liberapay) et plus de plateformes signifie plus de temps utilisé pour la gestion, un temps que nous préférons utiliser plus intelligemment en codant du Logiciel Libre et dessinant/animant de l’Animation Libre.

Cependant, vous avez peut-être entendu parler des changements récents de frais de plateforme sur Patreon qui ont mis en colère le web (une simple recherche sur votre moteur de recherche favori vous trouvera des dizaines d’articles sur le sujet). Bon finalement ils sont revenus sur leur décision après quelques jours, en s’excusant, et tout et tout. Mais c’est un peu trop tard. Comme la plupart des projets sur Patreon, nous avons perdu plus de 20 patrons pour plus de 80$ de donation par mois (c’était les chiffres tels que je les avais comptés y a une semaine; probablement pire au final), soit plus de 10% des donations sur Patreon en à peine 4 jours. Et malgré les excuses de la plateforme, aucun des patrons partis n’est revenu. La confiance avec la plateforme est de manière évidente rompue aux yeux de certains.

C’est la raison pour laquelle nous avons finalement décidé d’ouvrir un compte sur Liberapay. Donc si vous aimez le projet ZeMarmot, ainsi que nos contributions à GIMP,  vous pouvez dorénavant aussi nous financer ici:

» ZeMarmot Liberapay page «
https://liberapay.com/ZeMarmot/

Différences principales avec les autres platformes:

  • donations possibles en EUR (€) ou en USD ($), c’est plutôt cool;
  • il n’y a pas de système de “nouvelles”, c’est donc à chacun de se tenir informé par ses propres moyens (par exemple en lisant le présent blog, ou encore en suivant le compte twitter du projet);
  • tous les donateurs sont anonymes (ce qui signifie notamment qu’ils n’apparaîtront pas dans le générique du film);
  • la page de projet est localisée (pour l’instant en français et anglais).

Notez qu’il ne s’agit que d’une option de donation additionnelle. Nous n’abandonnons pas ni Patreon ni Tipeee. Ne vous sentez donc pas obligés de vous inscrire sur cette autre plateforme si vous ne le souhaitez pas et appréciez Patreon/Tipeee.

Enfin nous rappelons que le projet ZeMarmot est géré par l’association française, à but non lucratif (loi 1901), LILA. En particulier, cela signifie qu’il y a aussi d’autres moyens de soutenir notre projet financièrement, notamment par des donations directes à l’association LILA (beaucoup de banques européennes permettent des virements sans frais à l’intérieur de l’UE, à vérifier avec votre banque; cela peut donc s’avérer la solution la plus efficace) ou Paypal (pour les très petits montants, les frais sont très chers, mais pour la plupart des donations, ils sont très acceptables), etc. Si vous souhaitez voir la liste complète des moyens de donner à LILA, et donc à ZeMarmot et pour du développement sur GIMP: https://libreart.info/fr/donate

P.S.: comme la plateforme Liberapay est plutôt cool et se finance par son propre système, nous avons décidé de donner un peu en retour (pour l’instant environ 2% des donations reçues, ce qui reste moins cher que les frais de toutes les autres plateformes).

Appel à l’aide: financement du développement de GIMP et d’animation Libre

En deux mots: notre travail de développement sur GIMP ainsi que la production du film ZeMarmot est actuellement financé à un peu plus de 400€ par mois. Cela ne paie pas nos factures. Et là — paf! — mon ordinateur vient de casser et la tablette graphique d’Aryeom montre des signes de faiblesse depuis un certain temps maintenant. L’avenir du projet ne s’annonce pas radieux.

C’est pourquoi nous vous appelons à l’aide!
Vous pouvez financer le développement de GIMP et la production de ZeMarmot sur Patreon ou Tipeee!

Lire dessous pour les détails…


Si vous nous lisez régulièrement, vous savez que je contribue énormément au développement de GIMP. Nous sommes à peine une poignée de développeurs réguliers sur GIMP. Je suis l’un d’eux. Mes contributions vont des corrections de bug régulières aux fonctionnalités majeures, ainsi que de la maintenance de plusieurs parties du code et de la revue de code contribué. Je fais tout cela dans le contexte du projet ZeMarmot, aux côtés d’Aryeom Han, réalisatrice et animatrice. Nous dessinons avec et hackons GIMP car nous croyons dans le Logiciel Libre.
Bien entendu, je contribue aussi à de nombreux autres Logiciels Libres.

Notre but, absolument-pas-secret, est de pouvoir un jour vivre du développement de Logiciel Libre et de création d’Art Libre. Clairement pour l’instant, c’est un échec. Avec environ 400€ par mois, pour 2 personnes, l’association LILA a à peine de quoi rémunérer quelques jours par mois (ce qui est fait selon les règles, donc avec une partie non négligeable de cotisations sociales). Soyons clair, ces 400€ ne sont même pas assez pour payer le loyer du studio de 31m² où nous vivons, que nous louons dans la banlieue éloignée de Paris; donc dire que nous n’en vivons pas serait un euphémisme. Nous vivons principalement de nos économies et de ce que nous pouvons avoir d’autre pour vivre. Cet “autre” bien sûr nous prend du temps que nous préférerions passer sur ZeMarmot.

Car oui clairement, travailler à plein temps pour créer du Logiciel Libre ainsi que de l’Art Libre ne nous déplairait vraiment pas. Pour l’instant, on en est loin.

La raison principale pour laquelle nous continuons est que nous avons promis au moins la sortie du pilote. Les contributeurs comptent sur nous. Bien sûr, l’autre raison est que nous espérons toujours que les choses vont s’améliorer pour nous permettre finalement de vivre de nos passions. Quoiqu’il en soit, le projet avance lentement car on ne peut pas vraiment se permettre de mourir de faim. Souvent nous en sommes assez démoralisés.

C’est donc la raison de cet appel. Si vous en avez les moyens et pensez que GIMP est un logiciel important, alors je vous propose de financer ZeMarmot qui paye du développement.
De même si vous voulez voir plus d’Art Libre, et notamment de sympathiques films d’animation, voire plus tard d’autres films toujours sous licences LIbres, de qualité professionnelle, alors là aussi je vous propose de financer ZeMarmot.

» Financement Patreon «
» Financement Tipeee «

Notre matériel se meurt…

L’autre raison de cet article soudain? La situation que je dépeinds n’est pas nouvelle. Ce qui est nouveau est que mon ordinateur portable vient de casser. Il ne s’allume plus, tout simplement. Je ne sais pas encore si c’est réparable, mais dans tous les cas, cela ne sent pas bon. Mes données vont bien, puisque je fais des sauvegardes régulières (et je ne crois pas que le disque soit cassé bien que je n’aie pas encore vérifié). Par contre je n’ai plus d’ordinateur pour travailler (j’écris cela depuis un netbook 32-bit de 8 ans d’âge, machine de secours qui malheureusement peine rien qu’à ouvrir le navigateur web!).

De son côté, la tablette graphique d’Aryeom a des problèmes depuis longtemps. Vous vous en rappelez peut-être, nous avons  réglé le problème en partie. Malgré cette réparation de fortune, la tablette s’éteint régulièrement sans raison, nous forçant à retirer et remettre la batterie pour la redémarrer, ou autre “contournement” similaire. Nous craignons donc que nous soyons forcé d’en acheter une autre un jour prochain s’il lui prend aussi de ne plus s’allumer du tout.

Cette panne d’ordinateur fut donc le déclic pour cet appel, comme je me rends bien compte de la précarité de notre situation. Peu de financement, des économies qui se font la belle, et maintenant des problèmes de matériel (coûteux). Nous faisons donc appel à vous tous, ceux qui aiment le Logiciel Libre et/ou l’Art Libre. Pensez-vous que ZeMarmot soit un projet positif? A-t-il un sens, et donc devrait-il continuer à prospérer? C’est en tous cas ce que nous croyons depuis le début, et ce pourquoi nous continuons. Si c’est aussi votre cas, un peu d’aide ne serait pas de refus, proportionnellement à vos moyens. Et si vraiment vous n’avez pas les moyens du tout, alors faites passer le mot, c’est toujours ça. 🙂

ZeMarmot est une aventure dure mais merveilleuse pour nous, et tant que possible nous aimerions éviter une fin triste (bien que nous ne regretterions pas une seconde de l’aventure!).

Merci d’avoir lu!

GIMP 2.9.6 et ZeMarmot

Note: copie d’une nouvelle initialement postée sur Patreon et Tipeee.

Image de démarrage de GIMP 2.9.6, par Aryeom
Image de démarrage de GIMP 2.9.6, par Aryeom

Le mois dernier, nous avons sorti la 3ème version de développement de GIMP, version 2.9.6, pour préparer l’arrivée de la prochaine version stable, GIMP 2.10.

Comme pour les versions  précédentes, le projet ZeMarmot fut un des contributeurs majeurs avec  274 commits (sur 1885 en tout) par Jehan, 4 par Aryeom (quelques icônes  manquantes, une nouvelle dynamique “Pressure Size” très utile pour appliquer des aplats de couleur,  et l’image de démarrage pour cette version de développement), et même pour la première fois 3 commits de Lionel, un des membres du conseil d’administration de l’association LILA. Donc environ 15% de GIMP 2.9.6 vous est offert par ZeMarmot! 🙂

Nous suggérons de jeter un œil à l’annonce officielle. Et si vous souhaitez la liste précise et complète des contributions de Jehan en particulier, elle est publique et visible sur le dépôt de source.

Les nouveautés dans la 2.9.6 par ZeMarmot

  • avoir rendu thread-safe la libgimp, ce qui en langage  moins abscons signifie de simplifier le travail pour les extensions de  tourner sur plusieurs processeurs (tous les ordis de nos jours étant  multi-processeurs);
  • ajouter l’affichage des angles lors du dessin de lignes;
  • faire de la revue de code pour la prise en charge du format d’image  WebP ainsi que diverses améliorations et corrections (avec notamment un patch de notre part sur la libwebp même);
  • la capacité de  changer aisément la visibilité exclusive des calques dans des groupes de calques avec shift-click (une fonctionnalité qu’Aryeom a demandé et  testé/utilisé pendant plusieurs mois avant que nous la reportions dans  GIMP);
  • contribution à l’effort des développeurs de Darktable et RawTherapee pour notre nouveau plugin “raw” permettant d’ouvrir des images dans GIMP à travers ces logiciels tiers (le projet GIMP préconise et privilégie l’entraide et le lien entre les Logiciels Libres);
  • une contribution pour que GIMP suive la limite multi-thread de GEGL (encore une fois pour une meilleure utilisation des processeurs, mais cette fois dans le cœur de GIMP);
  • diverses améliorations de la prise en charge de PDF, en particulier l’export de PDF multi-pages à partir de plusieurs calques (c’est justement sur ce sujet que Lionel a fait ses premières dents de programmeur avec l’aide de Jehan!);
  • la revue de code et des corrections pour une amélioration de l’import et l’export d’images PCX;
  • la capacité pour les plug-ins de s’installer dans un sous-répertoire propre, ce qui va notamment enfin permettre de faire disparaître “l’enfer des DLLs”, un problème récurrent sous Windows de plug-ins qui embarquaient des librairies qui faisaient planter les autres plug-ins;
  • changer diverses valeurs par défaut pour s’ajuster aux standards  actuels (tailles de polices plus grandes, dimension d’image par défaut  en fullHD, résolution de 300 PPI par défaut au lieu de 72…);
  • une  adaptation intelligente de la précision des affichages de dimension  physique en fonction de la résolution d’impression, pour permettre plus  de précision dans divers endroits (outil de mesure, barre de statut, etc.);
  • possibilités de choisir sa taille d’icônes, ce qui permettra  d’adapter GIMP aux petits écrans, aux écrans haute densité, ou autre;
  • auto-détection de la résolution native de l’écran pour adapter la taille des icônes par défaut (ce choix par défaut peut toujours être  changé, cf. point précédent);
  • icônes vectorielles par défaut pour faciliter les changements de taille;
  • accueillir les nouveaux contributeurs en écrivant un fichier de style  de code pour vim, et en intégrant des fichiers contribués pour emacs et  kate;
  • écriture d’un paquet Flatpak pour GIMP;
  • et bien plus! Des corrections de bugs et des fonctionnalités mineures par dizaines!

Flatpak pour les créateurs sous Linux?

Les créateurs qui utilisent GIMP sous un système d’exploitation GNU/Linux ont probablement entendu parler de Flatpak,  le système générique d’applications pour Linux. Puisque nous utilisons aussi Linux ici, il nous semblait important que GIMP soit aisément et rapidement accessible dans une version récente (avec les systèmes de paquets actuels, obtenir une version récente demande souvent d’attendre plusieurs mois après la sortie!). Nous profitons de la sortie de 2.9.6 pour tester un premier paquet public. Puisque nous n’avons pas de serveur très stable à notre disposition, nous le mettons seulement à disposition des contributeurs Patreon et Tipeee pour l’instant, mais essaierons de faire en sorte que ce paquet soit disponible pour tous très bientôt!

Pour info, les utilisateurs Windows ont déjà un paquet téléchargeables; et un paquet MacOS devrait aussi normalement sortir (cela dépend du mainteneur du paquet qui a eu quelques priorités familiales). Mais ils ne sont pas gérés par nous. » Voir la page de téléchargement! « 🙂

Merci… et en route vers 2.10!

J’espère que vous aimez nos contributions à GIMP! Sachez que c’est rendu possible grâce à tous nos contributeurs, que ce soit sur Patreon ou Tipeee, lors de crowdfunding précédents, ou de ceux qui nous font des donations directes.

Ce  n’est pas facile tous les jours et nous avons eu plus d’une fois un  coup de blues du fait du manque de moyen, mais le fait que vous êtes  nombreux à nous aider nous donne du courage.
Merci à vous!

Nous continuons et vous apporterons une superbe version stable GIMP 2.10. 🙂

Amusez-vous bien!

GIMP Motion: partie 2 — animations complexes

Voici la seconde vidéo d’introduction de GIMP Motion, notre plug-in pour de l’animation de qualité professionelle avec GIMP. Comme déjà écrit, c’est un travail en cours, les bugs et problèmes sont normaux à ce stade de développement. Je revois aussi régulièrement certains concepts au fur et à mesure qu’on les expérimente en produisant ZeMarmot. En étant conscients de ces points, n’hésitez pas à tester mon code, disponible dans le dépôt officiel de code source de GIMP sous la même licence que ce dernier (GPL v3 et au dessus). À terme, cela devrait être livré avec GIMP lui-même, quand j’estimerai que ce sera stable et suffisamment bon. Plus nous aurons de financement participatif (voir fin de l’article pour les liens de crowdfunding) plus cela se produira vite. 😉

Alors que la vidéo précédentes introduisait les “animations simples”, c’est-à-dire principalement des animations où chaque calque est une image finale de l’animation, cette seconde vidéo montre comment créer des animations “composites” où les images sont le résultat de l’association de plusieurs calques. Par exemple un calque de fond, des calques séparés pour un personnage, d’autres pour un second personnage, et même des calques à part pour des objets mobiles ou des effets (par exemple les traces dans la neige dans la scène en fin de vidéo).

Je montre aussi rapidement comment “jouer” avec la caméra, par exemple du “panning” dans une scène plus grande que l’écran pour suivre des personnages. Lorsque le logiciel sera fini, on devra pouvoir aussi animer tout effet (opérations GEGL). Par exemple pour flouter l’arrière ou l’avant plan, pour ajouter des effets de lumière (reflets ou autre…), ou simplement des effets artistiques ou du motion graphics…
Comme je le disais, c’est du travail en cours.

Un aspect difficile du projet est de garder une expérience fluide. Faire du rendu de dizaines d’images, chacune compositée à partir de plusieurs images hautes résolutions et d’effets complexes, cela prend du temps; or on ne veut pas “geler” l’interface, de même qu’on veut rendre possible la prévisualisation d’animation dès que possible et aussi fluide que possible. J’ai beaucoup travaillé et expérimenté sur ces aspects car, d’expérience, ce sont les points les plus pénibles en travaillant avec Blender où on s’est résigné à constamment faire des rendus d’extraits pour pouvoir les visionner dans des conditions acceptables (la prévisualisation est bien trop lente, même avec une bonne carte graphique, 32GB de RAM, un  bon processeur et des disques SSD).
Un résultat direct dans GIMP sera de rendre enfin libgimp thread-safe (mon patch est encore en attente de revue, mais il marche déjà très bien pour nous, comme vous pouvez le voir si vous testez notre branche). Cela sera donc une belle avancée pour tout type de plug-ins, pas seulement pour l’animation.
Cela m’a ainsi permis d’expérimenter plus facilement avec le multi-threading dans mon plug-in et je suis assez content du résultat jusqu’à présent (bien qu’il y ait encore beaucoup à faire).

Un autre gros chantier est d’avoir une interface aussi simple à utiliser que possible, tout en proposant des fonctionnalités avancées. Nous avons tant de problèmes dans d’autres logiciels où les options les plus avancées sont si complexes à utilisés qu’on ne peut que mal les utiliser… Bien entendu, c’est très compliqué (ce pourquoi c’est un problème dans tant de logiciels; je n’entends pas qu’ils sont mal implémentées: la solution n’est simplement jamais aussi simples qu’elle n’en a l’air) mais nous y travaillons. Aryeom me rappelle sans cesse les bugs et problèmes d’interface de toutes façons, donc je n’ai pas d’autres choix. 😉

Vous avez peut-être aussi remarqué que nous travaillons sur de très courtes animations. Nous dessinons en fait un unique plan par fichier XCF. Puis nous exporterons les images depuis GIMP Motion et travaillerons sur les transitions et davantage de compositing dans un autre logiciel (jusque là Blender VSE; on entend aussi beaucoup de bien de Kdenlive ces derniers temps, donc on réessaiera probablement; pour tout dire, ces 2 vidéos d’introduction furent faites avec Kdenlive également et c’est effectivement mieux que dans mes précédents tests). Puisque 2 plans présentent 2 points de vue totalement différents (par définition), il n’y a de toutes façons pas trop d’intérêt à les dessiner dans le même fichier. L’autre raison est que GIMP n’est pas fait pour travailler avec des milliers de calques haute-définition. Même si GEGL permet de travailler sur des images plus grandes que la mémoire en théorie, cela n’est pas idéal dans la pratique, surtout si on veut des rendus rapides (certains ont essayés! J’ai moi-même testé pour débugguer: ce n’est clairement pas utilisable au quotidien, comme on peut s’y attendre). Tant que GIMP est destiné à de l’imagerie statique, on peut considérer que c’est un état de fait acceptable. Si un jour l’animation devait devenir une fonctionnalité au cœur de GIMP, alors nous pourrons réfléchir à une utilisation plus intelligente de la mémoire.
D’un autre côté, un plan fait rarement plus de quelques secondes ce qui rend l’usage mémoire très raisonnable. En outre travailler sur l’animation plan par plan est un workflow des plus standards et qui prend tout son sens dans l’animation 2D (pour le cinéma avec acteurs ou la 3D, c’est une complètement autre histoire; je parle vraiment de 2D dessinée ici), donc ce n’est vraiment pas un si gros problème pour l’instant (même si ça peut toujours être mieux).

En conclusion, vous vous demandez peut-être d’où vient ce terme de “cel animation“, aussi connu sous le terme d’animation “traditionnelle”. Un jour peut-être, je ferai un petit historique sur l’animation qui vous donnera la réponse, et vous montrera comment le workflow de GIMP Motion s’en inspire beaucoup. Pour le moment, vous pouvez jeter un œil à Wikipedia, et voir comment les “cels” (des feuilles transparentes) correspondent plutôt bien au concept de “calques” de GIMP. 🙂

Bon visionnage!

Équipe ZeMarmot

Rappel: vous pouvez soutenir mes contributions de code
Libre en dollar US sur Patreon ou en euros sur Tipeee.
Plus nous obtenons de financement, plus rapidement nous
tout le monde aura accès à ces fonctionnalités dans les
versions stables de GIMP, ainsi qu'à plein d'autres
fonctionnalités sur lesquelles je travaille en parallèle.
:-)

 

GIMP Motion: partie 1 — animations simples

Mi-juillet, nous avons publié le code de GIMP Motion, notre logiciel pour animer dans GIMP. Il est disponible dans le dépôt de code officiel de GIMP avec la même licence (GPL v3 et plus).

Nous n’avons pas encore de sortie officielle de GIMP avec ce plugin. Si tout se passe bien, cela se produira bientôt, mais pour l’instant nous le jugeons trop expérimental et incomplet, bien que nous l’utilisions quotidiennement nous-même. La version qui sortira sera bien meilleure. 🙂
Cela signifie que si vous souhaitez l’essayer, vous devrez compiler GIMP vous même, ou trouver quelqu’un qui fournit un “build” (peut-être nous, plus tard…).

La vidéo ci-dessus présente les fonctionnalités de base pour créer des animations simples, telles que storyboards/animatiques, ainsi que le nécessaire pour la plupart des besoins pour les images animées (GIF, Webp…). Par “animation simple”, on entend des animations faites d’images uniques successives, sans composition complexe avec des calques d’arrière-plan, de personnages, etc. Cependant même là, de nouvelles fonctionnalités sont à venir, pour le panning/tilting/zoom de grands plans, ou des effets animés (flou animé par exemple), etc.

Nous publierons bientôt une seconde partie vidéo pour détailler les fonctionnalités plus avancées pour des animations complexes (celles avec arrière-plan, premier-plan, personnages…). Et oui, car nous avons à peine entrevu les possibilités présentes de notre plugin pour l’instant. 🙂

Bon visionnage!

Équipe ZeMarmot

Rappel: vous pouvez soutenir mes contributions de code Libre
en dollar US sur Patreon ou en euros sur Tipeee.

Design de décor: le terrier de ZeMarmot

Background design: ZeMarmot home (title)

Dans un film d’animation, le design ne se limite évidemment pas aux personnages. On va aussi designer les objets, accessoires,  et bien sûr les décors. Par exemple, voici notre processus pour le design de la “maison” de ZeMarmot… ou du moins la vue extérieure puisque nous ne voyons jamais l’intérieur (contrairement à la BD initiale que nous avions commencée).

Vous vous souvenez notre premier voyage de recherche? Nous avions trouvé alors, près du village de Saint-Véran, une colline avec un seul arbre au milieu.

The tree on the hill: ZeMarmot movie reference
L’arbre sur la colline: référence du film ZeMarmot

Et bien sûr, à son pied, un trou de terrier de marmotte.

Burrow hole in tree roots: ZeMarmot reference
Le trou du terrier dans les racines: référence du film ZeMarmot

On s’est dit que c’était vraiment cool. La plupart des entrées de terriers étaient juste des trous au milieu de plaines, alors celui-ci semblait un “trou spécial”. Notre personnage n’est pourtant pas une marmotte particulière. Ce n’est pas un leader hollywoodien, ni le chef du clan des marmottes, ou quoi que ce soit. Tout de même… c’est notre héros. Ce n’est pas n’importe quelle marmotte, c’est ZeMarmot! Pour cette raison, lui donner un terrier particulier semblait la chose à faire. C’est ainsi que ZeMarmot vit dorénavant sous un arbre!
La différence principale avec notre référence est que nous avons placé cet arbre dans une vallée et non sur une colline.

Voici l’entrée du terrier dans le storyboard:

Storyboard: burrow entrance
Storyboard: entrée du terrier

Le dessin au propre:

Drawing: burrow entrance
Dessin: entrée du terrier

Avec des couleurs:

Colored ZeMarmot's burrow entrance (WIP)
Entrée du terrier de ZeMarmot colorisé (travail en cours)

Notons que cette dernière image est un travail en cours. On a tout de même pensé que ce serait sympa de vous montrer la progression entre les photos de recherche, les sketchs de storyboard, le dessin puis enfin une colorisation.

J’espère que vous avez apprécié cet aperçu dans les coulisses de ZeMarmot! 🙂

Rappel: pour aider notre film d'animation, ZeMarmot,
à voir le jour, réalisé avec des logiciels libres —
pour lequel nous contribuons aussi beaucoup de code —
sous licence Creative Commons by-sa 4.0 international,
vous pouvez contribuer financièrement:
en USD sur Patreon ou en EUR sur Tipeee.

ZeMarmot — travail en cours: de l’animatique à l’animation

Alors que nous sommes en pleine étape d’animation, on s’est dit que vous aimeriez un peu en savoir plus sur cette étape de production. Comment passe-t-on d’images statiques à images animées?

Storyboard, puis Animatique

Nous avons déjà parlé en long, en large et en travers de ces étapes, donc nous n’allons pas épiloguer. Nous vous conseillons de lire les blog posts des mois passés pour en savoir plus. Ce sont les étapes des images “purement statiques” type BD (storyboard) puis d’images statiques projetées en vidéo (animatique).

Key Framing

Avec le numérique, le sens terme “keyframe” a changé plusieurs fois. Ainsi dans les vidéos formats, on entend par “keyframe” une image qui est complète dans le flux vidéo, en oppositions aux images partielles qui n’ont de sens qu’associés à une keyframe précédente. Dans l’animation 3D ou vecteur, on va en général nommer keyframe les positions extrêmes dans une transition (mouvement de personnage par exemple), dont les positions intermédiaires sont calculées par un algorithme (interpolation ). C’est plus ou moins la définition donnée par Wikipedia pour une keyframe: “A key frame in animation and filmmaking is a drawing that defines the starting and ending points of any smooth transition.

Cette définition est cependant un peu trop “mécanique”, liée aux méthodes modernes d’animer avec la 3D et le dessin vectoriel (ce n’est pas totalement vrai même avec ces techniques, mais avec un peu de paresse, en découvrant la magie de l’interpolation algorithmique, cela paraît être la définition pour beaucoup). Les keyframes sont en fait simplement des “images importantes”, ce qui est déterminé totalement subjectivement. Le Keyframing est donc une part de l’art de l’animateur, plutôt qu’une science. Bien sûr, très souvent, les keyframes sont des débuts/fins de mouvement, mais ce n’est pas une vérité absolue. On les appelle aussi parfois les “poses clés”; il s’agit donc des poses que l’animateur juge comme importantes pour rendre le mouvement juste, de manière totalement partiale comme pour tout œuvre.

Animation Pose à Pose vs Straight Ahead

Il y a 2 principales logiques pour animer. La première méthode consiste à décomposer le mouvement en poses clés (keyframes) dans un premier temps. Dans le second temps, quand vous êtes content du résultat, you pouvez ajouter les images intermédiaires (inbetweens). C’est la méthode pose à pose.

Dans un gros studio, les keyframes sont généralement dessinées par les animateurs expérimentés. Puis les assistants (animateurs juniors)  dessineront les inbetweens après coup. Cela permet un peu plus de partage de travail, d’efficacité et de multi-tâche. Pour ZeMarmot malheureusement, Aryeom fait toutes les étapes elle-même, puisque nous n’avons pas le financement pour engager plus d’artistes pour l’instant.

L’autre méthode s’appelle en anglais “Straight Ahead” et consiste à dessiner les images successivement les unes après les autres, sans décomposition préalable. Cela rend le planning de la séquence plus difficile et le timing est bien plus difficile à gérer. Il est également plus probable que vous gâcherez des dessins avec cette méthode. Néanmoins certains animateurs aiment la liberté apportée et aussi le manque de planification peut permettre des mouvements moins parfaits, moins mécaniques et donc plus réalistes. Il s’agit de reproduire les êtres vivants dans toute leur splendeur de parfaite imperfection!

En observant Aryeom travailler, on peut constater qu’elle utilise régulièrement l’une ou l’autre méthode. Cela dépend des séquences.

Conclusion

Nous espérons que vous aurez apprécié ce petit aperçu dans le monde de l’animation et le travail de l’animateur. Nous espérons également que la petite vidéo attachée vous aura intéressés. Nous l’avons choisie pour vous montrer diverses étapes de la même section de scène, l’une après l’autre, puis côte-à-côte.

Vous remarquerez aussi que nous avons tendance à montrer toujours les mêmes sections du travail car nous souhaitons vous éviter le moins possible de spoiler, ce qui gâcherait le visionnage final. 🙂

Amusez-vous bien!

Équipe de ZeMarmot

Rappel: pour aider notre film d'animation, à voir le jour, lequel est
fait avec des logiciels libres — et pour lequel nous contribuons aussi
beaucoup de code — et qui sera sous licence Creative Commons by-sa 4.0
international, vous pouvez contribuer financièrement en USD sur
Patreon ou en EUR sur Tipeee.