Change Morphs to new Slider Ranges
dandersonru
Posts: 19
I am not making any new morphs in this question. Simply trying to adjust/change the behavior of the morph.
DAZ Studio v4.9, Using Genesis 2 Male and Female
Example....Chin Depth (PHMChinDepth) Range is -1.0 to 1.0
The morph works great but I need to rescale/adjust that morph to 0.0 to 1.0 (0 to 100.0%) in lieu of -1.0 to 1.0. There are a few morphs that I need to do this with in DAZ.
Note: The external application is Unity 5 and only allows 0 to 100.0% in its value range to adjust the morph (blendshape). Actually many applications only allow this range.
Any help and insite here is appreciated.
Cheers
Comments
So you want to have the effect of -100% old-style at 0% new-style, the effect of 0% old-style at 50% new-style and 100% is the same before and after? That can't be done in that way - 0% is the base mesh, -100 is the vertices moved the distance from base to full morph but in the opposite direction (you coudl fake it within DS using a second controller to drive the morph, but if the morph that moves mesh needs to be 0-100 that won't help). One option would be to create a second morph by zeroing pose and shape, then setting the morph to -100 and exporting as OBJ, then loading the OBJ as a new morph - you could then make a controller that would drivethe new morph to 100 when it was 0, declining to 0 at 50 on the controller, then the old morph would kick in above 50 up to 100 - assuming Unity supports parameters controlling morphs but you may find that a fiddle if the morph is also making corrections to the rigging or other morphs.
Thank you for the answer. You understood the question perfectly.
I can fake it in DS but the external app (Unity in this case) cares not for any of the CTRL sliders since those are blendshape controllers and not actual blendshapes (morphs). Unity can fully control between 0-100.
I think I see where you are going with this, let me recap to see if I am understanding properly. Using our previous example of Chin Depth. Using this morph as a direct Unity blendshape from 0-100% this gets us half way there. For the other half we make a new morph exported at -100....this would essentially be the new 0 on the New Morph....Chin Depth 2 for example. and 100% would be 0. So basically I have 2 blendshapes in Unity to care for. In Unity I would make a separate slider that is 0-100% and like you are saying if the scale is 0-49.9% use Chin Depth 2 and 50.0% to 100% use Chin Depth. This would definitely solve it.
This kind of what you are thinking?
EDIT: Small Edit to sequence and changed two pics....easier this way.
Mr. Haseltine. Thank you for the idea. Works perfectly.
Recap for others interested in using DAZ Morphs (Blendshapes) for external apps like Unity, UE4, and others.
Splitting the Morph:
1) Set your Genesis 1/2 model to Base Resolution and no SubDivision Level
2) Zero Pose and Zero Shape
3) Dial (Slider) in the morph needed to the Negative direction -1.0 r whatever that negative is (this will be the new 1.0 or 100% value later).
4) Export as OBJ with the DAZ Studio option selected...no change on anything, You can check the OBJ in Blender if you want to see if it looks fine.
5) Now Zero Shape
6) Edit>Object>Morph Loader Pro (Provided a Screen Shot to help follow along)
7) Choose DAZ Studio in from box
8) Click Choose Morph File....then select your exported OBJ
9) Right Click on Property Group....this is where you can organize your imported morph.
10) Double click on Name and set to the new Morph Name you want.
11) Now click accept and you should see a success box appear.
12) Now edit the parameter in the list (Right-Click).
13) Change the Lable to what is the viewing name.
14) Adjust as necessary….see pic to right.
15) Test your new slider parameter.
Your new Morph is in the Parameters Tab and is available for Export in FBX for use in external apps like Unty/UE4. As stated about in your script you will select which blendshape to use based upon what you GUI Slider Value is.
Note: I could not find the slider in the Shaping Tab....may be missing something here.
Cheers
Yes, that was what I meant - glad you figured it out (I'd forgotten setting the resolution to Base).
Small edit to the above sequence after doing a number of these. A slightlier easier/faster method....but very similar.
Thanks for the help and a great tip.
Cheers