module inscription newsletter haut de page forum mobile

Dismiss Notice

formations etalonnage sur davinci resolve

Nos Formations Etalonnage avec Forest reviennent en octobre !
Adoptez une réelle méthodologie d'étalonnage professionnelle et atteignez vos objectifs créatifs avec nos formations intensives sur 3 jours
Toutes les infos
Dismiss Notice

Formation Lumière - Pratique Intensive du 14 au 16 octobre à Paris
Formez-vous avec cet atelier de pratique intensive dans des conditions exceptionnelles ! Formation finançable.
Toutes les infos

Ateliers et Formations

expressions autofocus

Discussion in 'Archives moteurs' started by haroldc, May 3, 2007.

Tags:
  1. haroldc

    Trophy Points:
    550
    Likes Received:
    0
    Messages:
    33
    Appréciations:
    +0 / 0 / -0
    Bonjour à tous,

    Je travaille avec une expression qui permet à ma caméra de faire le point sur un objet en fonction de sa position :

    target = thisComp.layer("target");
    v1 = target.toWorld(target.anchorPoint) - toWorld([0,0,0]);
    v2 = toWorldVec([0,0,1]);
    dot(v1,v2)

    Ma question est la suivante : que dois-je ajouter dans cette expression pour l'appliquer à tous les calques de ma comp ?

    Pour être plus clair : Je voudrais que le point se fasse simultanément avec le déplacement de la caméra.


    Merci

    harold_chlewicki
     
  2. logicalnot

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

    Je sais pas d'ou tu les sors… mais avec des expressions pareilles t'es toujours le bienvenu !

    J'ai déjà vu une expression qui permet de changer de "cible" dans la durée… mais je la retrouve plus. Dsl
     
  3. haroldc

    Trophy Points:
    550
    Likes Received:
    0
    Messages:
    33
    Appréciations:
    +0 / 0 / -0
    je l'ai trouvé ici
     
  4. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    Il te suffit de changer la "target" au cours du temps..
    Comment ?
    - tu crées un Nul avec un paramètre glissière (Slider)
    - tu surlignes avec la souris le mot "target" dans l expression de Dan et avec le sélecteur d epxression (l escargot ou pickwhip), tu vas chercher ton slider
    - tu animes le slider avec des clés de maintien à chaque fois que tu veux mettre le focus sur un calque (choisi des valeurs entieres ! car elles representeront l'index des calques (typiquement entre 3 et....si tu as ton Nul en #1 et ta camera en # 2)

    ps: son nouveau site est vraiment excellent d'ailleurs je ne l'avais pas encore vu :love:
     
  5. haroldc

    Trophy Points:
    550
    Likes Received:
    0
    Messages:
    33
    Appréciations:
    +0 / 0 / -0
    Merci Nab pour tes précieux conseils !

    Par contre il y a quelque chose que j'ai du mal faire :

    target = thisComp.layer("focus").effect("Paramètre glissière")("Curseur")
    v1 = target.toWorld(target.anchorPoint) - toWorld([0,0,0]);
    v2 = toWorldVec([0,0,1]);
    dot(v1,v2)

    j'ai un message d'erreur : "la fonction target.toWorld n'est pas définie"


    En tout cas merci, j'avais pas pensé aux index de calques comme pouvant être réglés avec un slider.

    harold_chlewicki
     
  6. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    ta première ligne doit ressembler à cela (il faut rajouter un value à la fin pour bien récupérér la valeur -numérique- du slider) [note: version anglaise ici !]
    Code:
    target = thisComp.layer(thisComp.layer("Null 1").effect("layerIndex")("Slider").value);
     
  7. nab17connection

    Trophy Points:
    1,900
    Likes Received:
    1
    Messages:
    1,051
    Appréciations:
    +0 / 0 / -0
    et pour devancer ta prochaine question :D :
    "oui ok mais le focus se fait par saccade, passe d'un calque à l'autre de façon discontinue, moi je veux un truc "coulé" !"

    tu peux convertir cette expression en images clés (cf assistant images clés) et supprimer les clés inutiles pour que l interpolation agisse.
     
  8. haroldc

    Trophy Points:
    550
    Likes Received:
    0
    Messages:
    33
    Appréciations:
    +0 / 0 / -0
    oui j'ai vu.
    j'ai réussi à tout traduire sauf "layerIndex"
    (si je comprends bien ce sont les numeros de mes calques que je devrais keyframer avec le slider)

    target = thisComp.layer(thisComp.layer("focus").effect("layerIndex")("Curseur").value);
    v1 = target.toWorld(target.curseur) - toWorld([0,0,0]);
    v2 = toWorldVec([0,0,1]);
    dot(v1,v2)

    'impossicle de trouver l'effet nommé layerindex"


    je cherche encore...



    mille fois merci
     
    #8 haroldc, May 3, 2007
    Last edited: May 3, 2007
  9. haroldc

    Trophy Points:
    550
    Likes Received:
    0
    Messages:
    33
    Appréciations:
    +0 / 0 / -0
    Pour l'effet "coulé" :

    Et si au lieu de convertir l'expression en images clés je n'interpole que les clés de mon slider ?
     
  10. haroldc

    Trophy Points:
    550
    Likes Received:
    0
    Messages:
    33
    Appréciations:
    +0 / 0 / -0
    En fait, j'ai eu le temps de m'arracher les cheveux sur le côté "coulé" de la trajectoire de la caméra et des lampes :D
    Mais je m'en suis sorti...
    Reste plus que la mise au point !
     
  11. haroldc

    Trophy Points:
    550
    Likes Received:
    0
    Messages:
    33
    Appréciations:
    +0 / 0 / -0
    A priori ça marche !

    target = thisComp.layer(thisComp.layer("focus").effect("Paramètre glissière")("Curseur").value);
    v1 = target.toWorld(target.anchorPoint) - toWorld([0,0,0]);
    v2 = toWorldVec([0,0,1]);
    dot(v1,v2)


    Merci !
     
Loading...

Share This Page

Vous souhaitez annoncer sur le Repaire ? Contactez-nous