Mon3drian
Posté le mercredi 27 juillet 2011 à 18 h 28 min dans la catégorie « Couleur, Fan-art, News » par Bruno Bellamy.
Des fois, ça me prend, j’ai des envies de programmation… Ça me repose, ça me détend.
Ça fait marcher des parties de mon cerveau qui n’ont pas trop l’occasion de servir quand je dessine, que j’écris, etc.
Et puis je trouve assez savoureuse l’idée que des images puissent se produire toutes seules.
Non pas tant parce que ça m’épargne le boulot de les faire à la main 😉 mais parce que quand elles se construisent en suivant un principe, une logique propre, le résultat a parfois une sorte de beauté magique, irréelle, et bien sûr inattendue, l’intérêt de la chose étant notamment d’être surpris par le résultat de sa propre création, puisque je ne fabrique alors qu’une « moulinette » à images, et non les images elles-mêmes…
Là, je viens de pondre ça :
Ça se trouve dans ma rubrique goodies/programmes, où il y a déjà quelques trucs assez bizarres, et c’est un générateur automatique de Mondrian 3D, ou mon3drian. Ou plus exactement d’images à la manière de Piet Mondrian, célèbrissime peintre abstrait.
Ça ne fonctionne que si Java est activé sur votre machine (j’ai écrit ça avec Processing, un environnement de développement assez sympa pour qui souhaite, notamment, produire des images de manière algorithmique, mais qui produit en fait du code Java), et comme Java est un chouïa « lourd » s’agissant d’images 3D, il se peut que l’affichage soit un peu saccadé sur un ordinateur pas très puissant ou modestement équipé pour la 3D.
Évidemment, vous l’aurez compris, ça ne sert à RIEN, mais je me console en songeant qu’avec un peu de chance, à défaut de résoudre les problèmes essentiels de l’humanité, ça pourra immobiliser un certain temps devant leur écran (et donc rendre momentanément inoffensifs) quelques tyrans potentiels, ou quelques délinquants psychopathes amateurs de terrorisme environnemental et faciles à hypnotiser… On peut rêver. 🙂
NB : bien sûr, comme ce programme est d’un intérêt majeur pour l’évolution de la civilisation, j’ai pris soin de placer son code source sous licence GPL…
Sympa l’animation. Je ne m’attendais pas à voir l’objet se créer en transparence. Impressionnant. Bravo Bruno.
mercredi 27 juillet 2011 à 23 h 10 minMerci Hubert. 🙂
En fait il y a un paramètre, alpha, qui détermine la transparence des objets affichés en faces cachées. Ici, quand les blocs ont tous fini de « naître » (ils apparaissent au centre de leur future position et grandissent en quelques instants jusqu’à ce qu’ils atteignent leur taille finale), leur paramètre alpha, qui est à 32 au départ, augmente progressivement jusqu’au maximum, 255. Hélas, la dernière étape (le passage de 254 à 255) apparaît brutale : on passe instantanément d’une transparence encore perceptible à une opacité complète. Du coup, ce n’est pas aussi subtil que je l’aurais voulu, mais je n’y peux rien, je crois.
jeudi 28 juillet 2011 à 10 h 11 minJ’imagine qu’il y aurait moyen d’obtenir cet effet en réécrivant tout le programme pour générer les images avec un raytracer (genre PovRay), mais ça impliquerait de précalculer l’animation. Or ici, ce qui fait (à mon avis) tout l’intérêt du processus, c’est que cette génération automatique (il est quasi impossible d’avoir deux fois le même mon3drian, c’est perpétuellement imprévisible) se fait en temps réel, donc plus comme un processus « vivant » que seulement comme un processus mathématiquement aléatoire.