Search Unity

Skinn & Vertex Mapper (Free Edition)

Discussion in 'Assets and Asset Store' started by cwmanley, Feb 15, 2017.

?

I have a few things I want to include what should I prioritize?

  1. Tools to convert Humanoid Models into UMA models.

  2. Bone based Free Form Deformer(FFD)

  3. Skin Painting

  4. ACSII FBX Exporting

Multiple votes are allowed.
Results are only viewable after voting.
  1. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Hi,

    Thanks for the purchase.

    The UMA SlotBuilder will create slots for each sub mesh.

    Those slots should still work, but I like to split a mesh into sub-meshes before I turn it into slots.

    You can use the new Skinned Mesh Renderer context command "Skin Utility" to split sub-meshes.

    Are you on the UMA Slack?
     
    matteumayo likes this.
  2. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Thanks for the super quick reply!

    I ran into the submesh issue in my troubleshooting (you actually replied so fast you beat me to my edit!)

    So is it possible, then, to make a new race out of the split sub-meshes only? This seems like it would solve my issues.

    I'm not on the slack, but I could join if you'd rather use that.

    EDIT: Also strangely when I use the VMapper and set it to UMA Transform settings, the rotated mesh's blendshapes are turned negative. It seems the only way around this is to then create negative blendshapes of those blendshapes using the Skin Utility.
     
    Last edited: Jan 11, 2018
  3. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Your welcome, it is great timing :)

    Yes it is, here is a example.
    Race Sub-Meshes.PNG

    I really like the UMA Slack. Please ask someone from the UMA forum to send you a invite if your interested.

    If you have any problems with the rotation of the model I suggest you replace the root, global, and position bones with the ones from a uma example model after using the DRM. I think this is the best approach and I will try to make a new guide soon.

    Thanks
     
    Last edited: Jan 11, 2018
    matteumayo likes this.
  4. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Thanks for the reply,

    I'm sorry to spam you with questions, so if I have more I'll ask it in the Slack instead of this thread. However, since this seems to pertain to SKINN more than UMA (?) perhaps it's better off being asked here?

    So I redid the DRM, then replaced the Root, Global, and Position objects with ones from the Female_Unified example. Then I ran the "New Bone Array" and selected the hips root bone after parenting it to the new objects.

    Then I split the submeshes, exported them to FBX, made the slots and built the recipe - but the final UMA ends up -90 degrees on the X axis just the same.

    I'm also a bit confused on the UMA workflow for these split meshes:

    Should I generate the t-pose for UMA separately with the unsplit mesh and use that for the Race?

    EDIT: Figured it out! You have to do the procedure I mentioned above - then the rotation is correct. Thanks for the fix! :) Now I just have to get the textures working....
     
    Last edited: Jan 11, 2018
    Mokason likes this.
  5. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Hi,

    No problem spam away :).

    You do not need the "New Bone Array", all the bones should be a child of the hip/root-bone.

    Only export the unsplit mesh.

    Split the meshes right before creating the slots, instead of exporting each sub-mesh.

    The T-pose should be created with the DRM model in the model importer scene.

    When exporting a model for the T-Pose avoid saving over another model the import settings(bone rotations) with not always update correctly.

    Please let me know if you still have an issues.
     
    matteumayo likes this.
  6. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    I see. That's good to know about the model updating incorrectly.

    I'm a bit confused by what you mean by "split the meshes right before creating the slots, instead of exporting each sub-mesh."

    So I should split the submeshes, but not use the FBX Export function, instead just making the slots from the meshes in the scene?
     
  7. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Yeah, I need to investigate that more.

    Yes, use the meshes in the scene.

    Thanks
     
    matteumayo likes this.
  8. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Hello again,

    Quick question: Did you ever run into overlay issues when porting your DAZ model to UMA? I've got a strange issue where when the Teeth slot is present in the recipe, the Teeth overlay seems to wrap around the entire model. I've supplied the Teeth overlay's slots with the DAZ textures. A similar issue occurs when the Mouth slot is present - the arms turn black, and parts of the Mouth overlay seem to wrap around the Torso slot. EDIT/UPDATE: Fixed this by reducing all overlays to 1024 from 2048.


    (Also quick side question - did you generate Normals for all of the DAZ textures? If so, do you have any tips/recommendations for doing this? I'm having difficulty in this regard.)

    Also, along the same lines, could you clarify the proper workflow for adding the various Eye parts, that come with DAZ models, to the UMA? Do I simply use the Skin Utility to export the SkinnedMesh, then create a slot of that mesh after moving it to the in-scene model hierarchy created earlier? (The one created with DRM). Quick update: This seems to work fine so far.

    Thanks.
     
    Last edited: Jan 11, 2018
    hopeful and cwmanley like this.
  9. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160

    Hello,

    That is strange can you try making the Teeth and Mouth there own wardrobe item and give it a seperate uma material(set as a separate renderer).

    Maybe there is a uv issue. I could make a script to normalize or clamp the uvs.

    For normal maps.

    Zbrush is my favorite.

    There a plug-in for Gimp I have used.

    This is free now.
    https://www.assetstore.unity3d.com/en/#!/content/10388

    this look cool, but did not work for me.
    http://cpetry.github.io/NormalMap-Online/

    To make sure there are no seams I pad the textures in gimp by hand, but this looks cool.
    http://polycount.com/discussion/114616/uvpadder-filter-for-gimp-2-6
     
    matteumayo likes this.
  10. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Thanks for the reply and the links, I'll check those out! :)

    I think I'm getting there with this race, finally, thanks to your tool - it's really fantastic! :) I do have an issue with the Eyes - when I add the Eyeball slot, it turns the UMA black - this seems to indicate some sort of error with the Atlas generation UMA does, but I'm not sure how to fix it - in this case, I have already made the textures the same size which has fixed this issue in the past.

    Further, I have noticed that the eye parts from DAZ, when turned to slots, do not follow the correct bones. Is the fix for this to make the root for these items the appropriate root for the individual item, rather than the 'hips'? As in, for the eyes, make their root the UpperFaceRig? Or must I go further and separate the left and right eyes to abide by the bone hierarchy which consists of lEye and rEye parts?

    Or should I use the VertexMapper like you would for a piece of clothing instead?

    Update: I tried the VertexMapper method, and it almost works, but now the Eyelid bones affect the actual eyes, smudging/deforming the iris along with it.
     
    Last edited: Jan 12, 2018
  11. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Thanks :)

    No, you should still be able to use the eye's original skin.

    Are the eyes a separate model?

    With DRM models you need to use the Merge Helper Component to merge content to the new skeleton before creating Slots.
     
  12. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Yes, the different eye parts - socket, eyeball, eyelash, brow - are separate models.

    So I should move the model objects, other than the face object, out of the hierarchy of the DRM model, then merge siblings with the face and eye models present?
     
  13. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Yes, that should work. Make sure to use the Merge Helper Component.

    Let me know if have any issues.
     
  14. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Hmm, when I hit the Merge Siblings button nothing seems to happen. Here's a screenshot of my setup: https://image.prntscr.com/image/F9uGLPL9SKG2INtVEXBDag.png

    Do I need to set the Avatar Mapping? If so, could you explain the procedure?
     
  15. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    That is strange.

    Are the eye models in the scene with DRM?

    Are the Skinnned meshes root-bones set?

    No need for the avatar mapping. It was an alternative to fbx.
     
  16. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170

    Yea, I duplicated the DRM and removed the models aside from the face and eyes.

    The eye models are all skinned meshes with root set to the hip from the DRM.

    What is the result of the Merge action normally? Maybe it works, but I'm not seeingwhat's changed.
     
  17. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    The merge sets the root bone and bone array of the skinned mesh.

    Before the merge the merged smr's root bone should be its original root bone.
    After the merge the merged smr's root bone should the new root bone.

    The Merge Helper works the same way as the Context Command "Merge Siblings".

    Sorry if it is confusion :)
     
    matteumayo likes this.
  18. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Hmm, well, it seems that merging doesn't do the trick - in the UMA, all of the eye slots still only react to changes on the hip bone. It's confusing because the Lips, Ears, etc that were split from the main model's skinnedMesh all operate correctly, it seems. It's just these models that come separate from DAZ that are the problem.

    Maybe I have to use VertexMapper to merge the eye models with the DRM skinnedMesh before I split it into submeshes and make the slots, or something like that?
     
  19. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    It sounds like the merge is not working. How did the models import?

    Did the models import with multiple rigs like hip1, etc.

    If that is not it I might need the files to sort it out.

    What base model are you using?
     
  20. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    I'm using the Genesis8 model from Daz.

    Here's a screenshot of the model's setup with a red dot by each skinned mesh:

    https://image.prntscr.com/image/TDSwvtE8RjyK3B_FKWW2OA.png

    The main shape and rig are the first two objects. I created the DRM model from that skinned mesh following the old HumanoidMapper guide. I then split that DRM mesh as we talked about earlier. Only after the base (without eye parts) was setup did I try to implement the eyes.

    I can upload the model and PM it to you if that's not enough info.
     
  21. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    If you export the additional content separately it should work.

    I had trouble with the Genesis 8 A-Pose, I struggled to get it to animate right and then I could not get it to play nice as a ragdoll :(

    I made a T-Pose in Daz to use and then bind-posed the model with the Vertex Mapper.
     
  22. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Yeah, I was confused by the posing but got that working alright. So I should export each eye part separately, import them into unity, and then take each skinned mesh and try and use the Merge Helper with the genesis8 model DRM?
     
  23. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Yes, Export from Daz separately.
    Unity gives a unique name to each item in the fbx.

    Sorry :)
     
  24. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Alright, so the good news is it seems to have done something this time, and the eyes react to the proper bones in the rig.

    The bad news is, the eyes popped out of the head on merge: https://image.prntscr.com/image/W4yJO6lTSBKNcdXW4-41zw.png

    Any ideas? o_O

    Also I think I'll just PM you with my future replies, if that's okay with you, since I've spammed this thread too much already!
     
  25. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    I appreciate you working through this it is a big help :)

    Can you make sure the eye mesh is in it's bind-pose using the Vertex Mapper?

    Thanks
     
  26. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    So when I use the VertexMapper to set the Eyes Bind Pose with the face submesh's skin, it results in the eyes not correctly setup in the rig as it was earlier - i.e., the lEye and rEye bones don't work after merging.

    When I Bind Pose the eyes with themselves (not sure if this does anything just trying to interpret your instruction) they still popout after merging.

    I'll try and set the Bind Pose before splitting the submeshes of the DRM model next.

    Could you clarify the bind-pose instruction? Do I just set the Eyes as the mesh, and the SkinnedMesh (2nd option) to the main skinnedMesh, check Bind-Pose, then create?
     
  27. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Yes. That is the correct way to bind-pose
     
  28. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Alright, it seems that doing the Bind-Pose and then merging doesn't work properly in this case - the eye bones don't function.

    However, when I just tried the other option again (don't split eye mesh, don't bind-pose, then merge) I just noticed an error was popping up saying I'm missing 2 bones:

    https://image.prntscr.com/image/qlR9wNwMSsqTE42jqg1ydg.png
    full: https://pastebin.com/kKKZZM8W
     
  29. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    That could be the issue. You can try adding the missing bones by hand before the merge.

    I will try to handle that in the future.

    Thanks
     
  30. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Alright, I'll just try and figure out this eye problem later.

    I'm a bit confused over blendshapes - in the UMA wiki it says that when the slot is made with a SkinnedMesh with blendshapes, the blendshapes should just show up in the slot properties. However, none of the slots I made have any blendshapes here.
     
  31. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    I will try include additive merging in the update I am working on for Monday.

    I had that same problem, it is fixed in the UMA Develop Branch.
     
    matteumayo likes this.
  32. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    334
    If I remember correctly, in the Asset Store version, 2.6, if you used a seam mesh when builder a slot the blendshape data would get ignored. That is fixed in the github dev branch and will be fixed in uma 2.7
     
    hopeful, cwmanley and matteumayo like this.
  33. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Hello again,

    I've noticed an issue when trying to make slots out of DAZ hair models that I've imported and then setup with SKINN. Essentially, either UMA's slot builder's Mesh array element will not accept the hair's skinned mesh, or (in the case where I took the split and merged submesh and exported it) it will cause Unity (and for some reason my whole PC) to hang.

    It seems to happen with both of the hair models I've tried to import from DAZ. It's pretty frustrating to troubleshoot, because the memory leak or whatever is happening actually completely stalls my PC, requiring hard-shutdown - something I'm wary of doing often.

    Have you run into something like this ever? If not, could you explain the proper way to take a DAZ model (or any fitted model I would think) such as hair or clothing and prepare it for UMA? Or is the video you posted awhile back with the shirt creation still the proper method?

    Thanks.
     
  34. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Does the drag and drop processing work with the UMA SlotBuilder?

    I think Unity is hanging on the mesh/asset import (2017.3 handles large meshes better). The UMA Slot Builder creates a unity asset during the creation process. How many blend-shapes do you have? What is the vertex count? Some Daz hair uses actual geometry for hair strands, which is not good for run-time.

    If you have a large number of blend-shapes, removing the unused blend-shapes will help. The Skin Utility can remove blend-shape delta normals and delta tangets which will help also. My computer is very low-end, and I have a slow hard-drive. I have close to 600 shape working, but none of my slots have all 600.

    Once the slots are created and in a Asset bundle their size is negligible.

    The workflow has not changed from the demo video.

    If this does not help can you send me a example or the daz items names?

    Thanks
     
  35. matteumayo

    matteumayo

    Joined:
    Jul 25, 2016
    Posts:
    170
    Thanks for the help. There were ~200 blendshapes, so I removed them and the issue went away. :)
     
    cwmanley and hopeful like this.
  36. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
  37. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Hi,

    I re-wrote the whole blend-shape projection system to speed up future development.

    Here is a peak at the new multi-threaded meta-data powered blend-shape smoothing feature.

    Complex topology might still need adjusted with the Delta Canvas, but the amount of work can be reduced.

    2.PNG 1.PNG

    Thanks
     
  38. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,032
    @cwmanley ,

    Interested in this asset. How well does it work with MakeHuman or Manuel Bastioni models imported as fbx?
     
    cwmanley likes this.
  39. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Hello,

    I have not tested MakeHuman yet, but it should work great! I believe the models are in their bind-pose, if not you can easily bind-pose them with the package.

    Thanks for the interest.
     
    Duffer123 likes this.
  40. Xype

    Xype

    Joined:
    Apr 10, 2017
    Posts:
    339
    Tha what, how the heck did I miss this, rock on man I will be grabbin this soon.
     
    Duffer123 and cwmanley like this.
  41. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,032
    @cwmanley ,

    Thanks for the quick responses.

    Four (broad) questions:

    1. I see this Asset is in beta. What sort of functionality are you thinking of adding? (no promises!)
    2. Will I be able to save out skinned mesh items like clothes, clothing parts or armour after skinning?
    3. How many how-to tutorials are there.
    4. Is there any runtime functionality with this asset?
     
    cwmanley likes this.
  42. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160

    Hi,

    1. I plan to make this package a rigging tool-kit consisting of three main components the Skinn; Vertex Mapper, Delta Canvas, and Weight Tool. Some tools like the Deformation Rig Mapper or Merge Command may evolve into more generic tools. The Delta Canvas Beta is about to be added along with a more powerful blend-shape projection system for the Vertex Mapper.

    2. You can save complete prefabs as .asset(s) or items individual as acsii fbx. (always back-up!)

    3. There are two demonstration videos for the VM. More videos will come. I am always glad to help if you have any issues.

    4. Not any official supported yet. You can save and use the the mapping generated by the VM. Mapping can be used at run-time to Instantiate a SMR. My current direction is to just focus on improving the results rather than run-time. UMA is the way go for run-time!

    Thanks
     
  43. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,032
    @cwmanley ,

    Thanks again for the prompt response. As soon as I am in funds I'll buy as this asset. It looks amazing and it is heading on the trajectory.

    One of the big things missing from Unity and generally for games design is an easy relatively simple way to create, export and make skinned mesh armour and clothing...
     
    cwmanley likes this.
  44. greene_tea92

    greene_tea92

    Joined:
    Jun 26, 2017
    Posts:
    17
    Would I be able to switch the body parts of two different 3d models with this asset?
     
  45. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160

    That might require a full 3d package like Blender or 3ds Max.

    Thanks
     
  46. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Hi,

    Here a peak at using the new Delta Canvas with delta-normals.



    Thanks
     
    matteumayo likes this.
  47. wetcircuit

    wetcircuit

    Joined:
    Jul 17, 2012
    Posts:
    989
    It is like a magnet system…?
     
  48. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Yes, kinda.

    It is a system for manipulating meshs and or blend-shapes.

    You can load and save blend-shapes as Delta Layers to manipulate and mix; like a photo editor's layers.

    The brushes are customizable and use extendable features.

    The Move Feature is responsible for the "magnet" behavior.

    Mask, Mask Smooth, Erase, Smooth and Move are the current brushes and respective Features.

    Here are some of the current features of the Delta Canvas.

    X Symmetry
    Advanced Falloff
    Undo Support
    Tablet Pressure
    Extendable Brushes
    Surface Options designed for 3d Characters

    Thanks
     
    wetcircuit likes this.
  49. cwmanley

    cwmanley

    Joined:
    Aug 8, 2013
    Posts:
    160
    Hi,

    0.5 is out and includes the first version of the Delta Canvas :)

    The new Advanced Blend-shape Projection is disabled in this release.

    The Delta Canvas and the Recalculate Normals Command both support delta-normals.

    After saving meshes with large amounts of shapes I recommend converting them into binary fbx.
    Built-in mesh Assets and ASCII FBX both slow down the Editor, and even more so with delta-normals.

    Free FBX Converter
    http://usa.autodesk.com/adsk/servlet/pc/item?siteID=123112&id=22694909

    @matteumayo I am still working out the additive merging.

    I am submitting 0.51 with a bug fix for a bit of editor code I missed that stops the complie.
     
    matteumayo likes this.
  50. reocwolf

    reocwolf

    Joined:
    Aug 1, 2013
    Posts:
    182
    I think you should focus on a good tutorial first because this is very confusing. I've seen other forums where the only mention of Skinn is in questions regarding what it actually does or how it works. Even in the secretanorak patreon. I think you got a big costumer base that are simply hesitant to buy this because of that.