tag:blogger.com,1999:blog-2084927510147669008.post5382329927591383887..comments2023-05-09T11:30:07.220+02:00Comments on le freelance saucisse-after-effect-expressions: Moléculele freelance saucissehttp://www.blogger.com/profile/10953279147594316170noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-2084927510147669008.post-45235970951949641932009-08-28T17:54:11.660+02:002009-08-28T17:54:11.660+02:00Bonjour Fred,
sans rentrer dans les détails de ta...Bonjour Fred,<br /><br />sans rentrer dans les détails de ta prose, au sujet du retard :<br />Le but est que chaque "maillon" ait son propre retard. Tu veux donc que le retard soit fonction de sa position dans le rang, en partant de la source.<br />Il s'agit donc d'utiliser son index "local" comme multiplus du retard.<br />Dans ma vidéo "c'est pourtant pas compliqué", la 1ere vidéo attribut un retard aléatoire avec random fixe.<br />Pour la 2eme vidéo, le retard est un peu plus compliqué à gérer :<br />Les maillons proches des sources ont peu de retard, et plus on s'éloigne de chaque extrémité, plus on est en retard; voilà comment j'ai procédé :<br />L'index des maillons varie de 1 à x<br />En utilisant un LINEAR, tu peux transformer ce 1->x en 0->PI<br />Disons que cette valeur qui va de 0 à PI vaut A.<br />Donc tu as B=abs ( sin(A)) qui varie bien de 0 à 1, et tu as bien 0 pour les valeurs en extrémité (1 et x pour les indexes)<br />Tu as donc bien ta valeur plafond pour le centre.<br />Tu as donc une valeur B qui te sert de variable pour le décalage.<br />Voilà j'espère avoir été clair, et j'espère ne pas avoir du de bêtise...le freelance saucissehttps://www.blogger.com/profile/10953279147594316170noreply@blogger.comtag:blogger.com,1999:blog-2084927510147669008.post-61304092707419039722009-08-28T16:57:52.887+02:002009-08-28T16:57:52.887+02:00Update;
En mettant ça:
a=thisComp.layer("A&qu...Update;<br />En mettant ça:<br />a=thisComp.layer("A").transform.position.valueAtTime (time-0.04);<br /><br />A la place de ça:<br />a=thisComp.layer("A").transform.position<br /><br />J'obtiens un retard. Mais ce n'est pas trés souple car chaque solide doit avoir une valeur time differente (time-0.04, time-0.05...).<br />Breuf, c'est le boxon.<br />J'arrête de troller ce beau blog.<br />tcho,<br />FredAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-2084927510147669008.post-62511422437788893662009-08-28T13:10:30.266+02:002009-08-28T13:10:30.266+02:00Salut monsieur Saucisse.
Merci pour ce Blog passi...Salut monsieur Saucisse. <br />Merci pour ce Blog passionnant. Je travail sur after depuis quelques années mais mon utilisation des expressions <br />était jusqu'à lors plutôt limitée(un wiggle, un loopOut et basta). Grâce à votre travail et à celui d'autres altruistes dans votre genre, <br />j'ai largement progressé dans le domaine.<br />Cependant, le monde merveilleux des expressions comporte encore pour moi quelques zones d'ombre (et pas des moindres).<br />Ce qui m'amène à vous faire part de ma problématique:<br /><br />Dans le cadre de ma prod, je doit concevoir un fil de téléphone (ceux en boucles) qui doit être extensible et qui se déforme <br />en fonction de l'animation de ses extrémités. <br /> <br />J'ai d'abord pensé à un bête psd déformé en marionnette mais le résultat est calamiteux (les boucles s'étirent au lieu de se déformer indépendamment.<br />j'ai donc entrepris d'appliquer un de vos tutoriaux; le "restons groupés et en ligne, merci" du 5/02/2009.<br />Avec ce principe, on a que deux solides à animer (un troisième au milieu serai top), ce qui est tout de même pratique pour nos amis animateurs. <br />Dans cette perspective, les solides intermédiaires seraient des compos contenant une boucle dessinée en vecteur. <br />Ces dernières seraient "Time remapées" en fonction de leurs écartements. Ainsi, le dessin de chaque boucle changerai en fonction de l'étirement du fil.<br />Je pensais à un truc du genre sur le time remap:<br /><br />A=this_comp.layer("Boucle_A");<br />B=this_comp.layer("Boucle_B");<br />point1=A.toComp(A.anchorPoint) ;<br />point2=B.toComp(B.anchorPoint);<br /><br />delta=sub(point2, point1);<br />distance=length(delta);<br /><br />t =linear(distance, 181, 916.3, 40, 0) /25;<br />if (distance > 1500) t = 1 ;<br /><br />à voir.<br /><br />Ce sur quoi je bloque, c'est la position de chaque maillons.<br />Avec ça sur la position:<br /><br />a=thisComp.layer("A").transform.position;<br />b=thisComp.layer("B").transform.position;<br />plafond=thisComp.layer("plafond").index;<br />nombre=thisComp.layer("sol").index-plafond-1;<br />Retard=time-3/25;<br />R=thisComp.layer("A").transform.position.valueAtTime (Retard);<br /><br />V=sub(b,a);<br />I=index-plafond;<br />increment=linear(I,0,nombre+1,0,1);<br />a+V*increment<br /><br />Et ça sur l'orientation:<br /><br />a=thisComp.layer("A").transform.position; <br />b=thisComp.layer("B").transform.position;<br />lookAt ( a , b )<br /><br />J'obtiens une ligne droite (puisque tous les solides s'alignent sur le vecteur) qui s'étire à loisir.<br />Par contre je n'arrive pas à faire en sorte que les solides aient un retard qui permette une déformation du fil en courbes <br />(comme dans votre exercice " C'est pas compliqué pourtant..." du 20/03/2009)<br />Je sais que tous est dans votre blog pour réaliser mon prop mais j'avoue pédaler dans la semoule depuis deux jours.<br />Peut être pourriez vous m'orienter sur ma démarche?<br />Sinon tans pis, je continuerai à parcourir le blog avec assiduité.<br />Merci de m'avoir lu et désolé pour le commentaire à rallonge (pas trouvé de mail pour vous contacter).<br />Bonne continuation.<br /><br />FredAnonymousnoreply@blogger.com