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.

//===================================================================