Maya: linkare un attributo 'uno a più'

Di: MadMax | 26/09/2020 18:36:42
mi spiego meglio...
Devo eseguire lo switch tra ik ed fk, praticamente ho un elemento con due attributi:
1) ikIndex
2) fkIndex (l'inverso di ikIndex, collegato a 1 mediante un reverse node)
senza problema: cambiare direttamente 1 o tramite un terzo controllo
mio problema:
io ho un controllo per l'IK e uno per l'FK, e vorrei avere un attributo su ognuno dei due controlli per eseguire lo switch, ma contemporaneamente il controllo che cambio mi deve far variare anche l'altro...esempio:
A)controllo ctrl_IK con attributo Fk (si/no...0/1...quello che vi pare)
B)controllo ctrl_FK con attributo Ik (si/no...0/1...quello che vi pare)
C)elemento con i due attributi ikIndex e fkIndex
situazione(sono in IK mode):
ctrl_IK.Fk = 0
ctrl_FK.Ik = 1
elemento.ikIndex = 1
elemento.fkIndex = 0
metto ctrl_IK.Fk = 1
mi deve diventare:
ctrl_FK.Ik = 0
elemento.ikIndex = 0
elemento.fkIndex = 1(questo è automatico)
e mi si attiva l'FK mode
ora il problema è che vorrei poter essere in grado di mettere ctrl_FK.Ik = 1 (quello su cui sto lavorando ora)
con conseguente:
ctrl_IK.Fk = 0
elemento.ikIndex = 1
elemento.fkIndex = 0(automatico)
e mi si attiva l'IK mode
Il problema è far cambiare i valori dei due controlli sia in risposta ad un mio volere(yeah) sia automaticamente...si può?(naturalmente...se si come :) )
grazie

Risposte



Se ho capito bene, il tuo problema è definire uno switch tra ik ed fk...
senza ricorrere alle expression puoi risolvere il problema creando un nuovo oggetto, tipo una curva, alla quale associare un attributo di controllo dello switch, a quel punto col comando set driven key ti sarà possibile associare all'attributo switch tutti gli attributi che vuoi

Di: Ico | 26/09/2020 18:36:42


nono, la cosa è leggermente diversa, per quello non c'è problema, ma capisco che la mia spiegazione è chiara per me, ma non molto per chi non è nella mia testa...vediamo se con quest'altro esempio riesco a spiegarmi meglio:
diciamo che ho tre attributi (in oggetti diversi) chiamiamoli
A
B
C
C deve essere controllato da A e B, e fin qui tutto bene, ci sono vari modi e non ho problemi
il fatto è che se cambio A, C cambia, ma deve cambiare anche B, e devo poter essere in grado di poter cambiare B che a sua volta mi fa cambiare C ma anche A....
Ancora più semplice come discorso con due attributi solamente...
diciamo che ho un cubo A e un piano B ed ognuno controlla la visibilità dell'altro, con due attribti:
A.visibileB (se = 0 B è invisibile, se = 1 B è visibile)
B.visibileA (se = 0 A è invisibile, se = 1 A è visibile)
Il problema sorge perchè quando ne rendo visibile uno, l'altro deve automaticamente 'invisibilizzarsi'...
quindi devo poter mettere
A.visibleB = 1
e mi deve fare queste cose:
1) rendere visibile B
2)rendere invisibile A
3)settarmi B.visibileA = 0
in modo che, vedendo B, se voglio far ricomparire A posso mettere
B.visibleA = 1
e mi deve fare queste cose:
1) rendere visibile A
2)rendere invisibile B
3)settarmi A.visibileB = 0
Il problema è che un controllo deve essere da me modificabile e cambiarmi automaticamente un altro controllo che a sua volta deve essere lo stesso da me modificabile...
Io muovo l'IK, e mi si deve muovere automaticamente l'FK, ma devo anche poter muovere l'FK e automaticamente mi si deve muovere anche l'IK)...Mentre se io linko(ho provato in molte maniere) un attributo, quello mi si blocca per quanto riguarda le mie modifiche dirette....
'facile', no?

Di: MadMax | 26/09/2020 18:36:42