Search Unity

  1. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

UMA - Unity Multipurpose Avatar on the Asset Store!

Discussion in 'Assets and Asset Store' started by FernandoRibeiro, Dec 24, 2013.

  1. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    This is usually an issue with not exporting the clothing using the correct parameters. If you are using Blender, please see the UMA documentation (in the UMA folder) for the correct export parameters.
     
  2. frostdani

    frostdani

    Joined:
    Aug 14, 2015
    Posts:
    7
    Yes, i use BLender. I followed the tutorial on youtube, with the weights transfered from the UMA model, but stil got that result. I loaded directly the Blender file in unity. Let me check documentation and see what i get.
    Thank you.
     
  3. frostdani

    frostdani

    Joined:
    Aug 14, 2015
    Posts:
    7
    So, i used the other model from the resource pack (the sepparated one, not unified). Copied Weights like usual, added armature and not i get this, from the blender file, wich is nice that its not deforming, but now its rotated 90degrees.... I am using Body as a wardrobe slot, should i change that? Also how to fix rotation?
     

    Attached Files:

  4. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    Please apply all your transformations on the object, export to FBX, and follow the export parameters here:

    Blender35_settings.png
     
  5. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,665
    The bottom line is that UMA works, but you do have to get all of the settings exactly right. If one is off, you get weird results, because you are in effect telling the software to do weird things.

    It can be a little frustrating at first, because it can be hard to find which setting is being overlooked, but once you get the settings right, you're good to go. :)
     
    bdb400, firejerm and Jaimi like this.
  6. reenw

    reenw

    Joined:
    May 25, 2018
    Posts:
    6
    Hello everyone,
    all in all I am very happy with UMA and the way it works but sadly I am stuck at the moment by trying to import new recipes from blender. I was able to create new slots, overlay and a recipe but as soon I apply the recipe on the UMA character, then my character breaks and he starts "layin on the ground"
    upload_2023-7-20_23-59-12.png

    I am not able to see the actual hat I try to import and the character is rotatet. I also receive these two error messages but I honestly don't know where to look for the isse at the moment.

    Mesh.SetBoneWeights() failed: The size of the bonesPerVertex argument must match the size of Mesh.vertices (65534) or zero but was 93518.
    UnityEngine.Mesh:SetBoneWeights (Unity.Collections.NativeArray`1<byte>,Unity.Collections.NativeArray`1<UnityEngine.BoneWeight1>)

    Failed setting triangles. Some indices are referencing out of bounds vertices. IndexCount: 179712, VertexCount: 65534
    UnityEngine.Mesh:SetTriangles (int[],int)

    I would be very happy if somebody could help me and lead me in the right direction ^^.

    Thank you!
     
  7. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,665
    Re-check your import settings, and check them on each slot. The way to get started with UMA is to create one new piece, import it, and check to be sure you are importing correctly. Once you get the first piece importing right, you know you've got the correct settings for everything and you can ramp up production.

    Maybe @Jaimi knows specifically which thing it might be.
     
    reenw likes this.
  8. reenw

    reenw

    Joined:
    May 25, 2018
    Posts:
    6
    Hey @hopeful thank you very much for your fast reply.
    So I did some changes like to apply the transform to the export and now it feels to be one step closer to by goal :D
    upload_2023-7-21_0-42-51.png

    As far I can see there is still something not correct with the textures, I have to investigate and also if I put on the hat then all the other clothes get removed. I appreciate every help :D.
     
    hopeful likes this.
  9. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,665
    Your textures should be visible as usual in the Unity editor inspector if they made it across all right. Your hat should appear like a regular mesh with materials in Unity before you try to add it to your UMA. If you're getting purple after trying to add the mesh to your UMA, that points to using something other than built-in rendering path in your project, and you may need to make an adjustment to your UMA materials related to that.
     
  10. reenw

    reenw

    Joined:
    May 25, 2018
    Posts:
    6
    Hey @hopeful ,
    when I pull the model into the scene I can see everything fine with the right textures but it starts breaking as soon I try to create a new wardrobe recipe.
    Maybe somebody would find some time to connect with me directly and give me a little tutoring about creating new clothing content for UMA. Of course, I would also like to compensate for this with a fair tip :).
     
  11. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,665
    If you're feeling stuck, probably the best overall solution for you is to join the UMA Discord. A lot of people run into the same problems, so you can talk to people who already found the answers, and chances are good that someone will be able to respond pretty quick.

    There's a permanent link to the Discord in the UMA docs.
     
    Jaimi likes this.
  12. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    If you are using the atlas function (the default) you have to make sure all your UV coordinates are in the 0..1 range. That is, when you look at the texture in the UV section, they are all inside the box.
     
    hopeful likes this.
  13. Kst001

    Kst001

    Joined:
    Sep 14, 2021
    Posts:
    16
    Hello.

    My character skin slots' boundaries become visible, especially when I apply blend shapes. What am I doing wrong?

    upload_2023-7-24_9-48-40.png
     
    Last edited: Jul 24, 2023
  14. Kst001

    Kst001

    Joined:
    Sep 14, 2021
    Posts:
    16
    Which is better, single shared OverlayDataAsset for all body slots, or one OverlayDataAsset for each slot?
     
  15. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,312
    Hi Jaimi,

    thanks for your work on UMA :)
    I soon want to start a new project where I want to use UMA again, where do I find the latest (stable but beta is ok) version?

    Is it this? https://github.com/umasteeringgroup/UMA

    Eric
     
    Last edited: Jul 24, 2023
  16. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    I've seen people have issues with this before, but I'm not aware of what the fix was. Either they didn't include blendshapes on all models, or they didn't export normals with their blendshapes, or something else. You might try posting on the discord - I'm not a big Blendshape user.
     
  17. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    With a texture Atlas, multiple overlays - assuming you hide the slots that use the extra overlays when not needed. In the new upcoming release - having one texture is far superior if you use the compositing shaders.
     
  18. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    Yes - get Alpha 4 of 2.13
     
    Last edited: Jul 28, 2023
    Firlefanz73 likes this.
  19. tredpro

    tredpro

    Joined:
    Nov 18, 2013
    Posts:
    515
    What happened to WillB? all his unity/uma stuff is gone. his profile, asset store, website, everything
     
  20. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    He decided he didn't want to be in game development anymore. Some have said it's because a bunch of people wrote bad reviews because they didn't follow the instructions, and couldn't figure out how to make things work. But I don't have any idea if that is true, or if there are other reasons.
     
  21. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,312
    That's so sad, he had great stuff, I bought and enjoyed a lot of it.
     
  22. ValrikRobot

    ValrikRobot

    Joined:
    Jun 26, 2013
    Posts:
    206
    I was glad I got most of his stuff before he disappeared. Cant beleive uma is now gone
     
  23. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,665
    No, we still have UMA. In fact, an update is coming in maybe a month. Will B. was an artist who produced some art that was UMA-compatible.

    I think he was working for a group that had an UMA-based game. Maybe they completed their game (one way or the other) and that was the occasion for Will moving on.
     
  24. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    UMA has been somehow deprecated with no communication to me - I am not completely sure why or how. All I know is that I did not do it. I put in a support case to undo that, but so far they have not reached out to me. It may be that it is deprecated because it has "Unity" in the name of the application - there was a warning on the publisher site about that - but it seems strange to do that, since Unity itself paid for it's creation in the beginning. Nonetheless, we may end up with Unity Multipurpose Avatar becoming "Universal" Multipurpose Avatar, or something similar.
     
  25. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,665
    In the meantime, if anybody needs to download a fresh copy of UMA, I guess you should get it off Github. Though if you've downloaded it before, it should still be in your assets / package manager.

    https://github.com/umasteeringgroup/UMA

    Hopefully this gets resolved soon.
     
  26. Zentrickz

    Zentrickz

    Joined:
    Apr 27, 2019
    Posts:
    2
    Hello. I am getting those seams that the unified model is supposed to get rid of. I am converting the DAZ Genesis 8.1 Basic Female to UMA. I saw in the DAZ to UMA YouTube tutorial that he managed to get rid of the seams by ensuring that the rotation/scaling transforms were applied to all objects within Blender. I double checked my model in Blender and everything seems to be in order. I'm at a loss as to how to resolve this issue. Any help would be greatly appreciated.

    I have published a minimal reproduction of the problem on GitHub:
    https://github.com/ZenSoftware/ZenPublic

    Screenshot of the issue.

    Screenshot of my settings of my "Slot Builder"

    Screenshot of console log after creating arms & body slots. Seam removal is definitely being processed.

    Screenshot of the unified model in Blender, notice the rotation/scaling transforms have been applied.
     
    Last edited: Jul 30, 2023
  27. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    Are you talking about the shadow on the arm? Is it possible it's just some weird self-shadowing issue? The seams look fine to me. If you turn off shadows, does it look alright? (not the answer, I know).
    Oh - I see some faint seams on the legs. Maybe caused by atlassing issues - Are you using atlasing? If so, how large are your textures, and how large is your texture atlas? Will they fit in your atlas without shrinking them? Are you using "Best fit square" fit method in your atlas generation?
     
  28. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195

    Well the problem is definitely that the normals weren't combined, but since you're on the old version it's kind of hard to see what is going on. Can you try with Alpha 4?

    https://github.com/umasteeringgroup/UMA/releases/tag/v2.13a4
     
  29. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    There's something goofy going on that I can't find right off. I even rewrote the process, skipping a bunch of stuff to plug the new normals/tangents into the meshdata, and got the exact same results. The base character mesh (before Unity scales everything several times) is huge though - Are you using Blender? If so, did you follow the export parameters?
    Also, If you're on Alpha 4, you can simply weld the pieces together to get rid of the seams. That would get you going until this wierdness is figured out.
     
    Kst001 and hopeful like this.
  30. Kst001

    Kst001

    Joined:
    Sep 14, 2021
    Posts:
    16
    How to generate weld points?
     
  31. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    1. Select the slot you want to weld (the one you want to fix the normals/boneweights on. this slot is the one updated!).
    2. In the inspector, at the bottom, select the "Copy Normals" checkbox. (if your bone weights are bad, you can select that also - but I think you don't need that).
    3. Drop the slot you want to weld it to in the "Drop slot here to create weld". It will happen quickly, and you may not notice that it did anything.
    4. Go to the unity file menu, and hit "Save". <<-- Important, if you don't save, it won't save.
    5. Rebuild the library or remove references from it to make sure you are working on uncached data.
    6. Rebuild your character by hitting the regen button in the customizer section.
    Welds.png

    This was a "quick and dirty" function, and was originally meant to be runtime, not design time. So the UI is a bit wonky.
    My plan is to clean this up, make a "Weld now" button, display a dialog when done, add option to select which slot has the correct normals, add ability to average normals and updated both slots.
    Probably not make 2.13, which is likely going to be 3.0, at this point.
     
  32. Zentrickz

    Zentrickz

    Joined:
    Apr 27, 2019
    Posts:
    2
    I managed to get rid of the seams by utilizing the weld feature in Alpha 4! I'm so glad.

    With Alpha 4, I attempted to utilize the unified mesh to see if the seam processing would get rid of the seams, though they still existed. But the weld feature does the trick so I'm fine with that.

    My Blender FBX export parameters I was using was from the 5 year old YouTube tutorial that I was following. Yes, the scaling seemed all out of wack. I found the latest settings that you recommend here in this thread and utilized that instead. It remedied the scaling issues.

    On another note, with Alpha 4, when setting my texture channel size for overlays, I was getting some NullReferenceExceptions in the script `UMA\Core\Editor\Scripts\OverlayDataAssetInspector.cs` on line 114
    Code (CSharp):
    1. EditorGUILayout.PropertyField(blendElement, new GUIContent(""), GUILayout.Width(110));
    I just edited the script to do a null check for "blendElement" and managed to get everything working from there. I could submit a pull request on GitHub if you like. Though, I don't think my code is an actual solution. I suspect I am just circumventing some deeper issue that exists as I also get some out of bounds array indexing exceptions on line 97.

    Code (CSharp):
    1. SerializedProperty blendElement = _blendList.GetArrayElementAtIndex(i);
    But otherwise, everything is in working order now. Just let me know if you'd like a reproduction of this other bug I found. Thank you very much for the help Jaimi!
     
    Last edited: Aug 4, 2023
  33. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    No problem - there is a fix for that coming, but in case you need it now, here it is:

    Code (CSharp):
    1.                     GUIHelper.BeginVerticalPadded(10, new Color(0.75f, 0.875f, 1f));
    2.                     EditorGUILayout.PropertyField(_textureList.FindPropertyRelative("Array.size"));
    3.  
    Find that section of code in OverlayDataInspector.cs, and add this line right after:

    Code (CSharp):
    1.                     _blendList.arraySize = _textureList.arraySize;
    That's for adding the blend modes in the overlay. (only work when you are using the built-in compositing to RenderTextures - ie "Atlas" or "Non Atlas" mode.)
     
    Last edited: Aug 4, 2023
    Zentrickz likes this.
  34. frostdani

    frostdani

    Joined:
    Aug 14, 2015
    Posts:
    7
    Manage to get a hold of the Plugin, and now can create nice outfits. The key elements that i found out to be, is to have all the bones perfectly balanced when Skinning, so you don't get weird result when making the recipes.

    So now, i have a different question and i am just curious. Is it possible to change the default character? For instance, i have a different Male(that i like the face more), can it be possible to swap it with the default male? Or if it better to make it as a recipe for body, and hide the default body with the Mesh Hide Asset?
     
  35. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,665
    Yes, the defaults are just that ... defaults. In order to show UMA and have examples, it was necessary to have some body and clothing art. In UMA a body is known as a "race." There are old videos about making a new race that are basically still true. And you can even have cartoon or anime races.

    Keep in mind that your textures can contain things like scars, freckles, dimples, and other things that can be used for customization that don't necessarily require the development of a new body mesh. So quite possibly if you want a different look, you don't really need a new mesh, but maybe just different body textures.

    In the asset store, o3n has an example of different base body models that you can use. I believe the UMA Content Creation pack (if that's what it's called) also has additional body models. Keep in mind that UMA is a programming framework for adding and changing options on a skinned mesh via recipes. You could have modifiable UMA cars, spaceships, buildings, abstract cartoon shapes, etc.
     
    Jaimi and frostdani like this.
  36. frostdani

    frostdani

    Joined:
    Aug 14, 2015
    Posts:
    7
    Thank you! I will follow some tutorials for a new race and see how that goes.
     
  37. Kst001

    Kst001

    Joined:
    Sep 14, 2021
    Posts:
    16
    When I try to weld slots I receive this error. Why?

    upload_2023-8-7_18-14-59.png
     
  38. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    If the line numbers are valid, your boneweights seem to be messed up somehow.

    it's pulling the weights from here - this is the number of boneweights per bone:
    Code (csharp):
    1.  
    2. foreach (byte WeightCount in slot.meshData.ManagedBonesPerVertex)
    3.  
    Now it's looking up the bone in that meshdata:
    Code (csharp):
    1.  
    2. slot.meshData.umaBones[bone].name
    3.  
    But that line is blowing up -- so your umaBones don't match your boneweights -- ie, you have vertexes weighted to bones that don't exist.
     
    Kst001 likes this.
  39. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    All - Since Will left, it removed quite a bit of UMA content for new users. Specifically all the updated races - More realistic, Toons, Anime, etc.

    To help address the need for more realistic, and more toon-like characters, I've created a gofundme to fund the creation of some newer texture sets for UMA! Any donations received will be spent 100% on paying artists to create new texture sets for new races. I won't keep a penny!

    If this interests you, or you want to show your support, here is the link - https://gofund.me/9c272a09

    Thanks!
     
    Kst001 likes this.
  40. Kst001

    Kst001

    Joined:
    Sep 14, 2021
    Posts:
    16
    upload_2023-8-16_9-39-54.png
    Is Welds array supposed to have values after dragging slots to the field?
    What is BoneWelds list for if values are never appended to it?
     
  41. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    The welding feature is incomplete. It was originally supposed to do welding at runtime. When I didn't have time to finish it, I repurposed it to be editor-only - and to permanently modify the slots. I left the runtime stuff there so I could pick it up later.
     
    Kst001 likes this.
  42. Kst001

    Kst001

    Joined:
    Sep 14, 2021
    Posts:
    16
    Thank you for continuous support Jaimi!

    How should one go around equipping heels? Is there anything specific to UMA that will make it difficult / easier?
     
  43. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    There are two ways, but in the end they both rely on having a bonepose with the feet in the "High heels" pose and the position node moved up to accommodate them.

    In one method, you would create DNA on your character that incorporates the High Heels bone pose. Then your wardrobe recipe for the high heeled shoes would include "Override" dna for the high heels.

    The second method would generally have a second DNA Converter Controller, with the bonepose DNA on it. This would then be attached directly to the slot.

    In my opinion, the first one is the simplest, and allows you to have one "high heels" DNA that you can tune for different height shoes.
     
  44. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,312
    So cool what is possible with UMA :D
     
    Jaimi likes this.
  45. vaki26

    vaki26

    Joined:
    Jan 23, 2015
    Posts:
    22
    I am currently using UMA 2.11.6 everything has been working fine at the version with all the slot, recipes etc. zero issues. A warning popped up telling me to rebuild, ignore. I choose ignore all my UMA character no longer appear. It shows these errors: UMA recipe missing required race!, UMA recipe slot list is empty!, NullReferenceException: Object reference not set to an instance of an object UMA.UMAData+UMARecipe.Validate () (at Assets/UMA/Core/StandardAssets/UMA/Scripts/UMAData.cs:641). I tried to use global library to rebuild and it looked good, that did not work I tried to restore index that did not work. Any ideas I no longer can play or develop my game. I also completely deleted all my UMA & UMA Contents folders and restored them that also did not work.
     
    Last edited: Aug 24, 2023
  46. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    That warning pops up when the version number changes, as it assumes you have installed an update. Did you try to update to a later version? It sounds like your library is invalid... did you check into source control or something? Maybe make the library file (AssetIndexer.asset) readable?
     
  47. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    if it's a different version, it could trigger that. But rebuilding the library would be local to your project, and should always fix any missing item issues, as long as the items actually exist and weren't deleted.
     
  48. IIIZoom

    IIIZoom

    Joined:
    Jun 26, 2018
    Posts:
    24
    hi, id like to get into this asset but the last update was 3years ago, is it still useable?
     
  49. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,195
    It is. As well, there are updates on Github. There is also an active discord (link in the docs). There is an update on github as well, that I am preparing for release.
     
    IIIZoom likes this.
  50. IIIZoom

    IIIZoom

    Joined:
    Jun 26, 2018
    Posts:
    24
    ok thank you