Morphs from G3 to G8

1202123252671

Comments

  • NovicaNovica Posts: 23,859

    How long is it taking you folks to do one character?

  • barbultbarbult Posts: 23,133
    Novica said:

    How long is it taking you folks to do one character?

    It only takes a couple minutes once you have gone through the tutorial and created the clones and saved your scene for reuse the next time. The tutorial tells you when to save the scene for later use. Next time, just load that scene and pick up with the section of the tutorial after saving the scene. It takes longer if you go to the extent of using the dformer to split the head and body in to separate morphs.

  • barbultbarbult Posts: 23,133
    edited August 2017
    j cade said:
    L'Adair said:
    j cade said:

    I recently have seen a few posts about how transferring morphs can create wonky eyes and your options are either to suffer them or manually fix them

    Oh I have a method getting non messed up eyes when transferring.It works with whatever transferring method you use (I just started using it with the redz method)

    Basically whatever figure you're using transfer utility to transfer morphs to, you add a rigidity group to each eye

    To do this:

    • take your figure
    • switch your view to textured wireframe to see what you're doing
    • select the geometry editor tool and go to the too settingsl panel
    • in face mode hide the non-eye parts of the head, I used surfaces, rather than face groups
    • go to vertex mode and select the two center loops around the eye (if you douple click along the edge you want selected DS will select a loop ctrl click to select something without losing what you previously selected)
    • Right Click > geometry assignment > create rigidity group from selected
    • In the tool settings panel you will see a new rigidity group with the selected vertices added as participants right click "references" and assing the vertices there too
    • Now select the rest of the eye (click a bunch of spots on the eye, and then right click > geometry selection > select connected) Make sure you get both layers of the eye.
    • assign the rest of the eye as participants
    • now right click > geometry assignment > rigidity group editor
    • set first, second, and third axis scale to primary (secondary or tertiary would probably work too, but they all should be set to the same thing)
    • do the same setup on the other eye
    • what this does is make it so the entire eye scales and moves as a unit (obviously if you try to transfer an iris shaping morph nothing will hapen, but since those don't transfer well anyway who cares?)

     Below is a picture which should hopefully be clearer yellow is participants (the whole eye) red is reference

     

    Honestly I'm slightly embarrased I never wrote this up, I figured it out transferring stuff from G2 to G3,and then kind of forgot I hadn't actually learned it from somewhere.

     

    Edit: The eyesocket might still be messy I'm currently investigating using rigidity groups on that as well

    If I'm following Redz tutorial, at what point do I apply your method? Looking at the image, I see both G3F and G38 in the scene, along with the object. But I can't tell if this is before or after auto-fitting it to G3F. I am assuming, (... yeah, I know ...) that this is done before the step to apply the shape to G3F...?

    You guessed right. after transfer utility, but before applying the the shape you want to transfer.

    Or, if the morph has already been appliedto the G3F, you can select the fitted G8, and then go edit > figure > clear generated morphs which will do a refresh of the morphs in a fitted object

    I still don't understand exactly where to do this in the tutorial, in spite of your detailed comments. Do I have to do it before saving the scene file that gets reused for each character conversion? Can you reference a particular tutorial step where I should  stop and do your rigidity steps before continuing?

    I converted Teen Josie 7 and her eyes were a mess. I had to painstakingly (with emphasis on PAIN) manually edit the mesh in Blender to fix them. I'm hoping your rigidity method  would do a better conversion job. I'm eager to try.

    Post edited by barbult on
  • L'AdairL'Adair Posts: 9,479
    barbult said:
    j cade said:
    L'Adair said:
    j cade said:

    I recently have seen a few posts about how transferring morphs can create wonky eyes and your options are either to suffer them or manually fix them

    Oh I have a method getting non messed up eyes when transferring.It works with whatever transferring method you use (I just started using it with the redz method)

    Basically whatever figure you're using transfer utility to transfer morphs to, you add a rigidity group to each eye

    To do this:

    • take your figure
    • switch your view to textured wireframe to see what you're doing
    • select the geometry editor tool and go to the too settingsl panel
    • in face mode hide the non-eye parts of the head, I used surfaces, rather than face groups
    • go to vertex mode and select the two center loops around the eye (if you douple click along the edge you want selected DS will select a loop ctrl click to select something without losing what you previously selected)
    • Right Click > geometry assignment > create rigidity group from selected
    • In the tool settings panel you will see a new rigidity group with the selected vertices added as participants right click "references" and assing the vertices there too
    • Now select the rest of the eye (click a bunch of spots on the eye, and then right click > geometry selection > select connected) Make sure you get both layers of the eye.
    • assign the rest of the eye as participants
    • now right click > geometry assignment > rigidity group editor
    • set first, second, and third axis scale to primary (secondary or tertiary would probably work too, but they all should be set to the same thing)
    • do the same setup on the other eye
    • what this does is make it so the entire eye scales and moves as a unit (obviously if you try to transfer an iris shaping morph nothing will hapen, but since those don't transfer well anyway who cares?)

     Below is a picture which should hopefully be clearer yellow is participants (the whole eye) red is reference

     

    Honestly I'm slightly embarrased I never wrote this up, I figured it out transferring stuff from G2 to G3,and then kind of forgot I hadn't actually learned it from somewhere.

     

    Edit: The eyesocket might still be messy I'm currently investigating using rigidity groups on that as well

    If I'm following Redz tutorial, at what point do I apply your method? Looking at the image, I see both G3F and G38 in the scene, along with the object. But I can't tell if this is before or after auto-fitting it to G3F. I am assuming, (... yeah, I know ...) that this is done before the step to apply the shape to G3F...?

    You guessed right. after transfer utility, but before applying the the shape you want to transfer.

    Or, if the morph has already been appliedto the G3F, you can select the fitted G8, and then go edit > figure > clear generated morphs which will do a refresh of the morphs in a fitted object

    I still don't understand exactly where to do this in the tutorial, in spite of your detailed comments. Do I have to do it before saving the scene file that gets reused for each character conversion? Can you reference a particular tutorial step where I should  stop and do your rigidity steps before continuing?

    I converted Teen Josie 7 and her eyes were a mess. I had to painstakingly (with emphasis on PAIN) manually edit the mesh in Blender to fix them. I'm hoping your rigidity method  would do a better conversion job. I'm eager to try.

    It took me a while to figure it out, too. In Redz's Clone tutorial, you would add those steps in Part 3, after you use Transfer Utility from the figure to the clone. Then you fit the clone to the figure, hide the figure, and apply the shape to the figure. (Doing this from memory, so might have some bits wrong, but it is in Part 3, right after you use the transfer utility.)

  • barbultbarbult Posts: 23,133
    L'Adair said:
    barbult said:
    j cade said:
    L'Adair said:
    j cade said:

    I recently have seen a few posts about how transferring morphs can create wonky eyes and your options are either to suffer them or manually fix them

    Oh I have a method getting non messed up eyes when transferring.It works with whatever transferring method you use (I just started using it with the redz method)

    Basically whatever figure you're using transfer utility to transfer morphs to, you add a rigidity group to each eye

    To do this:

    • take your figure
    • switch your view to textured wireframe to see what you're doing
    • select the geometry editor tool and go to the too settingsl panel
    • in face mode hide the non-eye parts of the head, I used surfaces, rather than face groups
    • go to vertex mode and select the two center loops around the eye (if you douple click along the edge you want selected DS will select a loop ctrl click to select something without losing what you previously selected)
    • Right Click > geometry assignment > create rigidity group from selected
    • In the tool settings panel you will see a new rigidity group with the selected vertices added as participants right click "references" and assing the vertices there too
    • Now select the rest of the eye (click a bunch of spots on the eye, and then right click > geometry selection > select connected) Make sure you get both layers of the eye.
    • assign the rest of the eye as participants
    • now right click > geometry assignment > rigidity group editor
    • set first, second, and third axis scale to primary (secondary or tertiary would probably work too, but they all should be set to the same thing)
    • do the same setup on the other eye
    • what this does is make it so the entire eye scales and moves as a unit (obviously if you try to transfer an iris shaping morph nothing will hapen, but since those don't transfer well anyway who cares?)

     Below is a picture which should hopefully be clearer yellow is participants (the whole eye) red is reference

     

    Honestly I'm slightly embarrased I never wrote this up, I figured it out transferring stuff from G2 to G3,and then kind of forgot I hadn't actually learned it from somewhere.

     

    Edit: The eyesocket might still be messy I'm currently investigating using rigidity groups on that as well

    If I'm following Redz tutorial, at what point do I apply your method? Looking at the image, I see both G3F and G38 in the scene, along with the object. But I can't tell if this is before or after auto-fitting it to G3F. I am assuming, (... yeah, I know ...) that this is done before the step to apply the shape to G3F...?

    You guessed right. after transfer utility, but before applying the the shape you want to transfer.

    Or, if the morph has already been appliedto the G3F, you can select the fitted G8, and then go edit > figure > clear generated morphs which will do a refresh of the morphs in a fitted object

    I still don't understand exactly where to do this in the tutorial, in spite of your detailed comments. Do I have to do it before saving the scene file that gets reused for each character conversion? Can you reference a particular tutorial step where I should  stop and do your rigidity steps before continuing?

    I converted Teen Josie 7 and her eyes were a mess. I had to painstakingly (with emphasis on PAIN) manually edit the mesh in Blender to fix them. I'm hoping your rigidity method  would do a better conversion job. I'm eager to try.

    It took me a while to figure it out, too. In Redz's Clone tutorial, you would add those steps in Part 3, after you use Transfer Utility from the figure to the clone. Then you fit the clone to the figure, hide the figure, and apply the shape to the figure. (Doing this from memory, so might have some bits wrong, but it is in Part 3, right after you use the transfer utility.)

    Thanks, L'Adair. I'm going to try it now.

  • barbultbarbult Posts: 23,133
    edited August 2017

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    Clone eye trouble.JPG
    1632 x 1554 - 194K
    Post edited by barbult on
  • barbultbarbult Posts: 23,133
    edited August 2017

    Sorry to be babbling on by myself here LOL, but now I'm wondering if the "Transfer Utility" usage that is referred to is the earlier one in the tutorial on the first page instead of the one is Part 3.

    Edit: probably not...

    Post edited by barbult on
  • PhilWPhilW Posts: 5,139
    edited August 2017

    Just an extra "Thank You" to Redz and others who have put together the tutorials on this thread. I got around to transferring some V4 morphs to Genesis using GenX (not even GenX2!) and then used the clones method to transfer these to G8F (I previously did a bunch of native Genesis, G2 and G3 morphs). There are a few that look a bit messed up but most are really good. Here is a V4 character transferred to G8F with Victoria 8-based textures.

    Liz Hurley Final.jpg
    1200 x 1600 - 487K
    Post edited by PhilW on
  • barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    That's about what I'd expect. 

    Hell, my clone is probably similar owing to the fact that I only rationalized the eyes, and didn't touch the mouth.

    Studio kind of guesses which vertex maps to which when you do any of these methods. This causes a problem with the eyes and mouth because there are lot of vetexes really close together. One way to see how this goes wrong is to export both figures to an external editor and try to shrinkwrap one's teeth to the other's. Even eliminating all other issues that could interfere, and carefully lining the teeth up to match, the result is a mess. Partly because the shapes are slightly different, but also because the verts are so close together.

    I've probably solved this issue, but it's not a perfect solution, and it's not implemented. I consider it solved because there was only one technical issue that I didn't know if it could be done, and I did most of that this morning. There's still one more thing to do but I can't think of how to test it without building a working model. I probably wouldn't admit that much, but I'm a bit loopy, have have an absolutely horrid couple of weeks, and the expression converter written by mork is basically the same concept I need to emply to transfer morphs. I just needed a vertex by vertex mapping of G8 to G3, which I have. If my guess about how vertex deltas actually work is correct, then it's all over but the tedious bit.

    Sorry, loopy. I really am. There was point and I lost it for a sec. The point being, the only way I'm pretty sure to get a completely distortion free transfer ... actually doesn't exist. But that's because of fingernails. G3's finger and toe nails are separate meshes. G8's are modifications of G3's nailbeds. Oddly, what Clones and TU do very well in handling nail morphs, direct mapping is exceptionally hard, so for sanity, I mapped G8's nails to G3's nailbed. The result should be for most shapes that G8's nails will be appropriate for the shape of her digits, but it means my method can't transfer nail shapes at all. There's zero correspondence. The deltas are going to be lost, or rendered ineefective, (depending on which is most stable). Anything other than direct mapping will result in distortions (like the slight to annoying distortions about the shoulders and arms with some methods). There's very little you can do for the eyes without basically ripping the model appart. (which, by the way, is what I did for my transfer clone, and what I did to create the vertex mapping. Otherwise, the verts are too close and the same problems would crop up.)

  • j cadej cade Posts: 2,310
    barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    My clone does look like this as well (the weird polys you are seing around the eyes are, in fact, the eye socket not the eye itself. normally they'd be part of the head face group, but that gets altered by the transfer utility this doesnt have any effect on the actual mesh itself, thankfully, merely how it looks when we hide parts)

    Re-reading through Redz' tutorial The ideal time to do my step is just before

    Important - Save your scene with a name you will
    remember so that you will not have to perform the transfer again.
     

     

  • Singular BluesSingular Blues Posts: 737
    edited August 2017

    Just to expound on what I was on about, this is the the morph I used to do my vertex mapping. It is similar, (though not the same) as the ones I use to trans fer morphs right now.

    This is G8. There is similar one for G3, with some adjustments. This, generally, resolves issues of vertex confusion.

    head.png
    566 x 486 - 808K
    Post edited by Singular Blues on
  • barbultbarbult Posts: 23,133
    j cade said:
    barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    My clone does look like this as well (the weird polys you are seing around the eyes are, in fact, the eye socket not the eye itself. normally they'd be part of the head face group, but that gets altered by the transfer utility this doesnt have any effect on the actual mesh itself, thankfully, merely how it looks when we hide parts)

    Re-reading through Redz' tutorial The ideal time to do my step is just before

    Important - Save your scene with a name you will
    remember so that you will not have to perform the transfer again.
     

     

    Thank you for the clarification. Since I already went through the whole Redz tutorial before this rigidity idea came up, can I just open the scene that I already saved and apply rigidity to the eyes of MyG3Clone_G8F and resave the scene, or do I have to start the tutorial over again?

  • j cadej cade Posts: 2,310
    barbult said:
    j cade said:
    barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    My clone does look like this as well (the weird polys you are seing around the eyes are, in fact, the eye socket not the eye itself. normally they'd be part of the head face group, but that gets altered by the transfer utility this doesnt have any effect on the actual mesh itself, thankfully, merely how it looks when we hide parts)

    Re-reading through Redz' tutorial The ideal time to do my step is just before

    Important - Save your scene with a name you will
    remember so that you will not have to perform the transfer again.
     

     

    Thank you for the clarification. Since I already went through the whole Redz tutorial before this rigidity idea came up, can I just open the scene that I already saved and apply rigidity to the eyes of MyG3Clone_G8F and resave the scene, or do I have to start the tutorial over again?

    You should totally be able to load your saved scene add the rigidity and re-save.
  • barbultbarbult Posts: 23,133
    j cade said:
    barbult said:
    j cade said:
    barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    My clone does look like this as well (the weird polys you are seing around the eyes are, in fact, the eye socket not the eye itself. normally they'd be part of the head face group, but that gets altered by the transfer utility this doesnt have any effect on the actual mesh itself, thankfully, merely how it looks when we hide parts)

    Re-reading through Redz' tutorial The ideal time to do my step is just before

    Important - Save your scene with a name you will
    remember so that you will not have to perform the transfer again.
     

     

    Thank you for the clarification. Since I already went through the whole Redz tutorial before this rigidity idea came up, can I just open the scene that I already saved and apply rigidity to the eyes of MyG3Clone_G8F and resave the scene, or do I have to start the tutorial over again?

     

    You should totally be able to load your saved scene add the rigidity and re-save.

    Thank you. I have done that now. I was able to get the rigidity groups to match your example, so I'm pretty sure I did it right.

    I tried again to transfer Teen Josie 7, but her eyes still get messed up. Maybe she is just impossible. I'll have to stick to my old version that I had edited in Blender after the conversion. I haven't seen a problem with other characters, though.

  • j cadej cade Posts: 2,310
    barbult said:
    j cade said:
    barbult said:
    j cade said:
    barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    My clone does look like this as well (the weird polys you are seing around the eyes are, in fact, the eye socket not the eye itself. normally they'd be part of the head face group, but that gets altered by the transfer utility this doesnt have any effect on the actual mesh itself, thankfully, merely how it looks when we hide parts)

    Re-reading through Redz' tutorial The ideal time to do my step is just before

    Important - Save your scene with a name you will
    remember so that you will not have to perform the transfer again.
     

     

    Thank you for the clarification. Since I already went through the whole Redz tutorial before this rigidity idea came up, can I just open the scene that I already saved and apply rigidity to the eyes of MyG3Clone_G8F and resave the scene, or do I have to start the tutorial over again?

     

    You should totally be able to load your saved scene add the rigidity and re-save.

    Thank you. I have done that now. I was able to get the rigidity groups to match your example, so I'm pretty sure I did it right.

    I tried again to transfer Teen Josie 7, but her eyes still get messed up. Maybe she is just impossible. I'll have to stick to my old version that I had edited in Blender after the conversion. I haven't seen a problem with other characters, though.

    If you had already loaded the morph onto the MyG3Clone_G8F you might need to select it then go to edit > figure > clear generated morphs this will (as the name suggests) clear any previously generated morphs out of the figure

  • j cadej cade Posts: 2,310

    .... and I trid Teen josie myself and I'm getting super messed up eyes too.... weird. And it really is just her too, Teen Julie does fine, The Girl does fine, Josie the eyelids look like jagged teeth

  • j cadej cade Posts: 2,310

    Just to expound on what I was on about, this is the the morph I used to do my vertex mapping. It is similar, (though not the same) as the ones I use to trans fer morphs right now.

    This is G8. There is similar one for G3, with some adjustments. This, generally, resolves issues of vertex confusion.

    Ooh! This looks intriguing :) It looks like it could solve the eyelid issues in addition to the eye issues. I think I might try experimenting with this too.

  • barbultbarbult Posts: 23,133
    A similar method (moving internal parts outside) was used in a tutorial for transferring older skins to G3F with blender. I'll be real eager to hear if someone tries this on Teen Josie.
  • 3Diva3Diva Posts: 11,287
    j cade said:

    Just to expound on what I was on about, this is the the morph I used to do my vertex mapping. It is similar, (though not the same) as the ones I use to trans fer morphs right now.

    This is G8. There is similar one for G3, with some adjustments. This, generally, resolves issues of vertex confusion.

    Ooh! This looks intriguing :) It looks like it could solve the eyelid issues in addition to the eye issues. I think I might try experimenting with this too.

    If you figure out how to do it could you post the steps? I've been having issues with the eyes (particularly characters with larger eyes) getting messed up with tranfering them. If this helps that be less of an issue I'd be very interested in learning how to do it. :)

  • L'AdairL'Adair Posts: 9,479
    Zev0 said:

    Oh, that's a must have. I'll be watching that thread... laugh

    Thank you for the link.

  • Singular BluesSingular Blues Posts: 737
    edited March 2018

    This Script has been depricated, given its numerous flaws. A superior script can be found here.

    Post edited by Singular Blues on
  • L'AdairL'Adair Posts: 9,479

    IT'S DONE!

    ...

    Good night, and good luck.

    Thank you, sir. Your hard work and stubborness are greatly appreciated.
    yes yes

  • L'Adair said:

    IT'S DONE!

    ...

    Good night, and good luck.

    Thank you, sir. Your hard work and stubborness are greatly appreciated.
    yes yes

    I'd have never got this far without mork's script for translating pose presets.

    I reworte a lot of it, but it saved me the trouble of inventing some methods. I just adapted their's. Also, I straight stole the math, though it was a job an half getting the math to work (because I forgot there were capture groups in the regex. Silly me.

    Since I'm a commenting again, the thing with the generic lable and items owning themselves. While just about every way studio can display those properties, they will relate normal labels and normal names, if you ask them who they are via the script method .assetUri the respond "#Value." In those cases, the solution was to "getOwner" which gave their actual name, but not in Uri format. So, the hack around is to feed the name and literally search the whole morphs folder to try to find the source file.

    Basically, the script uses the source file's address to know which folder to transfer morphs from. With .assetUri that can be had directly. getOwner is less reliable. I figure it may fail if you have a case like some odd helper morph that has an ID totally unlike its file name. But I think that will be rare case with character morphs. If it does happen, you can always try a different morph. So if it failed on "Rune 7" you could try Rune 7 Head. Seems reasonably unlikely that every single morph will happen to match a completely different morph package and not have one the assetUri will work on.

    From what I can see, the morphs that cause the trouble are those not owned by the root node. So it's more likely to happen on morph packs than character, but the script should be able to handle most possibilities, if you keep trying.

  • Yes, I also appreciate the work you put into this. Thanks

  • nonesuch00nonesuch00 Posts: 17,926

    Thanks so much.

  • I've found an error where the final morph will be unusable if it is an expression containing both mouth open and mouth open wide. Another of those bits where I forgot the function was originally expecting a capturing group, so the result is NaN.

    Will have fix up sometime Tuesday.

  • nicsttnicstt Posts: 11,714
    edited August 2017
    barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    That's about what I'd expect. 

    Hell, my clone is probably similar owing to the fact that I only rationalized the eyes, and didn't touch the mouth.

    Studio kind of guesses which vertex maps to which when you do any of these methods. This causes a problem with the eyes and mouth because there are lot of vetexes really close together. One way to see how this goes wrong is to export both figures to an external editor and try to shrinkwrap one's teeth to the other's. Even eliminating all other issues that could interfere, and carefully lining the teeth up to match, the result is a mess. Partly because the shapes are slightly different, but also because the verts are so close together.

    I've probably solved this issue, but it's not a perfect solution, and it's not implemented. I consider it solved because there was only one technical issue that I didn't know if it could be done, and I did most of that this morning. There's still one more thing to do but I can't think of how to test it without building a working model. I probably wouldn't admit that much, but I'm a bit loopy, have have an absolutely horrid couple of weeks, and the expression converter written by mork is basically the same concept I need to emply to transfer morphs. I just needed a vertex by vertex mapping of G8 to G3, which I have. If my guess about how vertex deltas actually work is correct, then it's all over but the tedious bit.

    Sorry, loopy. I really am. There was point and I lost it for a sec. The point being, the only way I'm pretty sure to get a completely distortion free transfer ... actually doesn't exist. But that's because of fingernails. G3's finger and toe nails are separate meshes. G8's are modifications of G3's nailbeds. Oddly, what Clones and TU do very well in handling nail morphs, direct mapping is exceptionally hard, so for sanity, I mapped G8's nails to G3's nailbed. The result should be for most shapes that G8's nails will be appropriate for the shape of her digits, but it means my method can't transfer nail shapes at all. There's zero correspondence. The deltas are going to be lost, or rendered ineefective, (depending on which is most stable). Anything other than direct mapping will result in distortions (like the slight to annoying distortions about the shoulders and arms with some methods). There's very little you can do for the eyes without basically ripping the model appart. (which, by the way, is what I did for my transfer clone, and what I did to create the vertex mapping. Otherwise, the verts are too close and the same problems would crop up.)

     

    IT'S DONE!

    No, actally it isn't. But it works. Props to mork for doing a lot of the heavy lifting so I didn't have to.

    What am I talking about? Well, way up thread I said I had a method for transfering Morphs with their ERC intact. Which I did... Do. You know what I mean. I also said it was too dangerous to be released into the wild. New-queue-lar levels of dangerous. I figured if I could work out a way to automate some or all of the process, then actually do that automation, I'd release that.

    Well, I did it.

    Let's talk limitations first.

    This software is so Alpha it's slightly Omega. Use at your own risk. It probably can't break anything, but they said the same about the RMS Titanic.

    Fingernails. Toenails. It won't do them. The geometry was too darned messy for me to work out how to reliably handle them, so I skipped it entirely. The nails will, instead, follow the nailbeds. As a result they should be free of distortion and well shaped, but they may not match exactly, and any special nail morphs won't transfer. However, the script doesn't know about this limit, so if a nail morph file is included in the process, it will process it. The results of that should be, effectivelly, an empty morph, but a possibility for error exists.

    The script is not interactive. No UI, no notification. I don't know how to do that stuff. This is my first Daz Script. (I don't think small, unfortnately.) If I do a later release, I may add something, but my main goal has always been just getting it to work.

    It almost certainly won't handle Connect products. Right now it tries to write back to the same library it is working in. I mean to fix that at some point, after which it might be able to work with Connect. 

    It will also probably fail if you have more than one library, if the source morph is not in your base library. Again, something I mean to fix, but I only have the one library, and don't feel like making a new one atm. It wasn't necessary to reach "it works." This is not trivial. To make it easy to use, I wanted to be sure to use the Studio UI to find morphs, rather than requiring the user to find them. But because of a quirk in the way morphs can be saved, so morphs own themselves, and don't seem to report their file location. So I had to hack around to make it work. Hacking the hackery to distinguish between Connect and non Connect makes me cry.

    As a result of this hackery, some files may not trasfer at all, ever. Basically, because they own themselves, and report their names generically, they may have the same "label," as far as the script method is concerned, as another file or files. This means the script will always find one of them and never find the others. I can't think of a way around that, right now. I did work around the most common way this happens by having the script first ask for the file's location and only hack around when it doesn't get an answer, but I don't have enough products, frankly, to test all the possible failure modes.

    I pretty much didn't document it at all.

    It reads compressed and uncompressed files but only writes uncompressed.

    Did I meantion no UI. Because no UI. At all. It seems to take about 9 seconds, on average to run one morph. This would be about 4 to 7 minutes for an average character, and about double that for a typical Morph pack. During this time, Studio will be busy. Make a sammich or something. Call your mom, if you have one. These numbers are based on 50 to 100 morphs and my slow laptop, so your values will vary. But don't go forcequiting because something like 200 Plus is taking a long time. that's twice the size of any test I've run.

    The script is attempting almost 24,000 operations per file. Mind you, when working with a file where most of those ops are invalid (most expressions, for ex) it will run much, much faster. But morphs tend to run slow.

    How to Use

    1. Load Genesis 3 Female. Make sure it is selected.
    2. Find one (1 and only 1) Morph from the set you wish to transfer and mark it as favorite. (if you mark more, the script will only work with first one it finds, which may not be the one you want).
    3. Run the script
    4. Studio will lock up, and you will get the wait manipulator. It's thinking. Remember, 9 seconds per morph file. Ish
    5. Studio will become responsive. This means it's finished. It may have errored out, but it's finished.
    6. Load Genesis 8 Female. Find your morphs
    7. Report any misbehavior to this thread.
    8. Enjoy

    There's no ERC freezing, there's no trying to fix transfer related distortions (although the eyes might be slightly small, that related to the fact that G8's eyesballs are closed meshes and G3's are not). There's, in fact, nothing more to do. Once the Script finishes successfully, the figure will be fully set up, and all the links between the files will be maintained.

    This is true even with respect to files that link to other products, irrespective of whether you have transfered those other products. The script doesn't "tranfer" as much as it translates. All of the commands built into the G3 files are present in the resultant G8 files. This means it transfer whimsically misspelled name for Victoria 7, then transfer Victoria 7 later, the first product will be connected to V7 (after you reload the figure, if it is open).

    Good night, and good luck.

    Pretty sure they said that at the Titanic launch. :) Probably good night too, but with no feeling of finality.

    Appreciate the hard work.

    Post edited by nicstt on
  • RedzRedz Posts: 1,459

    This is fantastic Singular Blues. Thank you so much for sharing. I'm just experimenting now :) 

  • j cade said:
    barbult said:

    I'm working with Genesis 3 Female. This is my MyG3Clone_G8F with the head polys hidden. The eyes already have problems. Did I do something wrong already? Does your clone look like this? This is the clone I've been using fairly successfully, so now I'm confused again. Do I need to start over and make a new clone?

    My clone does look like this as well (the weird polys you are seing around the eyes are, in fact, the eye socket not the eye itself. normally they'd be part of the head face group, but that gets altered by the transfer utility this doesnt have any effect on the actual mesh itself, thankfully, merely how it looks when we hide parts)

    Re-reading through Redz' tutorial The ideal time to do my step is just before

    Important - Save your scene with a name you will
    remember so that you will not have to perform the transfer again.
     

     

    hi j cade,

    I much appreciate your efforts to help out, but I'm afraid I don't interpret as well as barbult, so an even more specific, dummy-proof translation is needed.  

    When you said "select the two center loops around the eye," your attached pic did not clarify which loops were selected - are they perpendicular (X,Y,Z) or a parallel pair along a single axis? Looking at your screen capture I couldn't discern which lines you chose.  

    When you said "Make sure you get both layers of the eye," which exact parts are you describing - I see in Daz available eye-part options being Cornea, EyeMoisture, Irises, Pupils, and Sclera.  (Ignoring EyeSocket until anybody resolves whether that solves the Josie etc. issues)

    The Geometry Tool Settings Panel's Vertex Page shows a column listing a total Count # of how many should result in # Participants and # References for both Eyes (L+R) but your Rigidity Group guidelines never included that specifity (Total # each) to ensure we're following your method successfully.  

    If you can add that extra layer of detail to your existing instructions, it would be a huge assistance to those of us who are slower and thick-headed lol.  

    Thanks so much!

     

     

Sign In or Register to comment.