[NUKE] particules par rapport a la camera
+4
Manu
ducjul
Herronelou
vincepapaix
8 participants
Page 1 sur 1
[NUKE] particules par rapport a la camera
Hello la soupe
depuis la 6.3 il y a des particules dans nuke. Je m'y suis pas mal interesse et la je cherche a faire un fade out des particules proches de la camera, mais mon niveau de script et trigonometrie sont relativement limite!
J'ai tous les ingredients mais je ne connais pas la recette
la liste des ingredients :
une camera
un node particleExpression ou appliquer l'expression finale
la fonction 'pos' pour avoir la position de chaque particule en X,Y,Z (dimension 3)
la fonction 'id' pour avoir le numero de particule
la ou c'est complique c'est que je voudrais que les particules fassent un dissolve a l'approche de la camera, car sinon je pourrais juste regler le near de la camera mais ca va 'popper'
bref pas simple surtout pour une quiche en expression comme moi!
+++
depuis la 6.3 il y a des particules dans nuke. Je m'y suis pas mal interesse et la je cherche a faire un fade out des particules proches de la camera, mais mon niveau de script et trigonometrie sont relativement limite!
J'ai tous les ingredients mais je ne connais pas la recette
la liste des ingredients :
une camera
un node particleExpression ou appliquer l'expression finale
la fonction 'pos' pour avoir la position de chaque particule en X,Y,Z (dimension 3)
la fonction 'id' pour avoir le numero de particule
la ou c'est complique c'est que je voudrais que les particules fassent un dissolve a l'approche de la camera, car sinon je pourrais juste regler le near de la camera mais ca va 'popper'
bref pas simple surtout pour une quiche en expression comme moi!
+++
Re: [NUKE] particules par rapport a la camera
comme tu le sais j'ai pas touche a nuke depuis un moment, et surtout j'ai aucune idee de la syntaxe pour scripter dans nuke.
Mais en gros la premiere etape serait de trouver la distance entre la particule et la cam, si y'a pas de fonction pour ca tu peux le trouver en soustrayant les coordinees de la cam avec celles de la particule. Ca te donne 3 valeurs.
Ensuite grace a ce cher pythagore tu peux trouver la distance en 2D, genre sur l'axe x/y pour commencer.
P est la particule, C la cam. Donc si O est ton point 0,0,0 tu peux trouver la distance en X en faisant CameraX-ParticuleX, et pareil en Y.
Pour avoir la distance en XY, tu applique pythagore, qui nous dit que:
DistanceX^2+DistanceY^2=DistanceCP^2. Donc tu mets tes deux valeurs au carre, puis tu prends la racine caree du resultat, qui est ta distance en 2D (vert). Jusque la je suis sur de mon coup, car je l'utilise assez frequament pour des trucs en 2D.
La suite, je suis pas sur de moi, j'ai pas teste, je reflechis en tapant.
J'aurais tendance a repeter l'etape precedente mais genre en vue top. (du coup X et Z) Je trouverais la distance en 2D dans ce plan, puis je prendrai la valeur de la distance X et trouverais combien de fois la distance XZ est plus grande (multiplicateur=distXZ/distX), puis je prendrais ma distance XY, et je la multiplierais par le multiplicateur.
Je sais pas si tout ca a du sens, et je suis pas sur pour la fin que ca marche. Je te file la piste comme ca me viens, mais ca vient du cerveau d'un gars qui a pas son bac et qui y reflechi a une heure du matin...
Mais en gros la premiere etape serait de trouver la distance entre la particule et la cam, si y'a pas de fonction pour ca tu peux le trouver en soustrayant les coordinees de la cam avec celles de la particule. Ca te donne 3 valeurs.
Ensuite grace a ce cher pythagore tu peux trouver la distance en 2D, genre sur l'axe x/y pour commencer.
P est la particule, C la cam. Donc si O est ton point 0,0,0 tu peux trouver la distance en X en faisant CameraX-ParticuleX, et pareil en Y.
Pour avoir la distance en XY, tu applique pythagore, qui nous dit que:
DistanceX^2+DistanceY^2=DistanceCP^2. Donc tu mets tes deux valeurs au carre, puis tu prends la racine caree du resultat, qui est ta distance en 2D (vert). Jusque la je suis sur de mon coup, car je l'utilise assez frequament pour des trucs en 2D.
La suite, je suis pas sur de moi, j'ai pas teste, je reflechis en tapant.
J'aurais tendance a repeter l'etape precedente mais genre en vue top. (du coup X et Z) Je trouverais la distance en 2D dans ce plan, puis je prendrai la valeur de la distance X et trouverais combien de fois la distance XZ est plus grande (multiplicateur=distXZ/distX), puis je prendrais ma distance XY, et je la multiplierais par le multiplicateur.
Je sais pas si tout ca a du sens, et je suis pas sur pour la fin que ca marche. Je te file la piste comme ca me viens, mais ca vient du cerveau d'un gars qui a pas son bac et qui y reflechi a une heure du matin...
Re: [NUKE] particules par rapport a la camera
Humm c'est pas tres clair... je vais faire genre je le code..
CameraPosition=Cam
ParticulePosition=Par
DistX=CamX-ParX;
DistY=CamY-ParY;
DistZ=Camz-ParZ;
if (l'un des resultats est negatif) {multiplier ce resultat par -1 pour etre positif car une distance est jamais negative};
DistXY= RacineCaree(DistX^2+DistY^2);
DistXZ= RacineCaree(DistX^2+DistZ^2);
Multiplicateur= DistXZ/DistX;uu
Dist3D=DistXY*Multiplicateur;
Ensuite a partir de la (si mon truc est correct) tu peux dire
if (dist3D < debutFade) {opacity = opacity_de_base * pourcentage du fade}.
La partie pourcentage du fade faut entrer une valeur de distance ou ca commence le fade et une ou ca fini. A partir de ca tu fait.
tailleFade= DebutFade-FinFade;
DistInFade=Dist3D-FinFade
%fade = distInFade/tailleFade (en fait c'est pas un %, ca va te filer une valeur entre 0 et 1, que tu peut utiliser directement en multiplicateur d'opacite)
Faut rajouter une condition comme quoi si la distance est inferieure ou egale a la fin du fade alors opacite = 0 (car apres dans la formule ca part en nombre negatifs et t'aura jamais un vrai 0)
Et si tu mets la meme valeur en debut et fin de fade, tu va avoir un beau message d'erreur comme quoi tu peux pas diviser par zero...
Edit: ah non je suis bete ... en essayant de dormir la solution est venue route seule du coup je rajoute ca depuis mon telephone.
en fait la formulae pour chopper dist3D est √(distYZ²+distX²) .
Et j'arrive pas a selectionner la note en dessous pour l'effacer depuis mon telephone ...
[Note: verifier la logique pour trouver la distance 3D, je suis pas sur de mon coup, je testerais dans max demain si j'y pense]
CameraPosition=Cam
ParticulePosition=Par
DistX=CamX-ParX;
DistY=CamY-ParY;
DistZ=Camz-ParZ;
if (l'un des resultats est negatif) {multiplier ce resultat par -1 pour etre positif car une distance est jamais negative};
DistXY= RacineCaree(DistX^2+DistY^2);
DistXZ= RacineCaree(DistX^2+DistZ^2);
Multiplicateur= DistXZ/DistX;uu
Dist3D=DistXY*Multiplicateur;
Ensuite a partir de la (si mon truc est correct) tu peux dire
if (dist3D < debutFade) {opacity = opacity_de_base * pourcentage du fade}.
La partie pourcentage du fade faut entrer une valeur de distance ou ca commence le fade et une ou ca fini. A partir de ca tu fait.
tailleFade= DebutFade-FinFade;
DistInFade=Dist3D-FinFade
%fade = distInFade/tailleFade (en fait c'est pas un %, ca va te filer une valeur entre 0 et 1, que tu peut utiliser directement en multiplicateur d'opacite)
Faut rajouter une condition comme quoi si la distance est inferieure ou egale a la fin du fade alors opacite = 0 (car apres dans la formule ca part en nombre negatifs et t'aura jamais un vrai 0)
Et si tu mets la meme valeur en debut et fin de fade, tu va avoir un beau message d'erreur comme quoi tu peux pas diviser par zero...
Edit: ah non je suis bete ... en essayant de dormir la solution est venue route seule du coup je rajoute ca depuis mon telephone.
en fait la formulae pour chopper dist3D est √(distYZ²+distX²) .
Et j'arrive pas a selectionner la note en dessous pour l'effacer depuis mon telephone ...
[Note: verifier la logique pour trouver la distance 3D, je suis pas sur de mon coup, je testerais dans max demain si j'y pense]
Re: [NUKE] particules par rapport a la camera
y a pas moyen avec une pass de position de tes particules , un norman bubble et un color correct ?
Re: [NUKE] particules par rapport a la camera
Ca risquerai de faire disparaître aussi celle qui était cachées derrière cette methode non ?
Manu- Nombre de messages : 24
Age : 42
Localisation : Londres
Date d'inscription : 08/10/2010
Re: [NUKE] particules par rapport a la camera
Dommage, je l'aurait bien codé, mais y'a pas de nuke 6.3 en 32 bits (oui, j'ai la flemme de changer mon OS vieux de 10 ans ^^)
Shinjipierre- Plongeur
- Nombre de messages : 194
Localisation : Vancouver
Date d'inscription : 11/08/2010
Re: [NUKE] particules par rapport a la camera
Manu a écrit:Ca risquerai de faire disparaître aussi celle qui était cachées derrière cette methode non ?
oui c est clair mais ca evite de se prendre la tete
Re: [NUKE] particules par rapport a la camera
Merci Herronelou pour l'aide, le cote trigo est pas tres dur! Le prob la c'est la syntaxe, car 'pos' te donne la position de la particule mais je n'ai pas encore trouvé el moyen de separer en pos.x pos.y etc... du oup deja la niveau syntaxe je bloque!
Ducjul le truc c'estque j'ai 5000 particules et comme l'a dit manu si je CC la particule devant la cam je ne vais pas voir les particule derriere,
J'ai pas absolument besoin de faire cet expression, mais si, quelqu'un trouve ça peut avoir beaucoup d'utilité, style tu fais pleisn de card de smoke ave une camera qui se ballade dedans ça peut etre cool qu'il y est un fade out quand la card est trop pret de la cam,
+++
Ducjul le truc c'estque j'ai 5000 particules et comme l'a dit manu si je CC la particule devant la cam je ne vais pas voir les particule derriere,
J'ai pas absolument besoin de faire cet expression, mais si, quelqu'un trouve ça peut avoir beaucoup d'utilité, style tu fais pleisn de card de smoke ave une camera qui se ballade dedans ça peut etre cool qu'il y est un fade out quand la card est trop pret de la cam,
+++
Re: [NUKE] particules par rapport a la camera
c'est quel language de prog dans nuke? J'ai jamais fait d'expression dans nuke en fait je viens de realiser. Y'a forcement un moyen de separer les axes..
Re: [NUKE] particules par rapport a la camera
Y'a forcement un moyen de separer les axes..
Oui pour les camera, card ou autres... la syntaxe est easy :
parent.CAM.translate.x
mais pour les particules, si tu mets pos.x ca marche pas!
Bref je vais envoyer un petit mail a the foundry! Si quelqu'un peut aider car les particules ne sont pas tres documentees
Re: [NUKE] particules par rapport a la camera
Il faut mettre pos[0] pour x, pos[1] pour y et pos[2] pour z.
Je n'ai pas réussi à importer la position de la camera dans le particleExpression, m'enfin, je suis un FX, je sais pas utiliser nuke ^^
en tout cas, l'idée c'est dans le particleExpression(j'ai mis la cam au centre du monde pour tester et une valeur arbitraire de maxLength):
camVec = v(0,0,0)
length = mag(pos - camVec)
maxLength = 50
dans pos teste : v(1-length/maxLength,0,0)
Tu verras les particules devenir rouges quand elles vont vers le centre du monde. Tu pourras transposer en opacity évidemment mais c'est plus pratique de voir un changement de couleur.
Je n'ai pas réussi à importer la position de la camera dans le particleExpression, m'enfin, je suis un FX, je sais pas utiliser nuke ^^
en tout cas, l'idée c'est dans le particleExpression(j'ai mis la cam au centre du monde pour tester et une valeur arbitraire de maxLength):
camVec = v(0,0,0)
length = mag(pos - camVec)
maxLength = 50
dans pos teste : v(1-length/maxLength,0,0)
Tu verras les particules devenir rouges quand elles vont vers le centre du monde. Tu pourras transposer en opacity évidemment mais c'est plus pratique de voir un changement de couleur.
Shinjipierre- Plongeur
- Nombre de messages : 194
Localisation : Vancouver
Date d'inscription : 11/08/2010
Re: [NUKE] particules par rapport a la camera
voila le fichier nuke:
http://www.4shared.com/file/tVm7NSN4/test.html?
http://www.4shared.com/file/tVm7NSN4/test.html?
Shinjipierre- Plongeur
- Nombre de messages : 194
Localisation : Vancouver
Date d'inscription : 11/08/2010
Re: [NUKE] particules par rapport a la camera
Tu geres Shinjipierre, une fois que tu donnes la reponse ca parait tres simple au final et ca me degoute encore plus du scripting!
pour recuperer la position de la cam, c'est un peu bizarre mais il faut faire : [value Camera.translate.left.x] pour x, ('left' car mon projet est en stereo)
Encore un grand merci a toi pour ton aide!
woo hoo j'ai plein de particule qui ne disparaisse pas d'un coup!!!
pour recuperer la position de la cam, c'est un peu bizarre mais il faut faire : [value Camera.translate.left.x] pour x, ('left' car mon projet est en stereo)
Encore un grand merci a toi pour ton aide!
woo hoo j'ai plein de particule qui ne disparaisse pas d'un coup!!!
Re: [NUKE] particules par rapport a la camera
J'ai pas tout compris l'expression... en tout cas c'est plus simple que la mienne... (mais j'ai test la mienne dans after et ca marche aussi).
c'est quoi "mag"? et "v" c'est une racine caree ou c'est autre chose?
c'est quoi "mag"? et "v" c'est une racine caree ou c'est autre chose?
Re: [NUKE] particules par rapport a la camera
v = vecteur, je crée juste une position dans l'espace
(pos - camVec) = le vecteur qui va de la camera vers la particule.
mag = magnitude, ça calcule la longueur d'un vecteur (RacineCaree(DistX^2+DistY^2+DistZ^2)).
Le reste est assez simple, j'imagine.
(pos - camVec) = le vecteur qui va de la camera vers la particule.
mag = magnitude, ça calcule la longueur d'un vecteur (RacineCaree(DistX^2+DistY^2+DistZ^2)).
Le reste est assez simple, j'imagine.
Shinjipierre- Plongeur
- Nombre de messages : 194
Localisation : Vancouver
Date d'inscription : 11/08/2010
Re: [NUKE] particules par rapport a la camera
Erf, ouaip en fait ca consiste au meme que moi sauf que j'ai jamais apris a utiliser des vecteurs.. ca m'apprendra a avoir fait un bac arts appliqué et m'etre barré avant la fin.. le niveau de maths est juste tres bas dans cette section.. (j'avais 20/20 toute l'annee sans bosser...)
J'ai presque envie de reprendre des cours de geometrie/trigo car depuis quelques temps des que je me retrouve a ecrire un script je fais des petits pythagores dans tous les sens..
J'ai presque envie de reprendre des cours de geometrie/trigo car depuis quelques temps des que je me retrouve a ecrire un script je fais des petits pythagores dans tous les sens..
Re: [NUKE] particules par rapport a la camera
hey Vincent!
voila mon idee,
sans math ni expression
tu fais un ParticuleCurve mais uniquement pour tes particules trop prets de la camera avec comme Region interne une sphere de la taille que tu veux linkee a ta camera
ou avec un Bounce qui n'agit pas sur les particules mais qui te permet de creer des particules ds un new channel qd elle passe la sphere proche de la camera puis un ParticuleCurve sur ce channel
bon j'ai pas teste mais ca me parait correct!
PS : hey Shinjipierre, je ne vois pas ton fichier ?!
voila mon idee,
sans math ni expression
tu fais un ParticuleCurve mais uniquement pour tes particules trop prets de la camera avec comme Region interne une sphere de la taille que tu veux linkee a ta camera
ou avec un Bounce qui n'agit pas sur les particules mais qui te permet de creer des particules ds un new channel qd elle passe la sphere proche de la camera puis un ParticuleCurve sur ce channel
bon j'ai pas teste mais ca me parait correct!
PS : hey Shinjipierre, je ne vois pas ton fichier ?!
Re: [NUKE] particules par rapport a la camera
Yop Jihro, yep j'y avais pense le probleme est que je n'avais pas trouve de moyen pour faire une smooth transition car avec le bounce ca passe d'un etat a l'autre en une frame et puis tu sais que le bounc en'est pas a 100% correct des fois il oublie des partoches surtout si l'anim est trop rapide!
Quand on cahge de particule a a particule b, elle garde quand meme la meme duree de vie, du coup c'est chiant ca aurait ete bien si quand la particule pass de A a B sa vie recommence depuis 0!
Du coup j'utilise l'expression de Shinjipierre, ca fonctionne bien! c'est juste chiant si je veux changer de camera faut que je passe par un utilitaire de texte, c'est un peu weird ca!
Problem Solved, merci bien
Quand on cahge de particule a a particule b, elle garde quand meme la meme duree de vie, du coup c'est chiant ca aurait ete bien si quand la particule pass de A a B sa vie recommence depuis 0!
Du coup j'utilise l'expression de Shinjipierre, ca fonctionne bien! c'est juste chiant si je veux changer de camera faut que je passe par un utilitaire de texte, c'est un peu weird ca!
Problem Solved, merci bien
Re: [NUKE] particules par rapport a la camera
bien joue!
je n'avais pas pense a tout
merci pour le feedback en tout cas
les particules ne marchent pas du tout pr l'instant dans ma nouvelle boite grrrr....
je n'avais pas pense a tout
merci pour le feedback en tout cas
les particules ne marchent pas du tout pr l'instant dans ma nouvelle boite grrrr....
Re: [NUKE] particules par rapport a la camera
Bravo.
Dernière édition par nicofx le Mer 29 Fév 2012 - 13:39, édité 1 fois
Re: [NUKE] particules par rapport a la camera
jihro a écrit:bien joue!
je n'avais pas pense a tout
merci pour le feedback en tout cas
les particules ne marchent pas du tout pr l'instant dans ma nouvelle boite grrrr....
Quoi tu veux dire que les compo peuvent pas utiliser les particules a DNeg ? c est peut etre qu ils ont une FX team tres competante
Re: [NUKE] particules par rapport a la camera
en fait, on avait pas de temps reel ici avec les particules...
ils ont fini par trouver, c'est un bug de la 6.3v6
the Foundry etait deja au courant
PS: si tu veux manger a midi fais signe ^^
ils ont fini par trouver, c'est un bug de la 6.3v6
the Foundry etait deja au courant
PS: si tu veux manger a midi fais signe ^^
Re: [NUKE] particules par rapport a la camera
hello, je retombe sur ce sujet parce que je cherche a faire pareil ..
je script pas trop, je commence a peine.
et les particules dans nuke je commence aussi ..
Du coup je visualise les expressions a mettre dans le particule emitter .. Mais je ne comprend pas ou les mettre .. Est-ce que quelqu'un pourrait me donner un exemple ?
Merci
je script pas trop, je commence a peine.
et les particules dans nuke je commence aussi ..
Du coup je visualise les expressions a mettre dans le particule emitter .. Mais je ne comprend pas ou les mettre .. Est-ce que quelqu'un pourrait me donner un exemple ?
Merci
Ptiju- Plongeur
- Nombre de messages : 117
Age : 35
Localisation : Paris
Date d'inscription : 09/09/2009
Sujets similaires
» Nuke - Problème particules qui clignotent
» Export camera Nuke vers XSi
» importation de Camera maya dans Nuke
» [NUKE] Camera Mapping qui flick ou saute
» Creer un fichier de projet nuke sans ouvrir nuke !
» Export camera Nuke vers XSi
» importation de Camera maya dans Nuke
» [NUKE] Camera Mapping qui flick ou saute
» Creer un fichier de projet nuke sans ouvrir nuke !
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum