Adjusting auto-morphs for additional bones
Although the DAZ Studio Transfer Active Morphs often does a good job matching parts on clothing to the corresponding parts on Genesis, it doesn't cope well with additional bones - hanging sashes and belts, for example, that have their own bones. In this thread I am going to make a morph to adjust the belt cords on the Genesis Fantasy Wrap, which break at the top when the Julie (or Justin) morph from the Young teens set is applied as shown in the attached image. The tutorial will mainly cover setting up in DAZ Studio to export an OBJ and importing the modified OBJ as a new morph, then fixing the rigging - in this case the actual shaping is simply a little scaling and translating, though some more work would be required for a store-ready morph, and in any event the steps will depend on the modeller being used.
The morphs created, for both Justin and Julie, can be downloaded from here:
http://www.4shared.com/zip/CqMc79RS/YTFitforFanWrap.html
Comments
Exporting the clothes to modify
Because we are wanting to create a new morph to replace the auto-generated morph we aren't going to be able to use Reverse Deformations to remove the effect of any additional morphs, as that would remove the morph we are modifying too. Before exporting we need to make sure that there is no scaling and that only the morph of interest is applied. It's easiest to do this by loading a default Genesis, setting the morph we are wanting to fix to 1, and then going to the Parameters pane (Window>Panes(Tabs)>Parameters) where a glance at the Used group (second entry down on the left) will show any additional settings applied to the body - in this case Scale has been set to 90.8% and we need to set that back to 100%. All the bones should also be checked to see if they have any scaling applied too - in this case they didn't but some shapes do use scaling of limbs to achieve their effect.
The reason for using a base Genesis, rather than loading a character preset for the shape, is that the preset is likely to have been Memorised in its shaped state (so that the Restore commands can be used to get back to the start) with the result that any changed settings will not appear in the Used group, and it may also have additional morphs set. I made the mistake of starting with the Julie.duf file, and it did indeed have its scale memorised and one of the breast morphs applied which made getting to a figure with just the Julie shape applied a bit fiddlier.
In order to simplify things later we are going to name the OBJ we export to match the morph - this needs to be the name, not the label that shows in the shaping panes. To get the name click the little gear icon on the right-hand end of the morph slider and copy the contents of the Name box to the clipboad (cmd(mac)/ctrl(Win)-c). By doing this, and keeping the name throughout, Morph Loader Pro will automatically give the morph the correct name
Now load the Fantasy Wrap and fit it to Genesis, then hide Genesis itself (and any other items in the scene) by clicking the eye icon in the Scene pane (Window>Panes(Tabs)>Scene). Next, go to File>Export..., paste the copied morph name into the filename box (cmd/ctrl-v) and set the file type to OBJ. When the options box opens the important setting is Ignore Invisible Nodes, which makes sure that Genesis isn't exported along with the wrap (a morph cannot contain multiple figures or props): it is, however, important to choose the same preset both on export and later on importing the OBJ as mismatched preset can lead to mismatched scale, causing the clothing to explode or to shrink to nothing - here I used the modo preset, though it's showing as Custom on export because I have changed the default behaviour for group names to Use existing (which makes loading the morph simpler).
Fixing the mesh
As I said in the introduction, I'm not going to cover the fixing in detail as it will vary a lot from modeller to modeller - for this quick overview I am using modo. All that we need to do is move the cords, as a unit, to align with the little stubs attached to the abdomen part so that they form a reasonably smooth line.
The first thing to do is to select all of the mesh belonging to the bones of one of the cords: using the export settings in the last post I had the DS group names in modo so all I had to do was find the list of "parts" (modo's name for OBJ groups) and click the little + next to each lTie entry; Lightwave has a similar system, but some modellers may have each bone as a separate mesh item to be picked from a scene list. As the second image shows, I then found that there was one ring of vertices that was part of the abdomen placed midway between the morphed Genesis bones and the unmorphed tie bones - that's something you are quite likely to find. To line the mesh up I scaled the tie parts down to 90% (they seemed thicker than the parts of the cord attached to the Genesis bones) and lined them up with that half-way ring, then added that ring of polygons to the selection (in modo just select two polygons on one of the strands, hit l for loop, and repeat for the other two strands) and translated the enlarged set to line up with the cord on the main figure.
The scaling may not have been needed, at least to thee extent I did it, and a bit of rotation might have been good but given that the cord is going to be posed anyway the result works as a quick fix.
Updating the morph in DAZ Studio
Having fixed the other cord to match and saved to the same file, so that it still had the name of the morph, I now replaced the auto-generated morph made by DAZ Studio with my tweaked version using Morph Loader Pro.
With the Fantasy Wrap still selected launch Morph Loader Pro (Edit>Figure>Morph Loader Pro...) and set the OBJ import preset to the same one as used to export the OBJ, so that there will be no accidental scaling (that's the From button near the top of the dialogue), then click the Choose Morph Files button and select the OBJ file with the modified morph - the morph file will then appear in the list area at the bottom of the dialogue, with a triangle to the left of it indicating that there are options available. Click to expand, and you should see that the Name is already correct (if not, click to highlight and click again to edit).
Right-click on the default group name (Morphs/MoprhLoaderPro) and from the menu that appears select the correct group for the morph (Actor/Female/RealWorld) - the group should already be there from the auto-generation, if not (if you are using a fresh copy of the Fanatsy Wrap, for example) you would need to choose the option to create a new group and type the full path, with the /s between groups.
We don't want a control property, since the property will be on the root node anyway, nor do we want to Reverse Deformations since we are replacing the currently applied morph entirely, so right-click on those options and select No from the menu.
Finally, for Overwrite existing we wish to have this morph replace the shape of the current morph, but to inherit any other settings, so right-click on the current setting (Make Unique) and select Deltas Only (deltas are the changes in position that determine the shape of the morph, which we are wanting to update).
I found it necessary to tweak the morph setting to get DS to notice the change and update the display, but once I did so it looked fair in the zero pose.
Fixing the rigging - adjusting
You may have noticed the weasel words "in the zero pose" at the end of the last post - if we curl one of the cords up and switch to the Joint Editor Tool (Tools menu) we can see that the bones are not aligned with the mesh, and as a result bending the cord is stretching it. Fortunately DAZ Studio has a tool to fix this pretty well automatically (it certainly seems to work here, though in other cases you may need a bit of manual adjustment).
With the Joint Editor Tool selected, go to the Tool Settings pane and bring up the pane menu (click the menu button, or right-click the tab) - from the Edit sub-menu pick Adjust Rigging to Shape. Right-click in the Bones to Adjust list and select Uncheck>Uncheck all. The list here is pretty unwieldy, thanks to all the segments in the cords and flaps, so I also Collapsed all (again from the right-click menu), then expanded just enough to get to the roots of the two chains of bones for the cords (lTie01 and rTie01). Select the tie bones by clicking on one then ctrl-clicking (Mac cmd-clicking) on the other, then right-click and select Check>Check Selected and Children to grab the whole of both chains. Adjust centre and end points are checked at the bottom of the dialogue by default, but I added Adjust alignment too (it may matter if you ever want to use Point at, for example) and clicked Accept.
That should now have snapped the bones into the middle of the cords, and they should be curling more normally, but we aren't quite done as the changes we have made to the rigging are affecting the actual base set-up - the bones will stay in their adjusted positions even when the Julie morph is cleared, which will break the figure. Fixing that is the next step.
Fixing the rigging - linking
We have adjusted the rigging to fit the modified shape of the morph, now we need to link the adjustments to the morph so that they come into effect only when the morph is on. To do that we use ERC freeze.
Before we can actually freeze the ERC links we need to make the Julie morph visible to it - it doesn't seem to list hidden morphs, and the Julie morph is set to hidden right now as it was created as a hidden auto-follow morph. If you don't currently have hidden properties showing, go to the Parameters pane (Window>Panes(Tabs)>Parameters) and bring up the pane menu by clicking the menu button or right-clicking the tab, then click the Show Hidden Properties command. Next find the Julie morph (the simplest way is to type its name into the filter box at the top, with All clicked in the left hand column), click the little gear icon at the right-hand end of its bar and select Parameter Settings from the menu. In the dialogue clear the check box next to hidden. It's also a good idea to make sure that you zero the pose of the garment before using ERC Freeze - there's less danger of accidentally including a property you didn't want that way; all you need to be set are the morph itself and the adjust rigging.
Now we can launch ERC Freeze - unfortunately we need the Property Editor pane menu to do that, and the Property Editor can take an age to open on some systems. I get around this, if I'm not actually needing to edit any properties directly, by having the pane docked with others and just right-clicking on its tab without bringing it forward. However you do it, right-click on tab or click the menu button, launch ERC Freeze from the Property Editor pane menu. In the ERC Freeze dialogue it can take a while for settings to update - if you pick something from one of the lists at the top be wary of trying to click again if nothing seems to be happening for a bit (heed the voice of experience - I wasn't wary and had to wait again so I could reset the inadvertent change I made through my impatience). For Figure select the Fantasy Wrap, node should then automatically set it self to Fantasy Wrap as the default, then select the Julie Morph as the Property - these are telling DS which property will cause the others to change. The Freeze Properties list should contain only centre, endpoint and alignment options - it's alphabetical sos croll through it looking for anything else, if you find something that shouldn't be there clear its check mark. Leave the bottom three options set - they put the joint centres back in their default locations and set the controlling morph, in this case everything should look the same after clicking Accept.
Finishing up
That just leaves minor tidying up and saving.
If we open the Parameter Settings dialogue again we can edit the morph - make it hidden, perhaps, and certainly get rid of the FBM from the front of the label that shown in the various control panes, as is done with most morphs.
To save the morph, so that it will in future load with the Fantasy Wrap, go to File>Save as>Support Asset>Morph Asset. I set mine to save in a separate Asset Directory in the first option so that i could zip it up - usually the morph would be saved to My Library, or whatever your main content directory is called. Vendor name and Product name are used to generate the folder names, in the \Data\DAZ 3DFantasy Wrap for Genesis\Fantasy Wrap\Morphs folder, that hold the files. That should make it simple to find them to pack, if you want to share, or back-up. Once those names are set just expand the property tree in the scrolling view at the bottom and check your morphs.
Although there are a lot of steps, only the mesh adjustment in the modeller was more than option checking and in many cases that will be a simple matter of moving, perhaps a bit of scaling or rotating, so adding support for new shapes to outfits (or hair) with extra bones is generally a manageable task.
This is a very useful tutorial, thank you very much!
thank you much,, :roll:I must try it,, ( V4 dress, (Onna bugeisha), when use auto-fit,, it terribly change
rope belt shape too,,,so I quit modify before,,, )
(but even though I modify and overwrite generated morph,
and make JCM adjust ghost bone positon,, it can only work for the character TT)
then,, I want to ask ,,,
when apply moprh to genesis,, the fit-to clothing rig change with the morph ERC rig positon.
at that time,, weight map affect to the mesh with the rig movements? (though center point and, end point change),
actually,, the rig rotate,, ) are not it?
because,, when I wear the clothing to Anubis, I can clearly see abodoman and abdoman2 move hard,
so that I think,, if the rope mesh curve caused by weight-map,,,
or these rope mesh change shape by generated morph effect only?
Another epic Richard gift. Thank you very much my friend!
I found,,, the dress rigidity map setting cause this problem too.
when I set new rigidity group, and gahter two rigiditygroup about tie as one rigidity group,
then set new refrence , it work more better.:)
even though I do not hope to change rigidity group parmanently,(becaues,, there seems intention to divide two rigidity group about tie,,)
for makeing and overwrite morphs, it make easy to adjusting morph.
after change rigidity grouping, then apply anubis morph, decrease the bend defomation much,
and ghost bone positon do not move hard.
(so it make much easy to modify generated morph , I think!)
Unfortunately weight-maps can't be changed to adapt to morphs, only the centre, end point and alignment. Rigidity maps are also not changeable, though as you say they can be edited temporarily to change the way the clothing reacts in order to generate a morph, then the morph can be loaded on to the original figure using the old Rigidity maps.
I'm glad the tutorial is proving helpful.
Richard,,, So many thank you,, because,, now I can clearly understand,,
and the difference between set ERC with rig positon (start, and end ) ,
and , ERC with rig actuall rotation %-P
(I could not understand clear it, when use joint editor, and set ERC
I sometimes worry,, if mesh will broken or not ^^;,,,, )
and,, I thought if the problem of dress caused by weight-map effect,,,, when rig positon change,,
then rigidity grouping can not work well,,,
Now I undersatnd,, when generated morph change rig positon (by ERC)
mesh not effected by weight-map , only generated morph,,,
so that rigidity group can keep the mesh shape ( but rig positon move ^^; so need ,,as your tutorial,,
set ERC with new rig positon .
(then I hope,, if ds 5 can save character weight-map preset,,, can not us? ^^;)
Thank you Richard for taking the time to do this :)
Thank you so much Richard! Very appreciated. Maybe you can help me to get Space Dweller fitted to Genesis. Are there some tip for this? ;-)
I take it your issue is getting the ghost bones back after conversion? That's really a separate problem, and unfortunately handles in TriAx figures seem to be quite limited - or at least no one has really cracked them as they were with the old Parametric rigging. No guarantees if, or when, but I will earmark that as a topic next time I feel the urge to hold forth.
Surely that not seems an easy task. Anyway, thank you for taking your time to see my issue.