Salut !!
Je suis en train de réaliser un robot pour le WIP commun "méca-war".C'est une frosse araignée qui a un cable muni d'une pince
au bout.
J'ai donc placé une chaîne d'os pour contrôler ce cable avec une cinématique inverse C4D.Les objets formant la pince sont enfants
du dernier os de la chaîne.
:arrow:1er problème:
Quand j'actionne ma cinématique inverse,la chaîne d'os et les objets de la pince pivotent sur Z (roulis) et je ne veux pas.
J'ai pourtant bien mis mes tag de cinématique sur les os avec 0° pour le roulis !!D'accord ça n'empêche pas la pince de tourner,
mais ça devrait au moins empêcher les os de tourner !!et ça ne le fait pas* :coup:!
J'ai aussi essayé de bricoler un XPRESSO pour enrouler et dérouler ce cable.J'ai donc mis une DU actionnant la longueur de tous les os de la chaîne.3 autres DU sont là pour contrôler le pliage des doigts et la rotation de la pince.
:arrow:2ème problème:
Quand j'actionne mon curseur pour réduire la logueur de mon cable et donner l'impression qu'il rentre,tout marche !
sauf que les objets formant la pince réduisent aussi en longueur* :o...alors que ma DU n'est reliée qu'aux os !
apparament,ça me fait ça car les objets de la pince sont enfants du dernier os,mais je vois vraiment pas comment je peux régler le problème :|!!
Si quelqu'un pouvait m'aiguiller ça serait super cool !! :wink:
Voici le fichier pour les courageux* !
fichier cable
site personnel WWW.CREASEAN.FREE.FR
Salut Norris, sans regarder ton fichier ( je suis pas au bureau ), je peux t'expliquer pourquoi pour la question 2... N'oublies pas que tes os sont avant tout des objets déformateurs et que si tu ne définies pas un tag d'influence à 0%, ils sont pris dans la déformation de la hiérarchie.
Le mieux serait sans doute de créer un neutre " pince" qui contiendrait la pince et situé en dehors de la hiérarchie de déformation et de placer un neutre en bout de chaine d'os ( un tip goal si tu as mocca ) et de les lier ( le tip goal et le neutre "pince") via XPresso pour ce qui est de la position et rotation globale.
Pour le problême un : Il te faudrait un objet solver pour forcer l'alignement ( C'est dans les attributs si tu as mocca : définir comme pole vecteur )
kenavo !! // Pinterest KAMIGAZ®
Salut Norris :odile: ,
donc ton problême de mise à l'échelle de ta "main" , c'est simplement parceque tu scales Z le début de ta hiérarchie ( d'ailleur pas besoin de scaler tous tes os .. le 1er suffit .. et il transmet son rapport de scale Z aux autres objets enfants ) .. il faut donc annuler cet effet , par une inversion de rapport de scale Z sur l'os nul du bout par ex :
ou alors tu sorts simplement de ta hiérarchie le groupe d'objets qui ne sont pas affectés par ce scale Z .. et tu relies par expresso les positions ..
tu dois aussi mettre ta DU d'allongement , entre 1% et 100% .. car à 0 %ça "bug"
:odile:
Salut kite !
Merci beaucoup les gars !
sympa ta solution kite pour inverser la mise à l'échelle !
J'ai fais ça avec la solution d'Aurety.En plaçant tous mes objets de la pince dans un neutre en dehors de la hiérarchie
et j'ai aussi mis un neutre au bout de la chaîne d'os et en enfant de celle-ci.Les 2 objets neutres sont reliés par XPRESSO.
Le tout sans MOCCA !
Pour la DU d'allongement,j'ai remarqué aussi que ça bug parfois quand elle est à 0...mais pas à chaque fois.J'ai l'impression que ça bug quand on bouge le curseur rapidement.Si on le manipule doucement,ça y va :o
J'ai testé un truc par curiosité....bouger ma cinématique pour donner une position à mon cable,et ensuite essayer de le rétracter avec ma DU.
OUIAIEAIE !!!là ça fout vraiment le bazard :coup:!!La chaîne d'os ne revient jamais dans la même position!!
Et j'en reviens toujours au même problèmes de priorités.J'ai du mettre mon XPRESSO en "dynamiques" pour que l'objet pince suive bien la chaîne.Ca marche,mais j'ai toujours pas compris pourquoi :cry2:!!
J'imagine que le bug d'au dessus est du aussi à ces priorités ??J'ai essayé aussi de changer ce chiffre,mais je ne sais même pas à quoi il sert et comment bien s'en servir.
Même en rererelisant la partie "priorités d'expressions" dans le manuel,j'arrive pas à bien comprendre le truc.(pour ne pas dire que j'ai strictement rien compris :oops
Pour ce qui est de la rotation non désirée de la pince,ç'est pas bien grave en fait...j'ai toujours une DU qui peut la contrôler.
site personnel WWW.CREASEAN.FREE.FR
salut norris*
j ai une question béte à te poser* *:oops:
pourquois ne pas utiliser une splline* et une extrusion nurb pour le cable* tu lie le point final de ta spline a ta pince* ?? et tu ne manipule que la pince
en plus dans la section expresso y a ca
http://www.frenchcinema4d.com/hub.php?doc=xpression&xpression=982
ou ca
http://www.frenchcinema4d.com/hub.ph...&xpression=943
pour donner une impresion de cable à ta spline
et il existe un plug ( mais je sait plus le noms ) qui crée des cable torsader
paspas
ps je dis ca parceque j y connait rien en os* * :cry2: :cry2:* * :mrgreen:
ha oui très bonne idée Paspas !* :poucehaut: .. j'y avais même pas pensé .. la honte* :oops:
:lol:
Salut Paspas !
J'ai essayé avec une spline et une extrusion contrôlée,mais ça ne marchait pas comme je voulais.Et en plus sur une extrusion contrôlée,on ne peut pas donner la forme qu'on veut au cable.
J'avais testé aussi avec le plugin "splin-motion" et aussi avec une spline IK que je n'ai jamais réussi à mettre en place :roll:!
Les os et une bonne vieille CI est la seule solution s'approchant de ce que je voulais faire...et surtout la seule que je sois arrivé à faire *:lol:
Mais c'est sur que ce n'est pas le seul moyen d'y arriver.
...bon...me reste toujours ce problème...
Pour contrôler l'allongement de ma chaîne d'os,je suis obligé de la remettre en position de départ (os alignés).
Si je donne une forme "en S" à mon cable et que je réduit sa longueur,et qu'ensuite je la rallonge à fond,ma chaîne ne reviens pas en forme de "S" ,mais essaie d'atteindre la cible en allignant les os.
Bon...c'est manipulable quand même,mais ça m'énerve de ne pas comprendre :coup:
site personnel WWW.CREASEAN.FREE.FR
re norris peut tu me monter le mouvement que tu voudrait avec ce cable s il te plait pour plus de comprehension de ma part :oops:
ps j y connait ps grand chose en os mais kiteman vas te dire si je dit une betise
il n est pas possible en xpresso de rentre la longeur des os : avec une constante on rentre cette consrante a tout les os et on fait varier la constante pour ajuster la longeur de la chaine ??
je sens que je vais m efair incendier par kiteman :mrgreen:
paspas
oui ça c'est parceque tu déformes (scale Z ) sur la direction Z du parent , un os enfant incliné .. le résultat est donc un os enfant "tordu" ( = scale Z + scale X ou Y ) ..etcPour contrôler l'allongement de ma chaîne d'os,je suis obligé de la remettre en position de départ (os alignés).
Si je donne une forme "en S" à mon cable et que je réduit sa longueur,et qu'ensuite je la rallonge à fond,ma chaîne ne reviens pas en forme de "S" ,mais essaie d'atteindre la cible en allignant les os.
Bon...c'est manipulable quand même,mais ça m'énerve de ne pas comprendre
ha ba si Norris .. tu déplaces tes points de ta spline dans ton sweepnurbs .. et tu déformes comme tu veux ainsi *:wink: .. Papas a tout à fait raison .J'ai essayé avec une spline et une extrusion contrôlée,mais ça ne marchait pas comme je voulais.Et en plus sur une extrusion contrôlée,on ne peut pas donner la forme qu'on veut au cable.
Après faudrait savoir , ce que tu cherches exactement à faire comme mouvements au final ? ça aidera au choix de ton squelette .
oui c'est l'équivalent de la sweepnurbs .. et tu remarqueras si tu fais l'essai , que les os , en spline IK , ne sont pas scalés , mais déplacés ( = équivalent du paramêtre "length" de l'os , plutôt que son scale Z ) .. ce qui ne cause pas de soucis comme tu as actuellement.aussi avec une spline IK que je n'ai jamais réussi à mettre en place
Edit :* grilled by Paspas
mais non mais non* :mrgreen: .. c'est une solution aussi ce que tu proposesje sens que je vais m efair incendier par kiteman
*
voila , la solution de Paspas .. je pense que ça serait super pour ton robot Chuck* :poucehaut:
http://kiteclem35.free.fr/3D/C4D/Div...orris-3ivx.avi
WAOUUUUUUUUUHHHHH!! :cry2: :cry2:
C'est décourageant de voir avec quelle facilité tu fais ça !Ca fais 2 jours que je me prends la tête avec ça !
En tous cas,c'est bien ce genre de mouvements que je veux!!
J'ai pas trop compris ton expression et plus je réfléchie,plus je m'y perd :lol:!
A quoi sert le noeud constante?
Et aussi le noeud point ?
je vais essayer d'appliquer ça !Ca a l'air bien plus simple !
site personnel WWW.CREASEAN.FREE.FR
il n'y a pas de noeud "constante" ^^ .. c'est juste des noeuds "points" avec l'objet dont on prend le point ( la spline ) et le controlleur qui donne la position du pointA quoi sert le noeud constante?
Et aussi le noeud point ?
le seul truc qui va différer pour ton cas , c'est que si tu veux tout ramener sous ton robot , il te faudra garder ces 4 points de la spline dans l'ordre et non superposés , donc rapprocher les 4 controleurs le plus pres possible ..
:odile:
tu pourras toujours "tricher" en remontant en Y dans le bide du robot ce cordon. :wink:
Parceque l'idéal est que 2 et 3 (qui devraient être 1 et 2 au même nom que ceux des ponits de la ligne, mais je suis maniac :mrgreen: ) soient bien espacés. Là environ à 30% de la spilne au "repos"... non? Enfin je me comprend.... :mrgreen:
2x6coreXéon2.66(24T);64Gram; GTX 1080; OSX10.13.6 ////
Mac Studio 128 Ram ; OSX 12.3.1 ; papiercrayoncerveau;S22Studio;Redshift;Zbrush2022; CS2022
///SHTL 2011 DEMO HERE : http://demo.shtl.org/ /// NEW! 2014 WIP
pfff raleur ! :lol:
oui tu as raison , ce serait plus propre de les renommer 0, 1, 2, 3 .. sinon bein faut animer aussi ces controlleurs intermédiares effectivement en Y local , pour garder une proportion proche de 30% entre chaque
ah bah tu vois je râle mais ma souis pas gourré! (et pourtant c'etait presque au pif :nono: )
maitenant je suis sûr, une validation de msieur Kitemec ça me suffit laaargement :poucehaut:
enfin rien de vitale en effet. Ok je :arrow:
2x6coreXéon2.66(24T);64Gram; GTX 1080; OSX10.13.6 ////
Mac Studio 128 Ram ; OSX 12.3.1 ; papiercrayoncerveau;S22Studio;Redshift;Zbrush2022; CS2022
///SHTL 2011 DEMO HERE : http://demo.shtl.org/ /// NEW! 2014 WIP
pour le decalage des null il suffi y de les relier en xpresso
-- tu prend 3 noeud addition que tu appelle x y et z
-- tu prend le noeud reel en matrice tu rellie x avec x yavec y et z avec z ( logique )
-- tu rentre le vecteur dans la position relative du null qui est enfant ( ici 2 ou 4 je croit )
-- il te suffit de changer une des entrees des noeud addition pour controler le decalage des null en x , y et z
tu n' a plus qu'a relier un des port d entree des noeud addition a ton taq expresso et les positions des null sont controlable
pour le y ( qui nous interesse) tu ne laisse pas le noeud addition a zero mas a 1 par exemple ce qui fait que tes point ne se chevauche jamais meme si des DU sont a zero
j espere ne pas dire de betise je fait ca de memoire je n ais pas c4d ou je suis pour tester :cry2:
paspas
ps (comment suis pas clair ) dont d accord quand je rentre ce soir je vous met une image
:lol: :lol: :lol: :lol:
à oui ça m'interesse, moi j'ai jamais été au dela du position globale et point, alors additions réel tt ça...même bien expliqué...
une image pour les noob :poucehaut:
2x6coreXéon2.66(24T);64Gram; GTX 1080; OSX10.13.6 ////
Mac Studio 128 Ram ; OSX 12.3.1 ; papiercrayoncerveau;S22Studio;Redshift;Zbrush2022; CS2022
///SHTL 2011 DEMO HERE : http://demo.shtl.org/ /// NEW! 2014 WIP
mais qu'est qui racontent :o :cry2:!!
C'est super cool de vous pencher sur mon problème,mais là je suis complètement largué :lol:!
je suis pas contre une tite image aussi :grin:!voir même le fichier .c4d !
un jour ;je vaincrais XPRESSO :lol:!
site personnel WWW.CREASEAN.FREE.FR
voila voila les image
voila deja l xpresso
il est possible se sauter l etape des noeud addition et de rentrer le vecteur du DU directement dans la position relative ,
mais la methodeavecd les noeud addition permet de donner une position de depart au null ( ici 0,0,0)
ce qui permet de demarer les dU A ZERO et du coups rne plus réflechier à la position de depart du null
VOILA CE QUE CA FAIT* ( methode kiteman )
http://www.deltazone.org/~fc4d/autres/paspas_Cable.avi
PASPAS
l' ideal serrais de remplacer par un petit noeud cofee le bazar de noeud addittion mais il est* tard et j ai fait au plus vite
si ca interresse je mettrai les code qui sont par tres compliquer* :boss: :boss:
bon d accord je* *:arrow: pour une fois que je sais quelque chose* :arg:
mais non tu peux rester paspas :lol:!!
Moi je suis preneur !Il y ade grandes chances pour que je n'y comprenne rien,mais on sait jamais :roll:!
Merci pour ton XPRESSO.Je vais tenter de décortiquer ça. :poucehaut:
site personnel WWW.CREASEAN.FREE.FR
tien voila le fichier ca serra plus facile a decortiquer* :mrgreen:
EDIT
j'ai changer le fichier j ai mis le modifier ici aussi pour ne pas encombrer le serveur de l' upload* * :mrgreen:
http://www.deltazone.org/~fc4d/c4d/paspas_Cable.c4d
j ai remplacer les noeud addition par un noeud* addition de vecteur pour alleger l xpresso
cest un noeud coffee qui comporte 2 entree ( des vecteur ) et une sortie (vecteur* egalement )
l' entree1* un de ce noeud sert a definir la position initiale* des point de decalage* ici (0,10,0) et (0,-10,0)
et le DU de l xpresso acrematente le decalage*
j espere que ca t aidera* *
pour info voila les code coffee de noeud
si je peut me permetre une question* on ne jamais quelle passerait par ici* et aurrait la reponce* :mrgreen:Code:main() { var AA = vector(0,0,0); var BB = vector(0,0,0); var CC = vector(0,0,0); AA= entree1; BB= entree2; var a = AA.x; var b = AA.y; var c = AA.z; var aa = BB.x; var bb = BB.y; var cc = BB.z; CC.x=a+aa; CC.y=b+bb; CC.z=c+cc; sortie = CC ; }
est il normal que je ne puisse ( dans le noud coffee de xpresso ) recupere les donnee d un vecteur decaler en port de connection ??
je doit toujours declarer un nouveau vecteur* *'" var AA = vector(x,y,z)* " egaler ce vecteur a mon vecteur declarer en port "
AA=* entree 1 ; et pluit seulement* *recuperer les donneé* par exemple* var ax = AA.x ??
paspas
oula je sais pas trop là Paspas* :oops: .. là c'est une question pour super Base ou super Majoul* :boss:
sinon pour ce qui est du décallage des controlleurs intermédiaires .. il y a moyen de faire ça automatiquement hein , comme ça on s'emmerde pas à les animer .. on anime juste les/l'extrémité(s) :
ceci en disant aux controlleurs intermédiares , de prendre en position Y locale , = la longueur de la spline/3 :
( bon c'est pas exactement la formule mathématique qu'il faudrait pour la vraie position Y , mais le résultat est suffisant je trouve )
*
pas grave kiteman y finiron bien par passer lol
tu croit que norris vas reussir a melanger toute nos solution :twisted: hi hi hi hi hi hi hi
paspas
norris je sais pas , mais moi certaine pas et en aucune façon... :coup:Envoyé par paspas
j'achete plutôt la solution de supakitemec :mrgreen:
2x6coreXéon2.66(24T);64Gram; GTX 1080; OSX10.13.6 ////
Mac Studio 128 Ram ; OSX 12.3.1 ; papiercrayoncerveau;S22Studio;Redshift;Zbrush2022; CS2022
///SHTL 2011 DEMO HERE : http://demo.shtl.org/ /// NEW! 2014 WIP
si on, peut plus rigoler* *:lol:
voila le mix des deux
http://www.deltazone.org/~fc4d/c4d/paspas_Cable.c4d
utiliser le curseur pour definir le pourcentage de division
paspas* :nono:
^^ .. on va le dégouter de l'expresso avec nos conneries :mrgreen:tu croit que norris vas reussir a melanger toute nos solution hi hi hi hi hi hi
:wink: .. po chir mon fils !j'achete plutôt la solution de supakitemec
Paspas c'est super là ton truc .. tu joues sur quoi en fait avec le facteur division ? , j'arrive pas à voir t'as planqué ça dans un coffée ! :lol:
ben le coffee addition de vecteur les code sont au dessus
pour l autre qui divise la spline ( je l ai pas protege moi )
le curseur de l expresso sort un poucentage (de 0.05 a 0.45) je prend la longueur de la pline je la multiplie pour le pourcentage
je rentre cette valeur dans la position Y d un vecteur et l inverce de cette valeur dans un autre vecteur tj a la position y
et je rentre ces vecteur dans le noud addition de vecteur
paspas
:lol: :lol:
Bande de p'tits saloupiauds ! :mrgreen: :mrgreen: :calim:
Alors là c'est plus paumé que je suis,mais complètement à l'ouest !
Me dégouter de l'XPRESSO,non;mais ça donne pas envie de se mettre au COFFEE en tous cas ! :roll:
Je n'étais pas là aujourd'hui,mais j'ai commencé à comprendre ce matin l'XPRESSO!!
Bon...ça a merdé et tout s'est foutu en vrac :lol: mais je ne déséspère pas !
Je m'y remet de suite.
heu...petite question...dans les attributs du noeud "point",à quoi sert la valeur "indice du point"??
C'est bien pour déterminer sur quel point de la spline on agit ? c'est ça ?
Quand je pense que j'ai dans l'optique de créer un jour ma propre cinématique inverse,et bein je me dis que j'ai encore un énorme chemin à parcourir !!
site personnel WWW.CREASEAN.FREE.FR
HI HI HI HI (bien jouer kiteman c est malin loool àBande de p'tits saloupiauds !
oui l'indice c est ne numero du point maiis n oublie pas que ca commece a zero
donc 3 point c ' est : indice 0, 1, 2
norris je ne me sert que du coffee de xpresson et que pour des programme simple comme regle des condition ou des formule
mais si tu veut simplifier tes xpresso tu devra t y mettre sinon l xpresso vire au bordel et je sait ce que je dit :arg:
paspas
arghhh!!
J'y arrive toujours pas :coup:!
J'essaie d'après ta vidéo kiteman.
Je place tous mes noeuds et je les relie.Jusque là tout va bien,mais quand
je change l'indice du point des noeuds points,la spline se barre :o!!
J'ai beau le faire et le refaire,il doit y avoir un truc que je ne comprends pas,mais quoi ? :?
Je place mes objets neutres à l'oeil à peu près au niveau des points de la spline.Ca peut venir de ça ?
Je créé ma spline de bas en haut et le neutre qui va avec le point du bas s'apelle bien 0(ou 1 ici)??
et l'indice du noeud "point" qui va avec ce neutre est bien O ???
Je pense tout bien faire,mais apparament non :coup:!
site personnel WWW.CREASEAN.FREE.FR