grand99 Napisano 30 Lipiec 2011 Share Napisano 30 Lipiec 2011 Hej Mam pytanie. Posiada ktos linka/info jak zrobic stretchy arm system w 3ds? Wiem jak zrobic ik/fk blending system, tylko chcialbym do tego doddac stretchy arm z kontrola lokcia (ktory tez moze byc rozciagany) z gory dzieki:) Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
grand99 Napisano 1 Sierpień 2011 Autor Share Napisano 1 Sierpień 2011 ok, jakby kogos interesowalo to znalazlem cos takiego:) http://forums.cgsociety.org/showthread.php?t=590979 ............. Create 3 bones (b01,b02,b03) with an ik limb, and one point. Unfreeze length of the bones. Use the point as swivel angle. Add float list controller on the x position of the 2 last bones, with : - a float script calculating distance from point to b01 for b02 - a float script calculating distance from b02 to point for b03 - a float bezier as second slot for b02 and b03 Add float script to the float list weight controller (to avoid animation). Now we need some change handlers : ----------------------------------------- clearlistener() gc() deleteAllChangeHandlers id:#ElbowIk_Sel when select #($'Point01',$'IK Chain01') changes id:#ElbowIk_Sel handleAt:#redrawViews obj do ( if selection[1] == $'Point01' then ( Farm = $'Bone02'.controller.FK_Sub_Control.position.contr oller.x_position.controller Wrist = $'Bone03'.controller.FK_Sub_Control.position.contr oller.x_position.controller Farm[2].value = Farm[1].value Wrist[2].value = Wrist[1].value Farm.weight[1].controller.script = "1.0" Farm.weight[2].controller.script = "0.0" Wrist.weight[1].controller.script = "1.0" Wrist.weight[2].controller.script = "0.0" print "Point Select" ) if selection[1] == $'IK Chain04' then ( Farm = $'Bone02'.controller.FK_Sub_Control.position.contr oller.x_position.controller Wrist = $'Bone03'.controller.FK_Sub_Control.position.contr oller.x_position.controller Farm[2].value = Farm[1].value Wrist[2].value = Wrist[1].value Farm.weight[1].controller.script = "0.0" Farm.weight[2].controller.script = "1.0" Wrist.weight[1].controller.script = "0.0" Wrist.weight[2].controller.script = "1.0" print "ik Chain Select" ) ) deleteAllChangeHandlers id:#Ik01 when transform $'IK Chain01' changes id:#Ik01 handleAt:#redrawViews do ( $'Point01'.pos = $'Bone02'.pos ) deleteAllChangeHandlers id:#Elbow01 when transform $'Point01' changes id:#Elbow01 handleAt:#redrawViews do ( Farm = $'Bone02'.controller.FK_Sub_Control.position.contr oller.x_position.controller Wrist = $'Bone03'.controller.FK_Sub_Control.position.contr oller.x_position.controller Farm[2].value = Farm[1].value Wrist[2].value = Wrist[1].value ) Feel free to try and comment. If needed i can post an example file. ............... tylko mam problem robie 3 kosci, ustawiam IK, nie freezuje kosci, dodaje w float list controller w 2 ostatnich kosciach (b02,b03) pod x position float script i bezier float, tylko co pozniej? jak dodac ten scrypt ktory napisal?? moze ma ktos jakies rozwiazanie? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się