Thursday, October 6, 2011
Tuesday, May 10, 2011
Wednesday, April 20, 2011
Wednesday, March 30, 2011
Thursday, March 24, 2011
Sunday, March 20, 2011
My first update for the Ik arm rig script:
Having made sure my buttons work...it was time to put them to work...collecting information and doing stuff with that information...
The first actions should be creating the shapes for the wrist controller and the elbow pole vector controller...for now they are both boxes and have a set size...in later versions the size will be scalable by the user before the script runs..center their pivots...move the positions and orient the shapes to the bones...then align their pivots accordingly...and freeze their transformations...
To freeze transformations on an object I took a section of code provided by Max, since the tools provided by Max are macro's in themselves, and pasted it inside a function.
fn FreezeTransform item =(local CurObj = itemif classof CurObj.rotation.controller != Rotation_Layer do(-- freeze rotationCurObj.rotation.controller = Euler_Xyz()CurObj.rotation.controller = Rotation_list()CurObj.rotation.controller.available.controller = Euler_xyz()/* "Localization on" */CurObj.rotation.controller.setname 1 "Frozen Rotation"CurObj.rotation.controller.setname 2 "Zero Euler XYZ"/* "Localization off" */CurObj.rotation.controller.SetActive 2)if classof CurObj.position.controller != Position_Layer do(-- freeze positionCurObj.position.controller = Bezier_Position()CurObj.position.controller = position_list()CurObj.position.controller.available.controller = Position_XYZ()/* "Localization on" */CurObj.position.controller.setname 1 "Frozen Position"CurObj.position.controller.setname 2 "Zero Pos XYZ"/* "Localization off" */CurObj.position.controller.SetActive 2-- position to zeroCurObj.Position.controller[2].x_Position = 0CurObj.Position.controller[2].y_Position = 0CurObj.Position.controller[2].z_Position = 0)
The next section of code is my own. Going step by step commenting as I go making things less confusing. Adding the Ikhandle, setting the preferred angle and adding the constraints is the point I'm at now. Currently I have explicit names for these functions. I would like to refer back to the local variables assigned earlier in the script, but for now to get things moving I have given them specific names of scene objects.
)--next update Add selectable controller shapesBox lengthsegs:1 widthsegs:1 heightsegs:1 length:4 width:4 height:4 mapcoords:on name: "ik_arm_ctrl" color: bluewCtrl = $ik_arm_ctrl --wrist ControlwCtrl.pivot = [0, 0, 2] --NEEDto change on next update to centerPivot of any objectparent $ik_arm_ctrl $Bip01_L_HandAlignToParent--alignpivot to wrist bonewBone = wristobj --wrist BonewCtrl.rotation = wBone.rotation --match rotationswCtrl.pos = wBone.transform.position --match positionsfreezeTransform wCtrl --freezeTransformations--Ik stuffIKSys.ikChain bicepobj wristobj "arm_ikh"--add ik handleiksys.ikchain $Bip01_L_UpperArm $Bip01_L_Hand "IKHISolver"select $arm_ikhIKChainControl.setPrefAngles() --assume preferred angle--add position constraint--add rotation constraintbox lengthsegs:1 widthsegs:1 heightsegs:1 length:2 width:2 height:2 mapcoords:on name: "elbow_pv" color: blueeCtrl = $elbow_pv --wrist ControleCtrl.pivot = [0, 0, 1] --NEEDto change on next update to centerPivot of any objecteBone = elbowobj --wrist BoneeCtrl.rotation = eBone.rotation --match rotationseCtrl.pos = eBone.transform.position --match positions)
The next update will be a completed script for rigging an Arm with IK. Future updates will include...right or left arm capability, the FK arm Rig and an option for both IK and FK plus switching.
Monday, March 14, 2011
The Start of E's Ez Rig Tools
Rigging a character for animation is not an easy task to accomplish...especially if you dont have the right tools...
Having rigged a character by hand using 3ds max..I found out quickly that...there has to be an easier way...
I took it upon myself to write a few scripts to help me automate many of the things I thought were important.
There are plenty of auto riggers out there...but tend to over complicate things...and are bulky or confusing to use....I just want simple tools...for the simple tasks...ie "E's Ez Rig Tools" A set of scripts to ease the pain of scripting with 3ds max.
A few features I would like to include are...
Rig Arms/Legs for Ik or Fk or Both with switching
Rig simple Ik spine with twist
with selectable controller shapes and colors
..all this to come soon...
i've started by building my window..and a few buttons...to rig an arm with ik...
to do this on any arm chain means the proper bones have to be targeted for any action to be executed on them....
i used pickbuttons to store the names of the targets the user selects...
then hit the rig button!
the scripts will do the rest....
its a work in progress...with updates coming soon..
Subscribe to:
Posts (Atom)