26
guide basique d’Xpresso par Pablo3D M AG A Z I N E Nick: Pablo3D Nom: Pablo Díaz Pays: Espagne email: [email protected] C4DES MAGAZINE - 4 www.C4DesMagazine.com www.C4Des.com [email protected] 1 Traduit en Français par Clément Méresse.

Guide Basique d'Xpressolpcfoubis.free.fr/Cinema 4D/Guide_Xpresso_fr.pdf2 GUIDE BASIQUE D’XPRESSO C4DES MAGAZINE - 4 [email protected] L’Xpresso est un outil d’animation, et comme

Embed Size (px)

Citation preview

  • guide basiquedXpresso

    par Pablo3D

    M A G A Z I N E

    Nick: Pablo3DNom: Pablo DazPays: Espagneemail: [email protected]

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    1

    Traduit en Franais par Clment Mresse.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.commailto: [email protected]

  • 2GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    LXpresso est un outil danimation, et comme son nom lin-dique, elle nous offre la possibilit danimer rapidement, enprogrammant une animation sans avoir recourir au codeou aux keyframes, mais en se basant pour a sur un sys-tme de nuds. LXpresso ne se substitue pas dautrestechniques danimations mais les complte, car elle permetde raliser de manire plus simple et prcise certaines ani-mations complexes dans lesquelles interviennent de nom-breux lments. Ce guide prtend couvrir les aspects lesplus basiques et fondamentales des possibilits quoffrelXpresso.

    Dans ce systme, chaque nud est reprsent par un rec-tangle portant un nom. Chaque nud a une fonction spci-fique, et on peut les connecter entre eux grce aux ports deconnections. On peut le comparer un circuit lectronique,o chaque lment, comme les diodes, les rsistances,produit ou transforme des valeurs lectroniques (frquen-ces, voltage) selon un schma qui cre les connectionsentre les lments, cest--dire le flux quelles suivent dansle circuit.

    Avec lXpresso, a se passe de la mme manire. De cefait, des nuds comme le Mono-flop doivent leur nom de vrais composants lectroniques qui ont des fonctionssimilaires.Ici, les rsistances, processeurs sont des nuds detypes diffrents : gnraux, logiques, mathmatiques, din-teraction et les frquences, voltages sont des valeursdiffrentes : numriques (temps, des rels, des entiers),de type string (textes), boolens (logiques)Nous dfinissons le dessin du flux des lments, enconnectant des ports de sortie, avec des ports dentreentre les diffrents nuds selon un processus que nousavons besoin dappliquer notre flux dlments

    Bien que lXpresso nous permette de programmer jusqu'un certain point sans code, il ne faut jamais oublier la logi-que que requiert la programmation.Cependant, ce systme est rellement intuitif, rapide etsimple pour quil puisse tre accessible tous ceux quinont pas de connaissances en programmation.

    Guide Basique d Xpresso

    Cest d au fait que lXpresso fonctionne partir dun tag dXpresso. Bien que le for-mat tag dXpresso nous permette dassi-gner des expressions aux objets dunemanire rapide et simple, la manire la pluscommune de travailler est de crer un objetneutre vide, et de lui appliquer un tagdXpresso.Pour vrifier ces procds, nous allons lesraliser dans Cinma 4D au fur et mesurede la lecture de ce guide.

    1 Ouvrir une nouvelle scne dans C4D.2 Crer un objet neutre que lon appelle

    Xpresso.

    3 On lui ajoute le tag Xpresso . Dansles attributs du tag, on peut lactiver oule dsactiver, et configurer la prioritdans les proprits

    4 Double cliquer sur le tag pour ouvrirlditeur Xpresso.

    Comment commencer aveclXpresso, sil ny a ni menu, nifentre, ni option ?

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 3GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    La fentre de lditeur dXpresso est formedune srie de menus, et dune partie vide.Cest l que nous ajouterons nos nudsdXpresso.A gauche de la fentre nous avons deuxonglets : gestionnaire X. qui nousmontre une liste de nuds utilisables, et X-Pool , ou on peut trouver une liste detout les Xpresso disponibles, dans Op-ration systme / Xpresso , organissdans les catgories suivantes:

    Gnralits

    Adaptateur

    Boolen

    Calculer

    Logique

    Interaction : ces nuds contrlent plusieurs objets simultanmentdans des situations complexes, cette partie ne sera pas traitedans ce guide.

    Gnralits : ce sont des nuds de diffrents types mais dusagecourant. Ce sont les premiers nuds que lon ajoute une expres-sion, ce qui nous permet dinteragir avec les lments de la scne,comme les objets, les matriaux, le temps, les collisions entre objets,les dformateurs, les polygones, les points Introduire des valeursconstantes ou variables (nuds de temps), des valeurs alatoires(bruit, valeur alatoire), afficher les rsultats (espion, rsultat), dtec-ter des collisions entre objets (collisions) et bien plus.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 4GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Le nud objet.Xpresso nous permet dinteragir avec les paramtres denimporte quel lment de C4D grce ce nud dusagecourant. Tout lment susceptible dtre gliss, peutsajouter Xpresso : primitives, objets polygonaux, dfor-mateurs, particules, matriaux, textures, lampes, tagsDe cette manire, cet lment se transforme en un nuddobjet qui le contient, duquel on peut extraire nimportequel paramtre que lon peut trouver dans ses proprits :le rayon dune sphre, la rotation dun cube, la force dundformateur, doubler lintensit du canal luminescence dunmatriau, et toute chose dont on peut avoir besoin.Dans les attributs du nud, le champ rfrence montrelobjet que contient le nud.

    Si on glisse un autre objet dans ce champ, a remplaceralancien. Mais la mthode la plus rapide est de glisser unobjet depuis le gestionnaire sur un nud objet dans ldi-teur Xpresso. (NB : si on cre un nud objet, on ajoute unport, ensuite on supprime la rfrence de lobjet, demanire ce que les ports apparaissent comme indfinis, le calcul de lXpresso dans ce tag ne fonctionnera dansaucun des nuds quil contient. Il faut viter cette situationqui survient surtout en copiant et collant des nuds dunditeur dXpresso lautre).Dans limage suivante, on peut voir un nud objet conte-nant une primitive sphre, avec tous les ports dentre et desortie extraits (il manque extraire les ports rfrents auxcomposants de position de rotation et dchelle).

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 5GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    5 Crer un cube et le glisserdepuis le gestionnaire dobjets lditeur dXpresso, ce qui creun nouveau nud.

    Les nuds dXpresso peuvent sebouger, et se fermer en faisant undouble-clic sur son nom. LditeurdXpresso permet de se dplacer etde zoomer sur les nuds de la mmemanire que dans les diffrentes vues(cf. icnes sup. droites).On observe quun nud consiste enun cadre avec le nom de lobjet quilcontient dans la zone suprieure etdeux carrs de couleur dans les coins.Par le carr bleu on introduit les portsdentre, et par le rouge ceux de sor-tie.

    Cest d au fait que le flux dlmentsse dessine de la gauche vers la droitedans lditeur dXpresso (on peutmodifier ce comportement dans Edi-teur Xpresso / Affichage / Entre / Adroite . Pour transfrer les paramtres, onconnecte les ports de sortie avec ceuxdentre. On constate que le quadril-lage lui-mme de lditeur dXpressoest un noeud, qui sappelle GroupeX et qui est un nud contenantdautres nuds. Il a lui-mme ses pro-pres ports dentre et de sortie.

    6 Dplaons le cube aux coordon-nes (-200,0,400) pour quil nenous drange pas. Ajoutons unesphre la scne que lon glissedans lEditeur dXpresso.Nous allons crer une expres-sion qui consistera faire varierla taille sur laxe Y du cube etfonction de la position de lasphre.

    7 Dans lEditeur dXpresso, cliquersur le coin rouge du nud sphre y et choisir le port coordonnes / position globale /position globale . Ca ajoute unport de sortie qui consiste en unpoint rouge et qui sappelle Position globale .

    Observons les ports de sortie dont ondispose (1 port du cube). Beaucoupde ces ports sont communs diff-rents objets, comme les nuds decoordonnes, ou les proprits basi-ques.Dans la sous-partie coordonnes ontrouve les ports correspondant laposition, rotation et chelle de lobjet.La diffrence entre position, rotation,position globale, et rotation globale estque les premiers prennent commerfrent le pre dans lequel estcontenu lobjet. De ce fait, pour lobjet fils les coordonnes (0,0,0) serontles coordonnes de lobjet pre. Letype global prends toujours commepoint de rfrence les coordonnes(0,0,0) globales de la scne.Si lobjet nest contenu dans aucunautre, cest dire na pas de pre, lesdeux types de coordonnes fonction-nent en type Global.

    8 Dans le nud cube, on ajoute unport dentre Taille.Y , dansles caractristiques de lobjet.

    En accdant la liste des ports den-tre, on voit quun certain nombreapparaissent aussi dans la liste desports de sortie. En fonction desbesoin, en introduisant des lmentspar le port dentre, on dit lobjet quilvarie en fonction de ce paramtre, parexemple si on ajoute la sphre unport dentre rayon dans les Caractristiques de lobjet et quonintroduit des lments, le rayon de lasphre changera.Au moyen des ports de sortie, on peutvoir ou extraire nimporte quel para-mtre qui nous intresse, comme lerayon de la sphre.Quelle que soit la valeur que lontrouve dans le gestionnaire dattributsdun objet, dun dformateur, duneparticule elle peut tre extraite ouintroduite au moyen de lXpresso,comme la couleur du maillage, sil estactiv dans le gestionnaire dobjets, siil est visible ou non au rendu, le rayondune sphre, la position du curseurdun dgrad

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 6GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    9 Relions les deux ports en cli-quant et en entranant d'un point un autre, cela cre une ligneque lon peut liminer en cliquantdessus. Selon la nature du port,il est possible de faire plusieursconnexions. Pour le vrifier, surle nud cube on cre un port Rotation.H et on le relie avec Position globale de la sphre1. Observons comment bifurquela connexion sortante en deux,pour approvisionner les deuxports (pour modifier laspect desconnections affichage / modede connexion / Direct, Contraintedes lignes ou Normal (pardfaut) . Si nous dplaons desnoeuds relis, cette liaison estmaintenue et redimensionneraen fonction de la position.

    10 Bougeons la sphre et voyonscomment varie la taille Y et larotation H du cube.

    11 Nous dupliquons la sphre 4 foisde haut en bas dans la hirar-chie. Double-clic sur le nom dela sphre suprieure dans legestionnaire d'objets, et larenommer en sphre 1.

    12 Prenons les 4 nouvelles sphreset les glisser dans l'diteurXpresso. a groupera les 4 nou-veaux noeuds en cascades. Lesrangers en colonnes sous lenud sphre 1 .

    13 Nous leur ajoutons les portsd'entre Position Globale etrayon, ainsi que le port de sortie"Position Prcdente" tous lesnoeuds Sphre sauf au nudsphre 5.

    14 Maintenant nous relions la Posi-tion Prcdente de la sphre 1avec la Position Globale de lasphre 2, la Position Prcdentede la sphre 2 avec la positionglobale de la sphre 3 et ainsi desuite.

    15 Nous ajoutons 1 noeud"Constante" et nous le dupli-quons 3 fois en maintenant latouche CTRL enfonce. Nousverrons que le curseur de la sou-ris change. Nous lchons la sou-ris lendroit o nous souhaitonscopier le noeud. Nous les pla-ons gauche des noeuds des 4sphres.

    Comme nous lavons vu, le processusdXpresso est automatique (il trans-forme directement la position entaille), rapide (il ne requiert pas dcri-ture de code et peu de clics de souris)et interactif (ses rsultats sont refltsdirectement dans les vues de l'diteurd'objets). Ports de sortie Position, Rotation,changement d'chelle pralable : ilsnous permettent de passer de ltatprcdent ltat actuel, c'est--direquils nous restituent le vecteurchelle, rotation ou position d'unmoment prcdent.Pour le voir plus clair, nous allons faireune animation avec une sphre, quiconsistera laisser derrire elle un sil-lage constitu des 4 sphres redimen-sionnes. (NOTE : nous pouvons li-miner ou dsactiver le cube car nousne lutiliserons pas)

    Avant d'accepter le changement denom de l'objet, et puisque nous ensommes changer les noms, nousallons changer le nom de toutes lessphres : cliquer sur la flche vers lebas , ce qui nous permettra de chan-ger directement le nom de ladeuxime sphre, faire ainsi de suitejusqu la cinquime sphre.

    Par dfaut, les sphres sont cresavec un rayon de 100. nous allonsprogressivement rduire le rayon desnouvelles sphres.

    16 Nous choisissons le premiernud "Constante" et dans legestionnaire d'attributs (dplacerla fentre Xpresso si elle le cou-vre) crire "80". Dans les nudssuivants "Constante" crire "60","40" et "20".

    17 Relier chaque nud "Constante"avec le port "rayon" du nudsphre qui lui correspond.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 7GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    18 Dans l'diteur d'objets, nousslectionnons la sphre 1 etnous la dplaons dans une vue(perspective par ex) avec unecertaine vitesse, on observe quilse cre un sillage constitu des4 nouvelles sphres changesd'chelle, lesquelles prennent laposition prcdente de la sphresuprieure, en donnant cet effetque les sphres se suivent lesunes derrires les autres.

    19 Nous ajoutons tous les nudssphre le port d'entre " tapedHistorique ".

    20 Nous choisissons les 5 nudsensemble pour modifier les attri-buts de tous les nuds la fois.Dans "Niveau dhistorique" et"tape dHistorique" nous intro-duisons la valeur "2".

    21 Au nud "sphre1" nous ajou-tons un port d'entre "PositionGlobale".

    22 Nous ajoutons un nud "Bruit"et nous le for-mons de cettemanire:chelle: 1,Frquence: 1,Amplitude: 1000

    23 Nous relions le nud bruit avecle nouveau port d'entre PositionGlobale du nud sphre 1. cli-quer sur jouer et observons lani-mation.

    Toutefois, pour apprcier l'effet nousdevons dplacer trs rapidement lasphre, cest d au fait que les sph-res qui forment le sillage prennentimmdiatement la position de lasphre prcdente. Pour accuser l'ef-fet de sillage, nous allons accder une position prcdente plus loignedans le temps.

    Nous voyons comment la valeur pro-duite par le nud Bruit affecte les 3positions dans l'espace de la sphre 1,en reliant le Bruit avec la position glo-bale. Si maintenant nous essayons dedplacer la sphre1 dans la vue, nousne pourrons pas, puisque toutes lesdonnes de sa position chaque instantsont dtermines par le nud bruit.Le nud Bruit produit des valeurs pro-cdurales qui permettent de donner uncaractre alatoire et fluide aux anima-tions. Il existe aussi le nud ValeurAlatoire qui produit des valeurs trsalatoires, avec de grands sauts dunevaleur lautre, ce pourquoi on recom-mande gnralement le nud Bruit aulieu de Valeur Alatoire, surtout concer-nant les dplacements, rotations ouchangement dchelle.Nous allons ensuite voir certaines par-ticularits des ports d'entre relatifs la position, la rotation et l'chelle, enrestreignant le mouvement alatoireseulement l'axe Z.

    Nous allons ensuite crer une animation automatique dans la scne, en ajoutantdes donnes variables au moyen du nud Bruit.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 8GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    24 Nous ajoutons au nud sphre1le port d'entre "Position Glo-bale.Z". Supprimer la liaison bruit/ Position Globale en cliquant surle lien, lequel disparat.

    25 Nous relions Bruit avec PositionGlobale.Z. Si nous cliquons surjouer, nous voyons qu'il ne sepasse rien.

    Cest d au fait que le port PositionGlobale en tant situ en haut bloqueles donnes des ports infrieurs. Sinous montons le port "Position Glo-bale.Z" au-dessus de "Position Glo-bale" (en glissant et en dposant leport) et que nous jouons lanimation,nous voyons maintenant que lasphre se dplace sur l'axe Z.

    26 Ajoutons un nouveau port d'en-tre "Position Globale.X",en met-tant ce port au-dessus "de Posi-tion Globale Z". et jouer lanima-tion.

    Nous observons que bien que Bruitsoit reli la position Z, le mouvementest effectu sur l'axe X, cest d au faitque, bien que vide (il ne lui entre pasde donnes) il supporte le mme typede donnes (des valeurs relles) etest situ au-dessus du port de la posi-tion Z.

    27 Nous liminons le port "PositionGlobale.X" en faisant un cliquedroit / supprimer. Le port "Posi-tion Globale.Z" doit tre situ au-dessus du port "Position Glo-bale".

    De fait, chaque fois que nous avonsdes ports d'entre non relis, nousdevons essayer de les effacer ou deles placer sous les ports relis, pourviter des conflits entre eux. partir de ce menu contextuel, nouspouvons : Obtenir une information sur le port :il s'avre utile pour connatre le typede donnes qui manie ce port. Renommer le port.

    28 Si nous dplaons la sphre 1dans la vue, nous observeronsque le mouvement est restreintau plan XY, du fait que la valeurZ lui est donne dans lXpresso.

    Comme nous avons vu, un problmecomplexe est compos de plusieurs

    problmes plus simples qui doiventtre rsolus pas pas. Comme danspresque tous les aspects de Cinma4D, dans lXpresso il y a des probl-mes qui peuvent tre rsolus de diff-rentes manires, bien qu'il faille rap-peler que la solution la plus simple estgnralement la meilleure.

    Nous devons essayer de simplifier aumaximum nos expressions, en vri-fiant les donnes entre les nuds un un, en comprenant le comportementde chaque nud dans notre expres-sion et en vrifiant les options de portsdentre et de sortie que nous permet-tent les nuds. Il est possible nous nesachions pas qu'un certain nudextrait la donne que nous cherchonset l'obtenons en utilisant plusieursnuds, comme par exemple le nudTemps.Si nous ne nous en rendons pascompte et voulons obtenir partir dutemps la frame laquelle correspondun certain moment, nous utiliseronsun nud mathmatique pour multi-plier le temps par le nombre de frames(images) par seconde (FPS) pourobtenir la frame de chaque instant.Toutefois, le nud Temps lui-mmeextrait plusieurs valeurs, parmi les-quelles se trouve une valeur "images".

    liminer des liaisons : il effacera tou-tes les connexions qu'a ce port.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • tion perptuelle, insr dans un pointo nous souhaitons connatre unedonne d'une certaine importance tout moment. Toutefois, si notreexpression est complique avec plu-sieurs Espions et que nous voulonsles liminer, nous devrons la recon-necter aux ports entre lesquels il taitsitu. Il s'avre utile comme centralisateurde connexions quand nous ferons desessais.

    Ce nud permet en outre de convertirun type de donne en un autre demanire semblable au nud Univer-sel.

    9GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Adaptateurs:Ils transforment des types de donnesen d'autres. Ils permettent, par exem-ple, de crer un vecteur partir denombres rels (on dfinit un vecteurpar 3 nombres rels, XYZ). Arriv cepoint, il est ncessaire de connatreles types de donnes numriques lesplus communes que nous pouvonstrouver en Xpresso :

    Relle: nimporte quelle valeurentire ou fractionne, positive oungative (123,8, -15, 0,15)

    Entire: une valeur non fractionne,positive ou ngative 123, -15, 1

    Vecteur: les donnes de ce typepossdent 3 valeurs relles (123/45/ 0,89). Des donnes comme laposition (X,Y,Z) dun objet, la rota-tion (H,P,B) ou une couleur(R,G,B) sont de type vectoriel,puisquelles sont formes par 3composants.

    Bien que Xpresso effectue gnrale-ment la transformation des donnesd'un nud lautre de manire auto-matique, il neffectue peut-tre pastoujours correctement la conversion,ou celle que nous souhaitons commetransformer un type de donnes en unautre type concret. Il est ncessairede connatre comment on effectuecette transformation pour comprendrecomment varient les donnes de notreexpression.

    Dans l'exercice que nous avons effec-tu, une conversion automatique seproduit en reliant la "Position Globale"de la sphre 1 avec la "Taille.Y" et la"Rotation.H" du cube, puisque la posi-tion est une donne de type vecteur,et la taille et la rotation sont de typerel. Nous allons connatre quellevaleur extrait le port de sortie "PositionGlobale" et comment on effectue laconversion d'une donne vectorielleen une donne relle. Pour lire lavaleur d'un port concret il y a deuxnuds qui contrlent des valeurs,d'utilisation gnrale, qui sont :

    Rsultat:Ce nud nous montre la valeur quenous assignons son port d'entre.Dans les attributs du nud, nous pou-vons choisir le type de donnes quenous voulons qu'il nous montre.

    Espion:Ce nud possde en outre un port desortie et sutilise comme moniteur dedonnes constantes. Il montrera seu-lement des rsultats en tant reli par

    les deux ports, ce pour quoi il est int-gr dans notre expression.La diffrence entre les deux nudsest que le Rsultat est un nud d'uti-lisation temporaire, pour lire une cer-taine donne dans une connexiondj forme, et l'liminer ensuite pouroptimiser des nuds et que notreexpression soit plus propre, et lenud espion est l pour une utilisa-

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 10GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    29 Nous ajoutons un nud "Rsul-tat" (il se trouve dans la catgorie"Gnrale"). Nous le plaons prsde la sortie sphre 1 et nous lerelions au port de sortie "PositionGlobale" de la sphre 1.

    30 Nous dplaons la sphre 1dans la vue et en la dtachant,nous observerons comment semet jour la valeur du nudRsultat.

    Enregistrer comme "Sphre avec sil-lage.c4d". Pour que Rsultat nousmontre la valeur en temps rel, cest--dire pendant que nous dplaons lasphre, aller dans le menu "Calculer"et cocher l'option "mise jour de lani-mation". Toutefois, cette option utilisedes ressources additionnelles du pro-cesseur de l'ordinateur, et ralentitlanimation dans la vue.

    Par dfaut, le nud Rsultat est confi-gur en mode rel . Dans ce cas, ilnous montre la conversion des don-nes vectorielles de la position glo-bale de la sphre.Comment effectue-t-il cette trans-formation ? Quand nous passons desdonnes vectorielles des rels, lenud nous montre la LONGUEUR duvecteur. Un vecteur est form par 2points (6 coordonnes dans l'espace,3 pour chaque point). Toutefois, ici enXpresso on parle de donnes vecto-rielles, mais elles possdent seule-ment les donnes des 3 coordonnesde lespace dun point concret. Ce quiarrive est qu'en Xpresso dans un vec-teur de position les coordonnes del'autre point qui nous manque sont cel-les de l'origine, c'est--dire, le (0.0.0).La distance, donc, du vecteur par

    exemple (5.2.1) est la longueur qu'il ya entre ce point et le (0.0.0).

    Dans ce cas, le vecteur (5.2.1) a unelongueur de 5,477. Pouvons le vrifieren faisant ce qui suit : Nous ajoutons un nud Constante,

    nous le configurons comme un vec-teur, et on lui donne les valeurs5.2.1

    Nous ajoutons un nud Rsultat etnous le configurons comme valeursur Rel

    Nous les relions et mettons jour lesdonnes, pour que le nud Rsul-tat nous montre la longueur du vec-teur. Pour mettre jour les don-nes, cliquer sur calculer / com-mencer le calcul Xpresso . Il estpossible que nous ayons activercette option plusieurs fois. Uneautre procdure que nous pouvonseffectuer pour mettre jour desdonnes dans le nud Rsultat estde dplacer un objet dans la vue,par exemple la sphre 1, ou dedplacer un peu le curseur de laligne de temps.

    Nous observerons que Rsultat nous montre une valeur relle, quicorrespond la longueur du vec-teur. Comme nous le voyons, laconversion de donnes se produitde manire automatique, Xpressodtecte que nous avons reli unport de sortie de type vectoriel avecun port d'entre de type rel.

    Normalement Xpresso effectue cor-rectement cette conversion, toute-fois dans certains processus il sepeut quil ne le fasse pas ou que

    nous souhaitions transformer ladonne de sortie dans un type dedonne concrte. cet effet nousdisposons du nud Universel ,que nous pouvons configurer avecle type de donnes avec lesquellesnous voulons raliser la conver-sion, par exemple de type entier.On peut aussi utiliser dans ce but lenud Espion .

    Nous ajoutons un nud Universel,nous le configurons comme type dedonne Entier et nous relionsson port d'entre au port de sortiedu nud Constante avec le vecteur(5.2.1). Remarquez comment laconnexion avec le nud Rsultatn'est pas perdue, c'est--dire nor-malement d'un port de sortie nouspouvons extraire simultanmentplusieurs connections vers dautresports dentre pour raliser diff-rents processus la fois avec desmmes donnes sortantes.

    Nous ajoutons un nud Rsultat.Puisque nous disposons d'unemthode rapide, le copier / coller :nous choisissons le nud Rsultat,CTRL+C (Cmd+C) et CTRL+V (Cmd+v) . il se duplique au dessus de l'au-tre, mais sans connexions. Nous ledplaons et le nous relions la sor-tie du nud Universel .

    En mettant jour les donnes nousobserverons comment le nouveaunud Rsultat montre unevaleur entire et lancien une valeurrelle. Encore configur commeRel, puisque c'est la valeur de sor-tie du nud Universel. Dans cecas, en effectuant la conversionVecteur-Entier, Xpresso calcule lalongueur du vecteur, se passe desdcimales (il arrondit la baisse) etextrait cette valeur entire.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 11GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Transformation de Rel/Entier envecteur: Dans ce cas Xpresso prendcette valeur pour chacun de ses 3composants. Nous pouvons vrifierceci dans notre exercice si nousreconnectons le nud Bruit avecla Position Globale de la sphre 1(rappelez-vous de situer ce port au-dessus de "Position.Z"). Si nousexplorons l'animation dans les autresvues nous voyons que le dplacementest identique sur chaque axe de les-pace.Pour contrler les rsultats et vrifiercette conversion, il suffit de changer letype de donne Rel du nud Rsultat en Vecteur. Peut-treaurez-vous besoin de redimensionnerle nud sil ne montre pas totalementl'information des 3 composants duvecteur. Vrifier que les 3 composantsdu vecteur sont identiques.

    Les nuds Rel->Vecteur Vecteur->Rel: le premier nous permet dedfinir chaque composant d'un vec-teur : il nous permet de construire nospropres vecteurs en contrlant lesdonnes de chaque composant. Vec-teur->Rel, au contraire, nous permetd'extraire l'information sparment dechaque composant.

    Les nuds Matrice->Vecteur etVecteur-> Matrice: ils permettentdextraire les composants dunematrice ou de se crer la sienne.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 12GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Les calculateursils effectuent des processus math-matiques comme des oprations alg-briques, trigonomtriques, etc. Lesnuds d'utilisation de base sont :

    Nud distance.Il calcule la longueur entre deuxpoints. Il possde deux ports d'entrede type vectoriel et d'un de sortie detype rel. Si nous avons travailleravec des valeurs constantes, nouspouvons manuellement introduiredans ses attributs les donnes desvecteurs d'entre.Dans l'exercice prcdent o lonexpliquait la conversion d'un type dedonne vectorielle un taux rel,nous pouvons utiliser ce nud pourvrifier la conversion :- Nous ajoutons un nud Distance etun nud Rsultat et nous les relions.

    - Nous relions la sortie du nudConstante avec le vecteur (5.2.1) l'entre1 du nud Distance- Nous ajoutons un nud Rsultat configur comme type de donne

    Rel et nous le relions la sortie dunud Distance .- En mettant jour les donnes, nousobserverons que les deux nuds Rsultat de type Rel montrent lamme valeur, puisque nous calculons

    la dis-tance qu'ily a entrele point( 5 . 2 . 1 )d f i n ic o m m eentre 1et le point( 0 . 0 . 0 ) ,qui estdfini pard f a u tdans lesa t t r i b u t sdu nuddistance.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 13GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Nud Mathmatique :Il permet d'effectuer des oprations algbri-ques de base avec les donnes Xpresso :somme, soustraction, multiplication, divi-sion et module. Le module est le reste de ladivision. Par exemple, dans la division 10/3,le rsultat est 3 et le module est 1 (3x3=9 -> 10-9=1). Les donnes d'entre sonttransformes en rels, complets ou temps.Si nous ajoutons deux vecteurs avec cenud, le rsultat sera la somme de ses lon-gueurs. Nous pouvons introduire autant deports d'entre que nous avons besoin.Dans le calcul on prendra comme premiercomposant de l'opration le port situ plushaut.

    Nud Flottant (Maths) :Son utilisation est semblable celui dunud mathmatique, la diffrence quilpermet de travailler avec davantage detypes de donnes. Nous pouvons, parexemple, effectuer une opration algbri-que avec chaque composant d'un vecteuret extraire le vecteur qui en rsulte. Cela nepeut pas directement tre effectu par lenud Mathmatique. Dans ce cas l'ordredes ports d'entre n'affecte pas le rsultat.

    Nud Degrs :Il transforme en radians et degrs. Il sert mesurer des angles. Il faut rappeler que360 quivalent 2PR (P=pi ; R=radian),c'est--dire 6.283 R (par consquent,180=P R et 90=P/2 R). Les ports des rota-tions des objets travaillent en radians, nonen degrs..

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 14GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Nud Trigonomtrique :Il restitue le sinus, le cosinus, la tangente,etc. de la valeur introduite. Il travaille seule-ment en radians, ce pourquoi il requiert lenud des Degrs si nous avons besoin detravailler des degrs. Ses oprateurs sont :

    Sin: sinusCos: cosinusTan: TangenteSinh: Sinus hyperboliqueCosh: Cosinus hyperboliqueTanh: Tangente hyperboliqueAsin: Arc sinusAcos: Arc cosinusAtan: Arc tangente

    Nud Flottant (Fonction) :Il fait les fonctions mathmatiques suivan-tes :

    Exp : Exponentielle.Ln : Logarithme NprienLn10 : Logarithme Nprien de base 10.Racine CarrePuissanceCarre : puissance de base 2Valeur plancher : il entoure la baisseune valeur relle. Valeur Plafond : il entoure la hausseune valeur relle.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 15GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Nud Formule :Il effectue tout type d'oprations mathmati-ques avec les donnes de ses ports d'entrequi sont de type rel (toutes les entres sonttransformes en rels avant d'tre traites).Dans les attributs du nud, nous dfinissonsla formule que nous souhaitons effectuer, sinous avons travailler avec des angles dansradians ou dans degrs. Avec ce seul nudnous pouvons effectuer des calculs qui d'uneautre manire requirent beaucoup denuds, ce qui aide simplifier notre expres-sion.Pour accder un port, on utilise la nomen-clature $valeur, selon la position du port dansle nud. Nous pouvons aussi travailler enutilisant le nom du port, si nous cochons l'op-tion "Utiliser Noms de Ports" dans leurs attri-buts. L'utilisation de ce nud permet derduire nos expressions, puisque nous pou-vons l'utiliser au lieu des nuds Mathmati-que, Degrs, Trigonomtrie et Absolu et utili-ser plusieurs oprateurs du nud Flottant(Fonction).Les oprateurs qu'il admet sont :

    +,-,*,/,mod: somme, soustraction, multipli-cation, division, module (comme le nudmathmatique).^: puissance(): en utilisant ces oprateurs nous pou-vons isoler des oprations dans la for-mule.abs: valeur absolue.sin, cos, tan, Sinh, Cosh, TanH, ASin,ACos, Atan: les oprateurs Trigonomtri-queslog10, log, exp, sqrt, sqr: (logarithme enbase 10, logarithme, exponentielle, racinecarre, carr) plusieurs des oprateursque nous trouvons en Flottant (Fonction).

    En reprenant l'exercice de la sphre (archive"sphre avec sillage.c4d") et en utilisant lesnuds calculateurs, nous allons crer unmouvement circulaire sur le plan YZ pour lasphre1 avec un rayon donn. La vitesse dela rotation sera de 10 degrs par images.Nous devons rappeler qu'en sachant lerayon et l'angle nous pouvons connatre laposition dans une circonfrence chaquemoment par trigonomtrie.(NOTE : nous pouvons liminer de l'expres-sion les nuds Rsultat que nous avonset le nud Bruit ).

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 16GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Nous ajoutons un nud Temps. Ilextrait des donnes de l'animationcomme le temps en seconds (lessecondes sont montres par desdcimales), limage actuelle, lesFPS...

    Nous extrayons un port image. Nous ajoutons un nud Mathma-

    tique en mode Multiplier. Nousrelions une entre les images etles dfinissons avec une valeur de10, l'autre entre dans ses attri-buts. Quand nous avons des portssans connections, nous pouvonsintroduire des donnes directementde cette manire, en vitant dedevoir ajouter un nud Constante.

    Nous ajoutons un nud Degrs pour convertir les degrs enradians et relions son entre avecla sortie du nud Mathmatique.

    Nous ajoutons deux nuds Trigo-nomtrie . On configure luncomme sinus et l'autre commecosinus. Nous les relions tous lesdeux la sortie du nud Degrs.

    Nous ajoutons deux nuds Mathmatique en mode multi-plier. Nous relions l'entre d'unnud la sortie du sinus, et l'au-tre la sortie du cosinus. Ajouter unnud Constante et crire lavaleur 200. Ca sera le rayon dumouvement circulaire.

    Nous relions la sortie du nud Constante aux deux ports d'en-tres libres des deux nuds Mathmatique .

    Sur la sphre 1, nous ajoutons leport d'entre Position Globale.Y.

    En multipliant le sinus de l'angle par lerayon de la circonfrence nous obte-nons la coordonne Y, et cette mmeopration mais avec le cosinus del'angle nous donne la coordonne Zque nous cherchons.

    Ceci fait, nous terminons de relierles sorties des nuds Multiplier avec leurs ports respectifs Y etZ (on liminera la liaison entre Bruit et Position Globale.Z de lasphre 1).

    Jouer lanimation et voir ce qui sepasse. Nous gardons le travail danscet tat pour le reprendre ensuite(cercle de calcul.c4d). Pour augmen-ter ou diminuer la vitesse il suffit defaire varier la constante 10 parlaquelle nous multiplions les imagesdans le premier nud Mathmati-que

    Maintenant, nous allons effectuer ces mmes calculs maisen employant le nud Formule (NOTE : nous pou-vons l'effectuer en ouvrant de nouveau larchive "Sphreavec sillage.c4d" ou continuer dans le dossier prcdentde manire avoir les deux solutions disponibles, sinous souhaitons faire une vrification des donnes desdeux solutions au moyen de nuds Rsultats ).

    Nous ajoutons un nud Formule , le renommer"Formule : Position Y", et nous ajoutons un portd'entre. Nous relions les images du nud Temps l'entre Valeur 1 du nud Formule . Commeformule nous mettons l'quivalent aux nudsemploys dans la premire solution (sans les guille-mets) : sin($1*10)*200 . Configurer les angles enmode Degrs. Cette formule signifie : calcul en modeDegrs le produit du rayon (200) par le sinus de l'angle($1*10) pour obtenir la coordonne X : sin=sinus (mme

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 17GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    fonction que le nud Trigonomtrie ), $1=les donnesd'entre, dans ce cas, limage actuelle. 10 = la constanteavec laquelle nous faisons que la vitesse de rotation soit de10 degrs par image. 200 = le rayon de la circonfrence surlaquelle nous faisons cette animation.

    Faire un copier/coller du nud Formule , le renommer"Formule : Position Z", lui connecter les images, etdans le nud Formule nous changeons sin par cos .

    Connecter la sortie du nud Formule pour qu'il cal-cule le sinus avec la Position Y de la sphre1, et la sor-tie de celui qui calcule le cosinus avec la Position Z dela sphre 1.

    Jouer et observer lanimation : cest la mme. Sauvegar-der le travail (Cercle de formule.c4d). Pour vrifier ceci,nous pourrions contrler les donnes dans les deux expres-sions avec des nuds Rsultat et vrifier que les deuxvaleurs sont identiques.

    Nous allons ajouter de l'irrgularit au mouvement comme s'ilsimulait le dplacement d'un tre trange. Nous commen-cerons appliquer l'irrgularit la premire expression. cet effet, ou nous ouvrons les archives " cercle decalcule.c4d ", ou nous reconnectons les ports si nous tra-vaillons dans ce document .

    Nous ajoutons un nud Bruit . Renommer le nud"Bruit : Vitesse". Nous changeons leur amplitude 5 etnous le relions la seconde entre du premier nud Mathmatique . De cette manire, ce nud Mathmati-que passe dans ce second port d'entre d'une valeurconstante une valeur variable, en annulant la valeur (10)

    que nous avions dfinie dans les attributs du nud pour ceport dentre.a ese puerto de entrada.

    Jouons lanimation et observons comment le mouve-ment et la vitesse de la sphre sont irrguliers, en pro-duisant des acclrations et dclrations ainsi quedes changements de direction dans le mouvement cir-culaire. Nous pouvons augmenter la dure de l'anima-tion en configurant le Projet, par exemple 250 images.

    Nous allons ajouter un autre mouvement procdural l'axe Xde la sphre pour crer un effet de mouvement zigzag ala-toire : nous ajoutons ce port d'entre la sphre 1, nousajoutons un nud Bruit , renommer le nud "Bruit :Zigzag" et le configurer ainsi: chelle: 10; Frquence:5; Amplitude: 200. Et nous relions les deux ports.

    En jouant lanimation nous verrons que nous avonsajout le dplacement sur l'axe X l'animation de lasphre.

    Finalement, nous allons ajouter davantage de donnes pro-cdurales variables au rayon du mouvement circulaire,lequel est contrl par le nud Constante avec la valeur200.

    Nous ajoutons un nud Bruit form ainsi: chelle: 1;Frquence: 2; Amplitude: 1000. Le renommer "Bruit :rayon" et le relier aux ports des nuds Mathmatique qui ont une connexion avec le nud Constante (200).

    Cliquer sur jouer et observons le mouvement de lasphre qui devient irrgulier et nerveux, comme sic'tait un poisson trange.

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 18GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Pour ajouter ces nuds Bruit notre seconde solutiondans laquelle nous employons des nuds Formule ,nous devons effectuer une srie de changements dans cesderniers, puisque nous avons besoin qu'il fasse les calculsmais avec des donnes variables que nous introduisons partir des nuds Bruit . cet effet, le nud Formule doit disposer de plusieurs ports d'entre. Si on travaille avecplus de deux ports d'entre dans un nud Formule , ilest recommand de renommer les ports et dutiliser ceux-ldans le nud Formule , en activant l'option "Utiliser Nomde Ports", ainsi nous navons pas nous proccuper del'ordre des ports : Renommer le port Valeur 1 du nud Formule :

    Position Y images activer l'option "Utiliser Nomde Ports". Il est possible que la barre du titre dunud devienne jaune. Quand ceci arrivera, Xpressonous indique qu'il y a une erreur dans la configuration dunud et quil ne fonctionne pas correctement.

    Dans notre cas, l'option "utiliser Nom de Ports" est en conflitavec la formule que nous avons ajoute, car la nomen-clature $1 ne sert pas.

    Nous ajoutons deux ports de plus que nous appelle-rons "Vitesse" et "Rayon". Redimensionnons lesnuds pour bien voir tous les ports.

    Dans la formule, changer les paramtres par les nomsdes ports correspondants, en gardant cette configu-ration : sin(images*vitesse)*rayon.

    Configurer le nud Formule du cosinus de manireidentique. La manire la plus rapide est de dupliquerle nud prcdent, de changer "sin" par "cos" et leremplacer par l'ancien nud Formule : Position.Z .

    Nous introduisons aux nouveaux ports d'entre desnuds Formule leurs nuds respectifs "Bruit :Vitesse" et "Bruit : rayon".

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 19GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    - Si nous travaillons avec plusieurs archives, nous pouvons rapporter les nuds Bruit dj configurs de l'expression prcdente : cet effet, nous choisis-sons les 3 nuds (pour ajouter la slection : MAJUSCULES, pour ter :CTRL) dans l'diteur dXpresso et choisir Edition > Copier . Nous retournons l'diteur dXpresso de l'exercice o on a utilis le nud Formule et choi-sissons "Edition > Coller". a collera les 3 nuds en maintenant leurs positionsrelatives. Il se peut que certains soient cachs dans la vue de lXpresso, maissi nous dplaons le groupe de slection, on bouge les 3 nuds en mmetemps.

    Comme nous le voyons, en employant le nud Formule nous parvenons rduire nos expressions de calcul. Toutefois, ils requirent un code pour dfinir laformule, tandis qu'en utilisant d'autres nuds calculateurs au lieu de celui-ci, nousnavons qu relier des valeurs. Ce sont deux faons d'obtenir le mme rsultat,comme cela arrive souvent dans Cinema 4D. DOWNLOAD ARCHIVE

    http://www.c4desmagazine.com/N4/N4/MovimientoCircular.c4d.zipmailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 20GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    Boolen:Ils effectuent des oprations entre desdonnes de type boolen, lesquellespossdent uniquement 2 tats :ACTIV, VRAI ou Si, qui correspond 1, et DSACTIV, NON ou FAUX, quicorrespond 0.Ils sont conjointement utiliss avec lesnuds logiques.

    - Le nud interrupteur

    fonctionne comme un interrupteur delampe, qui l'allume ou elle l'teint. Decette manire, on peut le configurerpour quil donne la valeur VRAI ouFAUX constamment. cet effet, dansles attributs du nud, en activant ouen dsactivant l'option "valeur" nousallumons ou teignons linterrupteur.

    - Le nud NOT (Ngation) :Il convertit une valeur de type Boolenen une autre (Vrai ou Faux et vice-versa).

    - Le nud Boolen :Il compare des valeurs boolennesd'entre et en extrait le rsultat. Lesoprateurs boolens sont : AND, OR,XOR, NAND, NOR, NXOR. On peutajouter autant de ports d'entre donton a besoin.

    Peut-tre toute cette explicationsavre confuse si vous ntes pasfamiliaris avec la programmation,mais vous allez mieux la comprendreavec l'explication suivante du fonction-nement de ce processus. Il faut pen-ser les oprateurs boolens AND etOR comme comparateurs logiquesentre des valeurs boolennes (qui jevous le rappelle ne sont que 2 : Vraiou Faux (1 et 2)).En comparant deux (ou davantage)valeurs boolennes avec l'oprateurAND (dont la traduction est "et"), nousdisons au nud : "Si toutes lesvaleurs d'entre sont vraies, le rsul-tat est vrai", c'est--dire que si aunud on donne la valeur 1 relle

    dans tous ses ports d'entre, le nudsortira la valeur 1 par le port "Sortie".Mais si une ou toutes les valeurs d'en-tre sont FAUSSES (0), le rsultatsera 0.

    L'oprateur NAND effectue la fonctioninverse de AND : "Si toutes les valeurssont Vraies, il est alors Faux".

    L'oprateur OR fonctionne de lamanire suivante : "Si certaines desvaleurs d'entre sont vraies, le rsul-tat est vrai", c'est--dire que si dans lenud Boolen il entre ne serait-cequun 1 , il nous sortira la valeur 1.L'oprateur NOR effectue la fonctioninverse de OR : "Si une des valeursest VRAIE alors a sera FAUX".

    mailto: [email protected]://www.c4des.comhttp://www.c4desmagazine.com

  • 21GUIDE BASIQUE DXPRESSO

    C4DES MAGAZINE - 4 www.C4DesMagaz ine.com www.C4Des.com rev is [email protected]

    L'oprateur XOR restitue une valeurVRAIE quand un nombre INGAL devaleurs sont VRAIES.

    L'oprateur NXOR effectue la fonctioninverse de XOR, c'est--dire quil res-titue une valeur Vraie, quil y ait unnombre GAL de valeurs vraies ou iln'y en ait aucune.

    A quoi tout cela peut tre utile ? Canous permet de restreindre le compor-tement de Xpresso en fonction deconditions. Par exemple, nous avonsune scne constitue dun disque decouleur rouge et 3 sphres. Nous vou-lons la former de sorte que si toutesles sphres se retrouvent dans le dis-que, la couleur de ce dernier sechange en vert. Dans ce cas nous uti-liserons le nud Boolen configur enmode AND. Si nous voulions que lacouleur du disque se change en vertquand a ne serait que pour une seulesphre, il suffirait de configurer lenud en mode "OR". Tout cela nousle verrons mieux en avec un petitexercice pratique.

    LogiqueIl nous permet d'effectuer des opra-tions logiques avec les donnes,comme comparaisons ou conditions.

    Le nud Comparaison : il compare 2valeurs et extrait le rsultat sousforme de valeur boolenne.

    Il nous permet de connatre la relationd'galit entre des donnes, c'est--dire si elles sont gales, diffren-tes, si lune est plus grande ou pluspetite qu'une autre, etc. Nous confi-gurons ce comportement dans lesattributs du nud, dans le menudroulant "Fonction". Ces fonctionssont :

    == (gal). Si les deux valeurs d'entresont identiques, le rsultat est vrai(1). En cas contraire, le rsultat