PDA

Voir la version complète : Question Declencheur sur contact



niceboy83
07/02/2015, 14h14
Bonjour,

Serait il possible d'effectuer un mouvement verticale ( ascenseur par exemple ) lorsqu'un contact se produit avec un autre objet.
Par exemple quand une bille arrive sur une plateforme, la plateforme monte.

Merci d'avance

Aurety
08/02/2015, 12h44
Oui via XPresso ( Noeud collision ou les noeuds dynamiques ), ou plus simple avec Mograph basé sur une collision.

niceboy83
08/02/2015, 19h38
Oui via XPresso ( Noeud collision ou les noeuds dynamiques ), ou plus simple avec Mograph basé sur une collision.

Merci pour ta reponse.
Pourrais tu etre un peu plus precis ? Je debute sur c4D

le débutant
08/02/2015, 20h35
ce tutoriel pourrait t'aider : https://www.youtube.com/watch?v=JL4JEMmF1hU

niceboy83
08/02/2015, 22h57
ce tutoriel pourrait t'aider : https://www.youtube.com/watch?v=JL4JEMmF1hU
Merci pour ton tuto.
J'ai bien reussi a detecter une colision entre les deux objet ( le resultat passe de 0 a 1 ).
En sortie du noeud collision, je met l'objet que je veux deplacer, mais je ne trouve pas comment le faire bouger.
Peux tu m'aider ?

Merci

gr4ph0s
08/02/2015, 23h09
Il te suffit de mettre à jour les global Position de ton objet en utilisant le temps http://vimeo.com/60527461

Cependant je t'encourage grandement a regarder des tutos de bases sur xpresso dispo sur greyscallegorilla http://greyscalegorilla.com/blog/tutorials/intro-to-xpresso-in-cinema-4d/

Ou encore le magnifique blog de motionners
http://motioneers.net/category/tutorials/xpresso-lessons/

niceboy83
09/02/2015, 10h46
Cool merci. Je vais essayer ca. Le plus simple si je comprends bien serait de combiner la sortie de mon noeud collision avec un temps ?

Aurety
09/02/2015, 10h55
Vu qu'il te retourne une valeur booléenne ( 0 ou 1 ), le plus simple serait que tu utilises cette valeur comme déclencheur d'un évenement ( des dynamiques par exemple ).
Tu colles ton objet (ascenseur) dans un cloneur ou un objet fracture auquel tu greffes un effecteur temps qui se charge de le faire monter.. L'effecteur est désactivé par défaut. Une fois la collision faite ( tu retournes la valeur 1 dans xpresso que tu donnes au paramêtre activé de l'effecteur et zooouuu ça monte ! ).. par contre il te faudra sans doute faire un switch pour que le 1 reste 1 après la collision.. À tester.:icon_wavey:

niceboy83
09/02/2015, 10h57
Genial merci. J'essaye ca ce midi

Aurety
09/02/2015, 11h09
j'ai édité, j'ai ajouté un fichier.:icon_wavey:
À noter que dans le fichier, j'ai connecté le booléen à l'intensité plutôt..

niceboy83
09/02/2015, 12h31
j'ai édité, j'ai ajouté un fichier.:icon_wavey:
À noter que dans le fichier, j'ai connecté le booléen à l'intensité plutôt..
Je ne peux pas pas acceder a ton fichier.
Ca me marque que je ne 'ai peut etre pas assez de privilege ou quelque chose comme ca

Aurety
09/02/2015, 12h47
hmm ! bizarre.. je vais essayer de le zipper alors.

Aurety
09/02/2015, 13h09
le fichier zippé :

niceboy83
09/02/2015, 13h13
le fichier zippé :
Merci bien !!

J'ai reussi a faire ce que tu m'as dis, tout fonctionne.
Cependant, existe il de retarder un peu la montée.
Par exemple : une bille touche la plateforme, on att 5 s et on monte.
La acutellement lorsque ma bille touche ma palteforme, celle ci remonte directement.
Je pensais a une sorte de retardeur ...

Désolé pour toutes ces questions :icon_frown:

Aurety
09/02/2015, 14h12
Dans ce cas-là cherche du coté du noeud mono-flop ou du flip-flop qui induit un timer dans la réponse. https://www.youtube.com/watch?v=sgN5zcvjhtY
Ou une simple cartographie d'intervalle devrait aussi marcher.

niceboy83
11/02/2015, 22h07
Dans ce cas-là cherche du coté du noeud mono-flop ou du flip-flop qui induit un timer dans la réponse. https://www.youtube.com/watch?v=sgN5zcvjhtY
Ou une simple cartographie d'intervalle devrait aussi marcher.

Hello,

J'utilise donc un noeud flip flop pour controler un effecteur temps mais je n'ai pas trouvé pourle timer ( j'ai donc laissé tomber)
Cependant j'ai un autre pb. Suite a une collision, j'active un flip flop qui active un effecteur temps dans le quel j'impose une translation.
Tout fonctionne, cependant lorsque je veux que ma translation s'arrete ( apres 10cm par ex), mon objet reviens au point de départ.
Est il possible de faire en sorte que lorsque mon objet a bougé, il s'arrete mais reste la ou il s'est arrété ?

Merci

niceboy83
13/02/2015, 11h57
Personne pour m'aider ? :-(

niceboy83
16/02/2015, 22h21
Personne pour m'aider ? :-(
Help !!

niceboy83
17/02/2015, 17h26
SVP je suis vraiment bloqué

Aurety
17/02/2015, 17h40
Pas trop le temps de me pencher sur la question mais peut-être voir du coté du noeud freeze pour loquer la position en y de l’ascenseur une fois updaté.. ou plus simplement par des images clés ! des fois on cherche à automatiser des taches qui trouvent réponse en 3 clics.

Aurety
18/02/2015, 01h52
Bon alors, voilà peut-être un début de solution avec un freeze et 2 noeuds "comparer".. Par contre ce n'est pas parfait car cela tient compte de la frame de départ qu'il colle à Position Y dès la collision. Faut que je réflechisse un peu plus là :icon_mrgreen:

- 1 noeud collision qui retourne une distance plutôt qu'un booléen car du fait des rebonds, ça saute..
- on compare cette distance à une valeur seuil ( qu'on adapte en fonction des propriétés dynamiques de la sphère et du rebond ), si cette valeur est dans les rêgles, alors ok -> fais le job : multiplie par 1 ( yeeehhhhhaaaaaaaa ! what a good job :biggrin: )

Pendant ce temps, un noeud temps balance des images qu'on envoient dans une cartographie d'intervalle qui va nous piloter la vitesse de la montée et na nature du mouvement via une spline par exemple.. On les balancent ( les images !! faut suivre !! ) également dans un second noeud "comparer" pour voir si on est avant une frame particulière ( dans mon cas 60 ), si oui : Ok ça monte, si non, on freeze la position Y de l'ascenseur.

Comme je ne suis pas sur que quiconque içi m'ait compris, voilà le fichier :

niceboy83
18/02/2015, 17h50
Bon alors, voilà peut-être un début de solution avec un freeze et 2 noeuds "comparer".. Par contre ce n'est pas parfait car cela tient compte de la frame de départ qu'il colle à Position Y dès la collision. Faut que je réflechisse un peu plus là :icon_mrgreen:

- 1 noeud collision qui retourne une distance plutôt qu'un booléen car du fait des rebonds, ça saute..
- on compare cette distance à une valeur seuil ( qu'on adapte en fonction des propriétés dynamiques de la sphère et du rebond ), si cette valeur est dans les rêgles, alors ok -> fais le job : multiplie par 1 ( yeeehhhhhaaaaaaaa ! what a good job :biggrin: )

Pendant ce temps, un noeud temps balance des images qu'on envoient dans une cartographie d'intervalle qui va nous piloter la vitesse de la montée et na nature du mouvement via une spline par exemple.. On les balancent ( les images !! faut suivre !! ) également dans un second noeud "comparer" pour voir si on est avant une frame particulière ( dans mon cas 60 ), si oui : Ok ça monte, si non, on freeze la position Y de l'ascenseur.

Comme je ne suis pas sur que quiconque içi m'ait compris, voilà le fichier :

Merci pour ton aide mais je ne peux pas ouvrir ton fichier.
Je n'ai pas d'autorisation