PinMeDown
for DS 1,2,3,4
Introduction
The intended use of this script is to help animators build walk animations and avoid the "slipping and sliding feet" syndrome.
Use
We want to create a 30-frames walk-cycle animation.
From frames 0 to 15, the left foot moves from front to back.
This can be done in 3 keyframes.
From frames 0 to 8, Aiko's weight is on the heel.
At frame 8 Aiko's weight is transferred from the foot to the toes.
PinMeDown will only process frames within the play-range
1 - set the timeline's play-range to cover only frames 0 to 8
2 - select Aiko's left foot with your mouse
3 - add the hip node to the selection by holding your keyboard's CTRL key and mouse-clicking on Aiko's hip
4 - launch PinMeDown.ds
5 - set the timeline's play-range to cover only frames 8 to 15
6 - select Aiko's left toes with your mouse
7 - add the hip node to the selection by holding your keyboard's CTRL key and mouse-clicking on Aiko's hip
8 - launch PinMeDown.ds
repeat this process for the other foot
---
Here's what the script does
It notes the position of Aiko's toes/foot at the beginning of the play-range
then it goes through each frame of the play-range, moving Aiko's hip
by the precise amount required to bring her toes at the initial position
---
note: one of the two nodes must be named "hip" (internal name),
the other one can be anything, a hand, a head, or even something parented to a hand ( like, say, a blade stuck in stone )
---
animation can be tedious and take time,
---
Now if we want to chain many walk cycles we must proceed with care
here is the Z-Translate animation curve for the hip node
for 1 walk cycle, Aiko advances by 140.59 cm
lets use bLooper and repeat this animation loop 4 times
Aiko's hip node now goes from 0 to 141 cm then abruptly jumps back to 0
we will use the ZTranslate channel of Aiko's root node to fix this
frame 0 value 0
frame 30 value 141
frame 60 value 282
frame 90 value 422
frame 120 value 564
frame 150 value 705
for now the ZTranslate channel of Aiko's root node ramps up, but we want it to be a staircase progression
to counteract the hip node's ZTranslate
so we use setInterpolation on Aiko's Root Node ( you may want to lock the 2 other Translate channels and the 3 Rotate channels of that node before proceeding )
mote that the interpolation type for our staircase progression is called "CONSTANT_INTERP"
we now have our 150 frames long walk!
Note that Aiko's speed is not constant, which looks a bit unnatural.
Possibly, one could replace the Hip's ZTranslate channel's 150 key-frames with a linear ramp going from 0 to 705
this would result in some foot slippage, but possibly not too noticeable.
For a perfect walk, i'd probably use mcjAutoLimb in the early stages of the walk-cycle design
Installation
The zip package is found at the bottom of this page
unzip it in your daz content folder, typically C:\Program Files\DAZ\Studio\content\
once installed, it will appear in your content library, under Studio / Scripts / mcasual
The page you are reading is also provided in a zip file.
Version History
Jab 09, 2013 updated documentation, tested it on Daz Studio 4.5
Oct 12, 2009 10:19 PM (or before) : released
License
//===================================================================
// by mCasual/Jacques
//===================================================================
// ( MIT License )
// Copyright (c) <2012> <mCasual/Jacques>
// Permission is hereby granted, free of charge, to any person
// obtaining a copy of this software and associated documentation
// files (the "Software"), to deal in the Software without
// restriction, including without limitation the rights to use,
// copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the
// Software is furnished to do so, subject to the following
// conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
// OTHER DEALINGS IN THE SOFTWARE.
//===================================================================