Index de l'article |
---|
Rotation de roue |
Installation |
Utilisation Rapide |
Documentation |
exemples de configuration |
lorsqu'on va en frame 1, le script s'initialise à chaque fois. retournez-y si vous changez le nom d'un objet, ou souhaitez en rajouter un nouveau etc.
lorsque le debug est actif, la console affiche un message du type :
.wheel rotation script v0.5 - init
auto-select :
-------------
found wheel_FT.R
found wheel_FTDK.L
found wheel_BK.R
found wheel_BK.L
found plane
wheel list :
------------
wheel_FT.R : diameter auto,steering True, OutOfTrue 0
wheel_FTDK.L : diameter auto,steering True, OutOfTrue 10
wheel_BK.R : diameter auto,steering False, OutOfTrue 0
wheel_BK.L : diameter auto,steering False, OutOfTrue 0
plane : follow mode
dans le cas présent, on lit que 5 objets on été trouvé par le script.
mis à part l'objet plane, tous ces objets tourneront sur eux-mêmes, et leur diamètre sera récupéré automatiquement et réévalué a chaque frame ('diameter auto').
'steering True' indique que l'objet tournera 'à droite' ou 'à gauche'. False indique que la rotation des roues est effectué par ailleurs (un follow path, un chassis qui tourne déjà et auquel sont parentées les roues etc).
remarquez que les objets avec FT dans leur nom ont la valeur True.
'OutOfTrue' (désaxé en anglais) est égal a zero sauf pour le second objet : cela indique que la seconde roue sera désaxée de 10 degrés.
remarquez que l'objet contient le mot DK.
enfin 'plane follow mode'indique que l'objet plane ne tournera pas sur lui-même, mais qu'il suivra la trajectoire de l'animation comme ceci :
Dim lights Download Embed Embed this video on your site
pour changer le comportement du script, il faut aller dans le texte editor et selectionner wheelrotation.py.
il faut ensuite modifier les variables qui se trouvent sous USER CONFIGURATION.
les deux variables les plus importantes sont :
- wheelNames (liste. valeur par défaut : ['wheel'] )
liste les premiers caractères des noms des objets à modifier. - wheelList (liste. valeur par défaut : [] )
noms exacts des objets à modifier.
pour chacune des listes, le format de description d'un objet est :
[ wheel_name/family_name_1, Diameter, Steering, OutOfTrueAngle ]
- wheel_name/family_name ( string )
nom d'objet exact (wheelList) ou famille de nom d'objets - premiers caractères (wheelNames) - Diameter ( float / 'auto' / 'follow' - défaut 'auto' - optionnel )
diamètre de l'object en Blender Unit. généralement égal à dimZ x scaleZ.
'auto' : le script évalue le diamètre de l'objet à chaque frame. (boule de neige)
'follow' : l'objet ne tourne pas sur lui-même, mais suit la trajectoire. si 'follow', pas la peine de spécifier les arguments suivants qui ne servent à rien dans ce cas. - Steering ( booléen - défaut False - optionnel )
True : la roue suit la trajectoire.
False : la roue est tourne pas (roue arrière d'une voiture) - OutOfTrueAngle ( float - défaut 0 - optionnel )
valeur en degrés pour désaxer la roue.
les variables suivantes influencent les objets dont les arguments optionnels sont absents :
- RotateZ ( string - défaut 'FT' )
si ce mots-clés figure dans le nom d'objet, l'objet sera une roue directrice.
ne s'applique pas aux roues avec une contrainte path. - OutOfTrue ( string - défaut 'DK' )
si ce mots-clés figure dans le nom d'objet, l'objet sera désaxé. - ootAngle ( float - défaut 10.0 )
valeur en degrés du "désaxage"
les variables suivantes influencent tous les objets :
- angle ( float - défaut 130.0 )
si pour une roue directrice, d'une frame à l'autre, l'orentation varie davantage que cette valeur la roue ne tournera pas sur elle même et fera marche arrière. - initFrame (int - défaut 1 )
c'est le numéro de frame auquel le script est réinitialisé : il (re)génère la liste des roues et les autres paramètres.
il n'est pas nécessaire de s'y rendre si vous modifiez le path ou une position d'objet : mais c'est obligatoire si vous rajouter/enlever/renommez des roues ou les valeurs des deux listes. - debug ( booléen - défaut True )
affiche les infos d'initialisation dans la console. False donne un script muet. - verbose ( booléen - défaut False )
console blender très bavarde pour le debug et les curieux qui ont du temp. concerne les objets de type 'steering'. 6 lignes par roues..
parentage des roues directrices :
le script marche également lorsque les roues sont parentés a un autre objet (CTRL-P) mais pas pour les roues directrices :
il faut parenter les roues directrices à travers un copy location.
si a la frame init + 1 la roue commence a tourner dans le mauvais sens, tournez-là approximativement dans la direction de la trajectoire de l'anime.