Forum: Poser - OFFICIAL


Subject: ERC or Electronic Remote Control

GigaRoc opened this issue on May 18, 2003 ยท 12 posts


lesbentley posted Mon, 19 May 2003 at 8:45 AM

GigaRoc. You can get all the technical details you need from Rob The Whiz's and/or Nerd's site. Here is a striped down, no frills version of how to slave the fingers to a master channel in the hand.

#---Code for Master BendFingersL--- valueParm BendFingersL { name BendFingersL initValue 0 hidden 0 forceLimits 0 min -100000 max 100000 trackingScale 1.000 keys { static 0 k 0 0 } interpStyleLocked 0 } #---END Code for Master BendFingersL--- Place the above Master Channel code in the left hand actor, under: actor lHand:1 { name lHand on bend 1 dynamicsLock 0 hidden 0 addToMenu 1 castsShadow 1 includeInDepthCue 1 parent lForeArm:1 inkyParent BODY:1 nonInkyParent lForeArm:1 channels { #---Your code goes here--- Now place the folloing code in each finger joint channel that you want to slave to the master, under the line "interpStyleLocked 0" #---Code for Slaves BendFingersL--- #---Goes under "interpStyleLocked 0" line in slave channel--- valueOpDeltaAdd Figure lHand BendFingersL deltaAddDelta 1.000000 #---END Code for Slaves BendFingersL--- Now do the same for the right hand replacing the linses in the master valueParm BendFingersL with: valueParm BendFingersR and in the slaves lHand BendFingersL with: rHand BendFingersR

The line in the slaving code that says "deltaAddDelta 1.000000" is the controle ratio, you can vary the effect the master has on the slave by changing this. It's a lot of work in a text editor, because there are so many finger joints. Using a cr2 editor like CR2Builder for instance, can speed things up a bit. Do it a bit at a time, testing your Work, and making backups. It may be better to impliment the slaving code as a pz2, that way you could apply it to any character that uses the conventional actor names, but you would still need to insert the master valueParm channels manually because a pose file can't add new channels, it can only iject things into preexisting channels.