Molettes ERC dans POSER 4, 5 et 6 (technique avancée)

Transcription

Molettes ERC dans POSER 4, 5 et 6 (technique avancée)
Molettes ERC dans POSER 4, 5 et 6 (technique avancée)
Par Nanomonster alias Jo
Sur SubPoserForum.fr
Premièrement, voici quelques mises en garde :
1- Ce tuto est applicable aux versions 4, 5 et 6 de Poser.
2- Ce tuto est réalisé avec la version anglaise de Poser. Pour cette raison, les noms des menus et des options de
Poser peuvent différer de la version francaise. À vous de voir... Si quelqu'un possédant une version francaise de
Poser, veut me fournir les termes exact des menus francais, ce sera bienvenu !
3- Veuillez noter qu'il s'agit d'un tuto relativement avancé. Donc, si la perspective d'ouvrir et d'éditer
directement un fichier .CR2 vous terrorise, arrêtez de lire immédiatement! Ce tuto n'est définitivement pas pour
vous... Si, par contre, vous voulez devenir un "JEDI" de la Molette, cette technique est un incontournable !
4- Voici ce que vous n'apprendrez pas dans ce tuto : Vous n'apprendrez pas à fabriquer des modèles .OBJ, ni à
les importer dans Poser. Vous n'apprendrez pas non plus, à articuler des objets dans Poser. Ces étapes, même si
elles sont nécessaires pour créer et articuler vos propres objets sont couvertes par d'autres tutos.
5- Ce tuto commence en utilisant un objet qui a déjà été importé et articulé dans Poser et qui est donc déjà un
fichier .CR2
Tout ce dont vous avez besoin pour le tuto se trouve ici. : http://www.turcotteonline.com/Tuto ERC/Tuto
ERC.zip
Après avoir téléchargé ce fichier ZIP, faites-en l'extraction depuis votre répertoire Poser. Celui-ci contient deux
fichiers .CR2 qui seront installés dans le sous-répertoire "Runtime:Libraries:Character:New Figures". L'un
s'appelle "Tuto ERC" et l'autre, "Tuto ERC final".
Il y a aussi un fichier appellé "Tuto.OBJ" qui sera installé dans le sous-répertoire : "Runtime:Geometries:JT"
Pour commencer, ouvrez Poser et sélectionnez l'onglet "Figures", puis le répertoire "New Figures". Ouvrez
ensuite, l'item "Tuto ERC" qui s'y trouve et positionnez la caméra pour le voir correctement ( il est un peu gros
et je n'ai pas pris le temps d'ajuster sa taille).
C'est l'objet de base sur lequel nous allons travailler. Il s'agit d'un objet très simple, composé de trois éléments
articulés appelés Box01, Box02 et Box03. Comme pour n'importe quelle figure Poser, chaque élément a déjà
ses propres molettes d'ajustement standard que l'on retrouve dans l'onglet "Parameters" de chacun (exemples :
scale, xScale, zScale, yRotate, zRotate, etc...).
La finalité de ce tuto est d'obtenir le même objet, mais muni d'une Molette ERC (pour Extended Remote
Control). La fonction d'une telle molette est d'en contrôler simultanément une ou plusieurs autres...
Pour voir ce que ca donne, effacez la première figure et ouvrez plutôt : "Tuto ERC Final". À premìère vue, la
figure obtenue semble parfaitement identique à la précédente, mais ce n'est pas le cas. Celle-ci contient en effet,
une molette ERC que vous trouverez à l'onglet "Parameters" dans la section "BODY". Cette molette est placée
dans un sous-groupe de molettes nommé "Adjust" et elle s'appelle "bend" : pour "plier" en francais. Si vous
l'actionnez, vous constaterez alors qu'elle fait pivoter les trois sections de l'objet simultanément...
Pour en arriver là cependant, il faut faire un peu de gymnastique...
Le premier outil dont vous avez besoin est un éditeur de texte brut comme Wordpad, puisqu'il faut s'en servir
pour éditer directement notre fichier .CR2.
Tout d'abord, utilisez votre éditeur de texte pour ouvrir le fichier "Tuto ERC.CR2" qui se trouve dans le
répertoire "Runtime:Libraries:Character:New Figures". Je vous conseille cependant de faire une copie de
sauvegarde pour éviter de descendre tous les Saints du ciel si jamais quelque chose tourne mal !
Je dois admettre que les entrailles d'un CR2 n'ont rien de très attirant, mais il n'y pas de problème quand on sait
ou l'on s'en va.
La première ligne que vous devez rechercher et trouver dans le fichier débute par "actor BODY:XX". (Veuillez
prendre en note le numéro XX suivant actor BODY:, puisque vous en aurez besoin un peu plus loin)
Cette partie du fichier est celle qui définit les molettes de l'onglet "Parameters" de la section "BODY" de notre
objet. Ces molettes s'appliquent à l'objet dans son ensemble et c'est donc un bon endroit pour placer notre
molette ERC.
Voici comment les molettes sont définies et apparaissent dans la section BODY:
groups
{
groupNode Transform
{
parmNode scale
parmNode xScale
parmNode yScale
parmNode zScale
parmNode yrot
parmNode xrot
parmNode zrot
parmNode xtran
parmNode ytran
parmNode ztran
}
}
Pour ajouter un nouveau groupe de molettes dans la section "BODY", il faut tout simplement le définir comme
suit, à l'intérieur des accolades de la sous-section "GROUPS" (mises ici en vert), ce qui donne :
groups
{
groupNode Adjust <----Le nom de notre nouveau groupe de molettes
{
parmNode bend <--------Le nom de notre nouvelle molette
}
groupNode Transform
{
parmNode scale
parmNode xScale
parmNode yScale
parmNode zScale
parmNode yrot
parmNode xrot
parmNode zrot
parmNode xtran
parmNode ytran
parmNode ztran
}
}
Cette modification (en bleu) crée en fait un nouveau groupe de molettes dans lequel il y a notre toute nouvelle
Molette ERC, que j'ai baptisée "bend", ce qui équivaut à plier en francais.
Cette molette n'accomplit cependant rien du tout car elle n'est pas définie... Pour la définir il faut ajouter une
nouvelle section au fichier que l'on peut placer immédiatement après la définition des groupes de molettes et
qui ressemble à ceci :
valueParm bend <---------------Le nom interne de notre molette ERC
{
name bend <----------Le nom affiché de notre molette ERC
initValue 0 <----------La valeur initiale de notre molette (le plus souvent 0)
hidden 0 <----------Molette visible si 0, invisible si 1
forceLimits 0 <---------Mouvement limité? : oui=4 non=0
min -1 <------------La valeur minimale de notre molette
max 1 <------------La valeur maximale de notre molette
trackingScale 0.01 <---La sensibilité de notre molette
keys
<---????
{
static 0
k 0 0
}
interpStyleLocked 0
}
Voici donc à quoi le tout doit ressembler, une fois les modifications insérées :
channels
{
groups
{
groupNode Adjust
{
parmNode bend
}
groupNode Transform
{
parmNode scale
parmNode xScale
parmNode yScale
parmNode zScale
parmNode yrot
parmNode xrot
parmNode zrot
parmNode xtran
parmNode ytran
parmNode ztran
}
}
valueParm bend
{
name bend
initValue 0
hidden 0
forceLimits 0
min -1
max 1
trackingScale 0.01
keys
{
static 0
k 0 0
}
interpStyleLocked 0
}
zOffsetA zOffset
{
Bon, récapitulons...Jusqu'à maintenant, nous avons créé un nouveau groupe de molettes contenant une nouvelle
molette ERC, dans la section "BODY" de notre objet. Cette molette est en fait une molette maîtresse que nous
pouvons maintenant utiliser pour contrôler d'autres molettes. Voici comment...
Pour les fins du tuto, j'ai choisi de contrôler les molettes "xRotate" de chacun des sous-objets Box01, Box02 et
Box03.
Il nous faut donc trouver chacune de ces molettes et modifier la sous-section "xRotate" de chacune de la facon
suivante:
Tout d'abord, trouvez la ligne qui débute par "actor Box01:XX" et descendez ensuite jusqu'à la section
"rotateX xrot". Voici ce que vous devriez voir :
rotateX xrot
{
name xrot
initValue 0
hidden 0
forceLimits 0
min -360000
max 360000
trackingScale 1
keys
{
static 0
k 0 0
}
interpStyleLocked 0
}
Pour modifier cette molette de facon a ce qu'elle soit "l'esclave" de notre molette ERC "maîtresse", il faut lui
ajouter le code suivant :
valueOpDeltaAdd
Figure XX <-----Le même No qui correspond à la ligne "actor BODY:XX"
BODY:XX <-----"
"
"
"
"
"
bend
<-----Nom interne de notre molette ERC
deltaAddDelta 45.000000
Notez que l'orthographe est extrêmement important et que Poser ne tolère aucune erreur. De plus, les
majuscules et les minuscules doivent être scrupuleusement respectées.
Une fois l'insertion effectuée nous avons :
rotateX xrot
{
name xrot
initValue 0
hidden 0
forceLimits 0
min -360000
max 360000
trackingScale 1
keys
{
static 0
k 0 0
}
interpStyleLocked 0
valueOpDeltaAdd
Figure XX
BODY:XX
bend
deltaAddDelta 45.000000
}
Cette modification fonctionne comme suit : lorsque la molette ERC "bend" est manipulée, la molette "esclave"
c'est-à-dire, "xRotate" de Box01 est actionnée simultanément. La valeur du paramètre deltaAddDelta
détermine ici l'influence de la molette maîtresse sur la molette esclave. Dans Poser, la valeur d'une rotation est
exprimée en degrés. En conséquence, l'influence de la molette maîtresse sur la molette esclave équivaudra à 45
degrés de rotation.
Ceci signifie que si la molette "bend" est placée à sa valeur maximale de +1, l'effet de rotation sur xRotate sera
de +45 degrés. Par contre, si la molette maîtresse est placée à sa valeur minimale de -1, l'effet de rotation sera
de -45 degrés.
Maintenant, il faut répéter la même opération pour la molette xRotate de la section Box02. Cette fois par contre,
nous fixerons la valeur de deltaAddDelta à 60, ce qui donnera un effet de rotation plus prononcé :
rotateX xrot
{
name xrot
initValue 0
hidden 0
forceLimits 0
min -360000
max 360000
trackingScale 1
keys
{
static 0
k 0 0
}
interpStyleLocked 0
valueOpDeltaAdd
Figure XX
BODY:XX
bend
deltaAddDelta 60.000000
}
Finalement, il faut faire encore la même opération avec le sous-objet Box03 et cette fois définissons la valeur
de deltaAddDelta à 90.
rotateX xrot
{
name xrot
initValue 0
hidden 0
forceLimits 0
min -360000
max 360000
trackingScale 1
keys
{
static 0
k 0 0
}
interpStyleLocked 0
valueOpDeltaAdd
Figure XX
BODY:XX
bend
deltaAddDelta 90.000000
}
Voilà c'est tout ! Il ne reste maintenant qu'à sauvegarder le nouveau fichier .CR2 et vérifier que notre molette
ERC contrôle bien l'objet de la facon souhaitée. La technique n'a que votre imagination comme limite et permet
de contrôler non seulement les molettes de rotation, mais aussi celles de réglage de taille (scale), et de position
(tran). De plus, si vous en avez plusieurs, leurs effets sont additifs !