module inscription newsletter haut de page forum mobile

Dismiss Notice

ateliers live resolve avec forest

Ateliers Live Resolve - Formez-vous en ligne tous les mois avec Forest !
Faites rapidement évoluer la qualité de vos étalonnage avec nos ateliers mensuels de 3h.
Toutes les infos

Ateliers et Formations

Attributs MarkerKey

Discussion in 'Adobe After Effects' started by Janou, Dec 12, 2008.

  1. Janou

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    87
    Appréciations:
    +0 / 0 / -0
    hello
    comment lier début ou arrêt d’une expression à la position d’un marqueur de composition. timeToStart = premier marqueur

    Ce qui peut être utile mais que je n’arrive pas a résoudre comme un grand

    mercii:-)
     
  2. Sequelles

    Sequelles Modérateur
    Modérateur So

    Trophy Points:
    11,780
    Likes Received:
    20
    Messages:
    4,261
    Appréciations:
    +2 / 13 / -0
    Si ton marqueur est sur le calque:
    marker.key(1).time
    te donnera le temps en seconde où est ton marqueur
     
  3. Janou

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    87
    Appréciations:
    +0 / 0 / -0
    mm

    hello et merci

    entre temps j'ai trouvé l'expression toute faite dans l'aide:bigsmile:

    très pratique mais manque encore un peut de contrôle... En effet a la place la fonction sinusoïdale j'aimerai une "fonction" boucle du type loopOut("cycle", 2) donc répéter des image clé a chaque marqueur mais je ne sais pas ou placer t dans la fonction et si c'est possible.

    merci par avance
     
  4. felfer

    Trophy Points:
    1,650
    Likes Received:
    4
    Messages:
    618
    Appréciations:
    +0 / 1 / -0
    Bon ben en voyant l'expression, je comprends que je l'aie pas trouvé...
    Il y a des expressions pareille dans l'aide?
     
  5. Janou

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    87
    Appréciations:
    +0 / 0 / -0
    et ouai, j'ai aussi été surpris que toi
     
  6. Sequelles

    Sequelles Modérateur
    Modérateur So

    Trophy Points:
    11,780
    Likes Received:
    20
    Messages:
    4,261
    Appréciations:
    +2 / 13 / -0
    Si tu veux simplement arrêter une expression après un temps t tu fais ça:
    Code:
    if (time<t)
    {
    ECRIRE ICI TON EXPRESSIONS
    }
    else value
    Mais avec une boucle si tu t'arrêtes pas pile à la fine de la boucle tu vas avoir une saute.

    Il y a pleins de solutions selon ce que l'on préfère. Mais ce qui est dommage c'est que l'expression de boucle n'est pas un facteur temps comme les wiggle ou smooth.
     
  7. Janou

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    87
    Appréciations:
    +0 / 0 / -0
    okey merci pour la précision mais peut être qu'il existe un moyen de déclencher a un instant déterminé une suite d'image comme une répétition mais bien peur que ce soit possible qu'en remappage :sad: :)
     
  8. Sequelles

    Sequelles Modérateur
    Modérateur So

    Trophy Points:
    11,780
    Likes Received:
    20
    Messages:
    4,261
    Appréciations:
    +2 / 13 / -0
    Tu peux en effet avec une expression déclancher une animation à chaque fois que tu mets un marqueur sur ton calque. Que ce soit une propriété de remappage temporel ou autre.
     
  9. Janou

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    87
    Appréciations:
    +0 / 0 / -0
    okey, pour en revenir a l'expression de déclenchement au marqueur est qu'elle se déclenche toujours en début de calque avant le 1er marqueur, cela est normal ou pas? pour détourné le problème on scinde le calque mais existe-t-il un moyen sans cela?
     
  10. felfer

    Trophy Points:
    1,650
    Likes Received:
    4
    Messages:
    618
    Appréciations:
    +0 / 1 / -0
    Essaye ça, ça fonctionne bien:

    Code:
    start = marker.key(1).time;
    stop = marker.key(2).time;
    t = time;
    
    if (t>start && t<stop)
    { 
    [I]écris ici l'expression[/I]
    }
    else {value}
     
  11. Janou

    Trophy Points:
    1,000
    Likes Received:
    0
    Messages:
    87
    Appréciations:
    +0 / 0 / -0
    effectivement ça marche bien comme ça, merci merci :)
     
  12. felfer

    Trophy Points:
    1,650
    Likes Received:
    4
    Messages:
    618
    Appréciations:
    +0 / 1 / -0
    de rien de rien...
    Par contre si quelqu'un trouve un moyen d'attribuer une valeur différente avant et après les marqueurs...

    Exemple simple:

    - un solide a 0 de rotation avant le premier marker.

    - passé le premier marqueur, l'expression le fait tourner de quelques degrés jusqu'au deuxième marker. (ex: t*100)

    - là il s'arrète en conservant la valeur de rotation effectuée. (si 2 secondes entre markers: 200 degrés)
     
  13. Sequelles

    Sequelles Modérateur
    Modérateur So

    Trophy Points:
    11,780
    Likes Received:
    20
    Messages:
    4,261
    Appréciations:
    +2 / 13 / -0
    Si tu veux passer d'une valeur 1 à une valeur 2 entre le repère 1 et le repère 2, tu peux simplement utiliser les expressions Interpolation
    Code:
    start = marker.key(1).time;
    stop = marker.key(2).time;
    valeur1 = 0;
    valeur2 = 200;
    t = time;
    linear(t,start,stop,valeur1,valeur2)
    
    et au fait....

    BONNE ANNEE 2009 A TOUS!!!!! :D :D :D
     
  14. felfer

    Trophy Points:
    1,650
    Likes Received:
    4
    Messages:
    618
    Appréciations:
    +0 / 1 / -0
    C'est parfait...:jap: :jap: :jap:

    Oui, une bonne année à tous :-)
     
  15. matttrebor

    Trophy Points:
    1,200
    Likes Received:
    2
    Messages:
    235
    Appréciations:
    +0 / 0 / -0
    Bonsoir à tous.
    After effect n'ayant pas de mémoire, difficile de lui dire "reste comme t'étais à l'image 54...
    La solution Sequelles fonctionne, mais ça ne permet que de faire évoluer un chiffre vers un autre.

    voilà ce que je propose :

    start =thisComp. marker.key("1").time;
    stop =thisComp. marker.key("2").time;
    t = time;

    if (t>start && t<stop)
    {
    x=Math.cos(time*36)*100+200;
    [x,200]
    }
    else {
    x=Math.cos(thisComp.marker.key("2").time*36)*100+200;
    [x,200]
    }

    ainsi, à la fin, le calque reste dans la position du dernier marqueur.
    Je suis pas hors sujet hein ?
     
Loading...

Share This Page

Dernières Occasions

 
Vous souhaitez annoncer sur le Repaire ? Contactez-nous