News:

SimuTranslator
Make Simutrans speak your language.

Addon Blender: avancement ...

Started by Eric, February 03, 2013, 07:02:17 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Eric

Bonjour à tous
pas présent sur le forum ces derniers temps
voici ou j' en suis dans le scripting:
C' est un script pour Blender pour realiser un 'setting'
celui est établi en fonction du choix utilsateur:
pack size ( 64, 128 ou 192)
et le type de réalisation ( curiosité, habitation ou véhicule)
si on veut faire une habitation, on a le choix de la hauteur ( 7 tiles maxi mais j' ai pas vérifié la limite )

le script met en place des clees d' animations permettant de rendre l' objet sous differents angles
4 pour une tour
8 pour un véhicule

et deux options pour l' éclairage: 'Ambiant occlusion" ou le traditionnel dome de lumiere
le rendu est reglé avec le parametre 'straight aplha' ce qui donne un fond noir qui bloque les débordements du à l'antaliasing, donc plus facile à retoucher

on donne un nom au fichier (exemple /home/eric/Blender/Add_on/Test/mon_beau_camion)
le rendu donnera mon_beau_camion0001.png ,mon_beau_camion0002.png ....ect
ensuite j' ai ajouté de quoi fusionner les differentes vues
deux procédés:
avec gimp en mode batch. J' ai donc fait un script pour gimp qui récupere les 4 ou 8 vues , remplace le fond par la couleur #e7FFFF, assemble les calques en un seul et sauve l' image résultante sous le nom mon_beau_camion.png
C' est impec, mais tres long, du à la lenteur de l' ouverture de gimp!

j' ai donc ajouté au script un second procédé: l' utilisation du node editeur interne à Blender pour fusionner les images

la j' ai passé beaucoup de temps avec un bug que je ne peux résoudre:
avec mon vieux pc lorsque le script lance le rendu, il arrive que blender crash
avec un pc récent et le meme os ( ubuntu xfce ) c' est beaucoup mieux, mais insuffisant
Au final, c' est un bug répertorié ( un gros truc dans les thread et je n' y connais rien ...)
j' ai donc ajouté un message qui s' affiche et ne sert à rien sinon à laisser au systeme un peu de temps
c' est beaucoup mieux, mais insuffisant

une solution alternative est de realiser le setting du node éditor, puis l' utilisateur fait le rendu ( raccouci F12)
la pas de probleme ( pas de soucis avec F12 qui est la meme chose que bpy.ops.render.render() )
sinon que la taille du rendu à changé pour contenir les multiples images et qu' il faut la réinitialiser en sortie de la fusion
Si ce rendu est effectué hors script, il faut modifier le script pour que lors des rendus suivant la caméra possede la bonne taille visible sur la vidéo 3

Un truc a la .on ..

une  autre partie est en cours d' écriture: les fichiers dat

differentes vidéo sur youtube pour illustrer les processus ( pas de son, pc tros vieux)
une "Tour" et fusion des images avec le node editor
http://www.youtube.com/watch?v=Ws2hDnwRs4k&feature=youtu.be

Un 'camion' vite fait , rendu sur fond noir, suppression du fond et images fusionnées
http://www.youtube.com/watch?v=R7WjRu5tx8I&feature=youtu.be

le même camion avec remorque noir, rendu sur fond bleu et fusion des images
http://www.youtube.com/watch?v=n_WHC7PxPks&feature=youtu.be

note 1: sur la derniere vidéo,j' ai rechargé un fichier.blend. en relançant le script on rtrouve tout ses parametres.
note 2: a vérifier le script sous différents os ,principalement  pour les chemins des fichiers. j' ai pas win machin disponible, ni mac os
note 3: il est possible de corriger au pixel pres la position du véhicule pour  chacune des vues , si ce n' est l' ajout de 16 slider (8 pour x et8 pour y)
j'essaye de résoudre le bug du 'node editor' et je poste le script pour que vous puissiez le tester
Si toutefois il correspond à vos attentes


Eric

#1
j' ai ajouté ( toujours pour blender) un multi editeur de fichier dat, pour les véhicules
capture d' écran:


c' est presque abouti, l' import est fonctionnel ainsi que l' édition
Chaque scene possede un éditeur pour le véhicule modelé dans la scene.
une scene spéciale , nommée pour l' instant "finale" fait apparaitre un multi editeur

le processus de création tel que le l'envisage est le suivant: un chassis de base sur lequel est 'adapté' des conteneurs différents

la premiere scene est le modelage du chassis, cabine ect, les clees d'animations ( pour le rendu des differentes vues) ..
apellons cette scene "base" et spécifions un dossier et un nom de fichier ( par exemple "camion")
duplication de la scene
j' ajoute une citerne et je l ' apelle 'MILK'
rendre l' animation ( les 8 vues) par le biais du script , qui nommeras les lmages de la façon suivante: camion_MILK0001.png,camion_MILK0002.png ...ect
fusion des images par le 'node editor' de blender ou par gimp en mode batch
l' image fusionnée sera camion_milk.png et c' est celle ci qui sera utilisée pour les refences aux images du fichier dat
le fichier dat peut etre alors réalisé dans blender soit avec l' aide de l' éditeur de texte intégré à celui ci, soit par l' intermédiaire du script qui permet l' usage de liste de choix ( image à venir) ou l' importation et la modification de fichier dat existants

je veut ajouter un transport de vrac: je duplique à nouveau la scene de base , modelisation du conteneur,type de véhicule  ...ect

et ainsi de suite pour chaque type de véhicule dérivés du chassis de base

La scene dite 'finale', scene vide qui ne sera pas rendue sert simplement à hatmoniser les fichiers dat

Ce qui est pratique c' est que chaque sauvegarde du travail en cours sauve aussi les parametre des fichiers dat, il n' y a pas besoin de les recharger ou de les importer

la derniere implantation envisagée est de faire de la scene de base, celle du chassis, un systeme de parametre ( pour les fichiers dat) commun aux aux suivants ( way_type,engine_type,smoke, vitesse, gear, puissance ...) de façon à ce que l' on ait plus à les preciser dans le script

quelques jours de congés prochainement pour faire avancer tout ça

Autre image