mcjKeepOrient

for DS 1,2,3,4

Introduction

mcjKeepOrient is the perfect companion for my other script, mcjAutoLimb

select a node and mcjKeepOrient will compute the rotations required to maintain this body part's orientation, for the duration of an animation

History

i think this script was released in 2010 then 2012 and 2015 and when i have to convert my site to google's new framework somehow it reverted to the 2010 version

01/13/2022 - 2015 version replaces the 2010 version for DS3/DS4 but the DS1/2 is the same as 2010

Use

In this animation you can see that the ankle of the foot with the red dot

hovers at a constant height in relation to the floor.

Obtaining this neat ankle trajectory was obtained using mcjAutoLimb.

This is a 60 frames animation, Usually forcing the foot to stay still

as it rests on the floor, means spending possibly an hour, tweaking the ankle rotations,

and when you're done, there's visible trembling and jumps .

That's mcjKeepOrient's purpose

in our example, i set the timeline to a playrange of frames 0 to 60

i go to frame 0

i position the foot with great care like this

in our example, i set the timeline to a playrange of frames 0 to 60

i go to frame 0

i position the foot with great care like this

i make sure the foot is selected

i launch mcjKeepOrient

i select "playrange" as the range of frames to be processed

i leave step at 1 since i want i ankle keyframe per frame

i click the Do It button and , it's done

the script went through each frame and repositionned the foot so

that it is always oriented as the first frame of the playrange

the result, extreme precision and we saved hours of work :)

in the animation below, mcjKeepOrient was used to make Aiko look at us as she moves her body

License

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

// by mCasual/Jacques

// You can use this script freely for personal or commercial use.

// You may not sell, resell, sub-license or rent this script in any way.

// you may credit this script to mCasual/Jacques

// 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.

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

The 2015 version replacing the 2010 version on Jan 13 2022 with reference frame selector