mcjAddStretchMorph: add stretch morphs to anythink Updated and Safer 2019
here: https://sites.google.com/site/mcasualsdazscripts4/mcjaddstretchmorph
mcjAddStretchMorph IS updated upgraded and made safe for use on subdivided geometry - in this example it was used to stretch the chair legs and back rest
versions before V4 : creating a morph on a subdivided surface could render the scene file un-openable
something very similar to this can be done using a d-form
but this script does the job quite fast and easy
https://sites.google.com/site/mcasualsdazscripts4/mcjaddstretchmorph
History
v4 - February 28th 2019 - 1036 PM - creating a morph on a subdivided surface could render the scene file un-openable
v3 - September11th 2015 21:58 - Major update, added an Append To Morph" and a "Remove from Morph" button
v2 October 7th 2014 1252 pm - Added the 'scale' effect. Now allows the non-zero-posed objects to receive the morph
v1 - October 5th 2014 12:33 pm release
---------------------
Comments
note that i used a script like that to create the morphs for upcoming free mechanical parts
i will probably post the script that was used to make the hole diameters morphable
a few seconds ago, the thick yellow cylinder was a daz-studio-primitive-torus
Figure 2
i will add this feature:
if instead of a Plane, the "stretch director" is a Cube
then, only the vertices inside the cube are part of the morph
Figure 3 - a third mode, with a cube to select the vertices to morph and a plane gives the displacement direction
( for cases where it would be hard to fit both functions in the cube )
Figure 4 - when using the 3-objects mode, the script detects the role of each node based on their labels
No equivocal situations are allowed,
so your field/domain node label must include the word 'cube',
your director object label must include the word 'plane'
and the label of the object that will receive the morph must not include the word 'plane' nor the word 'cube'
making little adjustments to make it work in DS 1.8
a stretched cone
dang it there's no multMatrixVec function in DS 1.8 ... but there may be an equivalent
DzVec3 multiply (DzVec3 vec)
yay it works, it was essential for weirdly rotated and scaled bounding boxes
works in 2.3 too now
but notice that the was DS4 displays the local axis is more practical for this
and it works in DS3.1 without change ( since we only "touch" the vertices and not the faces )
it's ready ! oh yay !
https://sites.google.com/site/mcasualsdazscripts4/mcjaddstretchmorph
Oh this looks interesting. Even if I don't "need" to stretch a prop, i'll sure have fun playing with it. :coolsmirk:
created a plane
positioned it across the dress hip section
selected the dress hip
selected the plane
ran the script
1 second later badabing stretchable dress :)
Yay! I've got to try this and have downloaded it. Thanks for all you give us.
created a plane
positioned it across the dress hip section
selected the dress hip
selected the plane
ran the script
1 second later badabing stretchable dress :)
Ohhhh, I might just have to try that. :coolsmile:
NOTE:
For now, before using this script,
the object that receives the morph must not
have beeen moved from the position/orientation
it had when loaded
the update (tomorrow?) will have a
displace and a scale mode
and you wont have to zero-pose the object receiving the morph
because the script will do all the 3d math-acrobatics needed
the upcoming update will be able to
add morphs to a rotated/scaled object
whereas the first version only worked on non-rotated/non-scaled objects
=============
figure 2, by placing the push-direction plane properly, you will get bi-directional morphs
--------
figure 3, moved the push-direction plane down, so now all the selected vertices are push-scaled in 1 direction
Update - Version 2 - Update - Version 2 - Update - Version 2 - Update - Version 2 -
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
The script now works on props that are not at their initial position and orientation
There is now a 'scale' option
instead of just pushing the vertices away as a group,
the selected vertices positions are scaled.
if you use a direction-plane, the origin of this magnify effect has its origin at the plane location
if you only have a domain/field cube, then the bottom of this cube is the origin of the scale effect
https://sites.google.com/site/mcasualsdazscripts4/mcjaddstretchmorph
real-life use, slightly de-cheekifying high waist pants
hat was done very quickly in the old mcjLathe script
the OverTheKnee boots for Aiko3 are free on my site
been using mcjAddStretchMorph a lot thses days
one of its strong points is that i can apply it to a posed/moved figure
all this can be done with d-Forms, but i find mcjAddStretchMorph's "hard" fields to work well on low-poly figures
Looks great i will have to try it too.
just promoting this script some more because i use it so much since its creation
also see mcjAddRadialMorph ( google it)
in just a few minutes i created 3 scaling morphs for the short's 3 bottom rows of vertices
using very careful methods one coud add fabric tension wrinkles on the front of the shorts
but personally i used a grayscale displacement map and mcjElevate to do it
mcjAddStretchMorph and mcjAddRadialMorph will be updated very soon
two new functions will be added
there's the "Remove from Morph" button, which removes the selected vertices from the named morph
and there's the "Append To Morph" button which is all explained in the image below
when it's ready i will post it on the release page , and announce it here
still not used to the new comment system
- UPDATE - - UPDATE - - UPDATE - - UPDATE - - UPDATE - - UPDATE -
https://sites.google.com/site/mcasualsdazscripts4/mcjaddstretchmorph
if you have trouble downloading from my google attachments, here's a direct link to the zip file
https://sites.google.com/site/mcasualsdazscripts4/mcjaddstretchmorph/mcjAddStretchMorph.zip?attredirects=0&d=1
New in version 3
If your target object does have a morph named, for example "Stretch" and the current specified morph name is "Stretch"
then using the "Append To Morph" button will add the selected vertices movements to that existing morph
If your target object does have a morph named, for example "Stretch" and the current specified morph name is "Stretch"
then using the "Remove From Morph" button will remove the selected vertices from the existing morph
mcjAddStretchMorph IS updated upgraded and made safe for use on subdivided geometry -
in this example it was used to stretch the chair legs and back rest
before V4 : creating a morph on a subdivided surface could render the scene file un-openable
Nice script! Thank you
Hi mCasual, would you say this would do Squash and Squeeze as well, especially to a torso or other body parts, or would that be too much to handle?. Thanks in advance.
you would have to show me visual exanples if what those 2 effects mean, i have other scripts
https://sites.google.com/site/mcasualsdazscripts4/mcjaddradialmorph
that create morphs. some allow chosing parts of the object some dont
Sorry for the late response. not sure how to get notifications?
This is what I'm trying to achieve, non of the horses enable this from my understanding and without it they look stiff. Thanks
maybe you could Z-Scale the Abdomen and/or chest of the horse using the Z-Scale sliders in the parameters tab
maybe alo mcjBend could be used to create a better curved-back than the abdomen/chest Bend controls
https://sites.google.com/site/mcasualsdazscripts2/mcjbend
this image is for mcjShear https://sites.google.com/site/mcasualsdazscripts2/mcjshear
That should work, perhaps some dforce applied might be possible? Thanks for your input and great scripts.