Show more

(7/X) Je trouve cette normalisation très utile car elle permet une utilisation facilitée de l'image (on sait à quoi on a affaire) et elle autorise également n'importe quel type de traitement par lots. Et j'adore les traitements par lots.

Ensuite, arrive la question du style. Car si l'on veut pouvoir utiliser et modifier une illustration de façon cohérente (je mets volontairement de côté les travaux de type "patchwork"), il faut pouvoir s'adapter au style proposé par celle-ci.

Show thread

(6/X) L'idée de proposer une base de données référençant des illustrations est très bonne, mais il aurait été intéressant de les normaliser par la même occasion. Je me suis amusé à le faire en regroupant dans une même bibliothèque graphique quelques illustrations noir et blanc issus d'openClipart mais normalisées sous la forme d'un chemin (path) unique noire.

github.com/PoufPoufProduction/

Show thread

(5/X) Lui seul permet d'accéder à n'importe quel élément de l'oeuvre, de l'isoler et de le modifier sans contrainte.

D'où l'importance de la qualité de la description elle-même. Les illustrations proposées par des sites que j'affectionne particulièrement comme openClipart sont très utiles. Mais je trouve que la disparité dans leur écriture est préjudiciable.

Show thread

(4/X) La plus éliminatoire étant selon moi, la résolution fixée de l'image qui en empêche tout sous-échantillonage. On peut, par exemple, être en droit de s'interroger sur les libertés offertes par une photo numérisée au format 5x5 pixels. Libre, certes, mais d'en faire quoi ? Mystère. Personnellement, je pense qu'une illustration libre ne peut être que définie dans un format DESCRIPTIF (ça aussi, je le mets en majuscule).

Show thread

(3/X) A savoir que, si l'on s'inspire de la définition du logiciel libre, il me semble évident que, pour se dire (tout à fait) libre, une illustration doit être MODIFIABLE à loisir (je le mets en majuscule, du coup). Les conséquences à ce principe sont nombreuses. Tout autant que les restrictions ainsi induites.

Déjà, je considère que ce principe élimine, de fait, tout format bitmap. Pour plusieurs raisons, d'ailleurs.

(2/X) Personnellement, mes maigres productions sont placées directement dans le domaine public avec la CC0. C'est nettement plus simple.

Ce qui m'intéresse plus particulièrement, c'est l'aspect technique que je trouve primordial, et pour le coup, assez peu traité en général.

Mais avant d'aborder ce côté technique, il me faut partir de ce qui est, je crois, mon principe de base.

Show thread

(1/X) Allez. Comme c'est Mardi, voici un petit fil sur mon approche toute personnelle à moi que j'ai de l' (voire même de l'illustration tout à fait libre). Je m'excuse par avance : ce fil risque d'être long, dense et décousu, et beaucoup de points ne seront que très rapidement abordés.

Déjà, je n'ai rien de spécial à dire sur l'aspect juridique et la question des licences. Tout a déjà été dit et je n'ai pas grand chose à rajouter de ce côté-ci.

Mis à part ce franc succès, il reste des choses à régler :

1. Trouver des illustrations vectorielles libres. Ca serait quand même chouette de pouvoir mettre autre chose que les miennes.

2. Les pièces des puzzles sont peut-être trop espacées. Il va certainement falloir les refaire. Toutes. Je suis tristesse.

Show thread

L'automatisation marche correctement. C'est un peu long mais c'est opérationnel. Il a quand même fallu 2 heures pour découper celui-ci, issu d'un de mes dessins faits pour l'Inktober (c'est un niveau temporaire qui ne restera probablement pas dans#jlodb, car trop lourd).

jlodb.poufpoufproduction.fr/de

Show thread


Finalement, le découpage d'images n'était pas si difficile que cela. Il a suffisait de mettre ensemble différents éléments :
1. Une extension trouvée sur le net permettant les opérations booléennes multi-objets.
2. L'utilisation d'inkscape en ligne de commande avec l'option -verb. Je ne connaissais pas trop mais c'est vraiment très bien.
3. Un script shell fait maison, basique mais efficace.

Voici donc le premier puzzle réalisé :

jlodb.poufpoufproduction.fr/de

Show thread

- jour d'après.
Voici venir la phase 2 dont le but est simple : automatiser le découpage d'images vectorielles en pièces de puzzles.
L'opération booléenne d'intersection va être très utile mais à part ça, je n'ai aucune idée comment procéder : extension en python ou script shell avec utilisation du logiciel en ligne de commandes... Si quelqu'un a une idée...

Show thread

- jour suivant
Ca y est : la phase 1 est terminée. Les 10 découpages sont désormais disponibles sous . Comme celui-ci par exemple :

jlodb.poufpoufproduction.fr/de

Évidemment, les images des pièces ne correspondent pas tout à fait. C'est d'ailleurs l'objectif de la phase 2 : automatiser le découpage d'images vectorielles.

Au passage, je suis assez content de la jouabilité qui reste tout à fait acceptable avec 16 ou même 36 pièces.

Show thread

- jour 3
Les pièces ont été préparées sous . Pour chacun des 10 puzzles.

Eh bien, c'était long...

Maintenant, il va falloir transformer tout cela en données utilisables par en rendant les pièces déplaçables dynamiquement. Aussi, chaque chemin de pièces sera utilisé trois fois : le contour de la pièce, son ombre et le masque de découpage. Pas mal de copier-coller et de remplacement par expressions régulières à venir, donc.

Show thread

Il faudra tester ce niveau avec les 36 pièces pour être sûr qu'il reste jouable. Il faut dire que le rendu SVG depuis les navigateurs n'est pas toujours hyper-rapide.

En attendant, l'objectif est de finaliser la phase 1, en générant les différents gabarits de puzzles : 2 découpages différents pour des puzzles de dimensions 2x2 à 6x6. Soit 10 puzzles à faire ! Et sans se tromper pour ne pas avoir à tout recommencer. Le tuilage doit être défini avec précision dès à présent.

Show thread

- jour 2
Ecriture d'un niveau de test pour vérifier la faisabilité d'un puzzle.

jlodb.poufpoufproduction.fr/de

Ce niveau va bouger au fil des jours et sera bien différent à la fin de ce fil.
Pour l'heure, il n'y a qu'une seule pièce dont l'image ne correspond pas (inutile de chercher à la placer).

Cela dit, le rendu est sympa, le mouvement de la pièce ainsi que sa rotation sont corrects. C'est déjà ça.

Show thread

2. Le découpage automatique d'une image vectorielle. L'idée est de partir d'un ou plusieurs tracés et de les découper en carrés élémentaires avec tuilage. Je n'ai pas encore d'idée arrêtée, mais je pense qu'il va falloir développer une extension . A moins que cela n'existe déjà. A voir.

Show thread


L'activité puzzle existant déjà dans , aucun code supplémentaire ne devrait ếtre nécessaire. Du coup, la création d'un puzzle ne nécessite que deux étapes :

1. La création d'un template fait de pièces vides remplissables. La génération des pièces peut se faire via la page web :
cdn.rawgit.com/Draradech/35d36
Il ne reste plus qu'à rajouter la gestions des ombres et à encapsuler les tags <images> dans des masques de contours. Pas mal de copier-coller à prévoir.

Show thread

Faute d'activité sur ce compte et de motivation en général, voici venir un fil de suivi de développement sobrement intitulé :

L'objectif est d'enrichir le projet par des puzzles. Et pour cela, il va falloir créer un "workflow" permettant de générer facilement ces dits puzzles.

Actuellement, propose quelques puzzles comme celui-ci :

jlodb.poufpoufproduction.fr/de

C'est un bon début, mais :
1. ce fut pénible à réaliser.
2. les pièces de puzzles sont bofs.

Show more
La Quadrature du Net - Mastodon - Media Fédéré

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!