Quand je parle de ce projet graphique, j'explique parfois que c'est une variété de livecoding. Une notion bien étrange pour les gens de la vrai vie. Je vais donc tenter d'expliquer comment je procède pour créer ce genre de film animé. Bien entendu, la première chose à faire, c'est d'avoir une petite idée du cadre général, par exemple en fixant ses dimensions et ses usages potentiels.
Ensuite, il faut un peu d'organisation,
j'ai déja abordé ce sujet.,
mais reprenons du début :
Il est préférable de partir dès
le départ en répartissant les choses entre plusieurs fichiers.
Les critères sont assez variables, mais quelques règles sont à suivre
quand même.
Tout d'abord, il faut fixer le contexte général par un fichier de « valeurs » dans lequel seront définies quelques constantes telles que la hauteur sous plafond dans le cas d'un batiment, ou une texture qui sera utilisée par divers objets. Ensuite, des fichiers contenant des pieces élémentaires, comme des meubles ou des luminaires. Il suffit alors de rajouter un univers, même sommaire, pour commencer à construire. C'est à ce moment qu'arrive le batiment et sa complexité géométrique.
Pour travailler dans le confort, il faut disposer d'un outillage logiciel adapté : quelques scripts en shell, un bon Makefile, des fragments de Awk (et un minimum d'organisation)\dots
Cet enregistrement de l'évolution des travaux est généré quasi automatiquement par un peu de magie plus ou moins conforme à la classique programmation Unixienne. Première étape, dans le Makefile, il y a une target pour recalculer cette image. Et surtout positionner un flag quand le rendu est terminé. Ce flag est, en fait, la présence d'un fichier dans l'espace de travail : WS/snapflag (un nom trouvé à la rache). |
exterieur.png: exterieur.pov $(DEPS) povray -i$< -K850 $(POVOPT) touch "WS/snapflag" |
Deuxième étape, un script lancé régulièrement par une boucle en shell va demander l'éventuelle fabrication de l'image. Ensuite, si le fichier-drapeau mentionné un peu plus haut est présent, hop, c'est qu'une image neuve vient d'être calculée... ... et qu'on peut donc en faire quelque chose. Dans le cas présent, nous réduisons l'image et nous rajoutons la date de la prise de vue. Et nous prenons bien soin d'effacer le fichier-drapeau. Quand à la troisième étape, c'est juste un script (avec du brotchage dedans) qui va assembler les images pour en faire une vidz (état du chantier vers avril/mai 2022) qui clignote avec outrance... |
make exterieur.png 2> $ERR errcode=$? if [ $errcode -ne 0 ] ; then exit 1 fi if [ -r "WS/snapflag" ] ; then # do some weird stuf with the pic rm "WS/snapflag" fi |
Un domaine où l'imaginaire rencontre la technitude dans les méandres de l'infraconscience du poviste. Et de là naissent les lignes de code conduisant à l'apparition d'une scène cyclique (voire angiogène) présentant certains éléments du lieu inconnu. Un espace de jeu, un bac à sable, propice à toutes les constructions improbables. On peut enfin déployer une géométrie subversive, voire même futile. |
#declare ShowWall = 0; #include "batiment.inc" essai.png: essai.pov $(DEPS) povray -i$< +K216 $(POVOPT) |