Search Unity

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,208
    uncheck the "Swap Slots" property on the UMASimpleLOD component. If this is checked, it will look for LOD meshes. If you don't have them, then things go wrong.
     
    hopeful likes this.
  2. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,685
    I was looking at this in the store today, and I was wondering why it is separate from the regular UMA download and what purpose it serves.

    If it is converted ISBIT clothes and a few new face / body sliders ... why not include that with the regular UMA?
     
  3. umutozkan

    umutozkan

    Joined:
    Oct 30, 2015
    Posts:
    406
    That's been discussed in slack and offended some people for backwards compatibility issues. So I made it a seperate pack. I offered to give it to steering group before to be included. Offer is still on and always will be if UMA community decides it's the way to go.
     
  4. umutozkan

    umutozkan

    Joined:
    Oct 30, 2015
    Posts:
    406
    Oh I guess I misunderstood your question. It's not UMA base model with new sliders. It's new custom male and female meshes. This is not compatible with base UMA (wardrobe items will not fit each other unless they are overlays only).
     
  5. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,316
    They look nice!
    How about a Zombie, Man-Bear, Mummy etc. Race or maybe alien?
    Since we can have humans, elves and dwarfs maybe trolls and werewolves with the existing body parts it would be great in my opinion to have some more other human-like Fantasy races... :)
     
  6. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,685
    Okay, but I'm still a bit unclear. Is there something about the new body meshes that makes them particularly desirable? Or are they just alts?

    I mean like ... are they high poly, low poly ... better in some way? I think I remember you working on this months ago ... in which case, these may be higher poly alternate meshes?

    If it's a complicated question to answer, we can take it to your thread. I've got it on watch. :)
     
  7. umutozkan

    umutozkan

    Joined:
    Oct 30, 2015
    Posts:
    406
    They are comparable on poly count. My package also has high poly head and hands (as base UMA does).

    The mesh is crated from UMA Base so the UV's are mostly compatible. (Might be slight discrepancies where seams are but mostly unnoticeable) This makes some of the overlay only wardrobe items usable on my races.

    Other than that mesh shape is heavily altered to give the natural look. You'll notice that especially male one is not as bulky as UMA base male.

    Skeleton is also heavily altered/recreated to have better morphs. Also has twist bones not only in forearm like UMA base but forearm, shoulders, upper and lower leg. (I am working on scripts to get advantage of it out of the box)

    The modles are skinned with a mindset to optimize morphs. Better morph effects are aimed by this. You'll notice that upper / lower weight sliders are significantly more natural than base UMA.

    I may have missed a few things, but you can check it out yourself on the WebGL demo ( http://static.o3n.org/demo/o3nmfuma2/index.html ).
     
  8. Keita-kun

    Keita-kun

    Joined:
    Aug 20, 2017
    Posts:
    36
    Hi there, excuse my ignorance I am very new to this world ;)

    I upgraded to Unity 2017.2.0f3 recently as advised then I discovered UMA2 I said I can learn and have fun but nothing works keep having errors the character never shows up when I hit play:(.

    getting errors like:
    SkinnedMeshRenderer: Trying to set a mesh ("") that is unfit for use with SkinnedMeshRenderer. Most likely it doesn't have Skin information and/or is only assigned to the renderer during runtime, in which case Unity isn't aware of its use with SkinnedMeshRenderer. Mark the mesh as Readable or assign it to the renderer in the Editor before building...

    Thanks in advance for your help getting started
     
  9. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    This is the result of a big BUG in Unity 2017.2. It's fixed in the latest 2017.2 patch: https://unity3d.com/unity/qa/patch-releases
     
    hopeful and Keita-kun like this.
  10. Keita-kun

    Keita-kun

    Joined:
    Aug 20, 2017
    Posts:
    36
  11. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,685
    That's interesting. I think you should talk about that more in your thread. It seems to me like some of these things should be explored as upgrades within UMA.

    I can understand artists not wanting to re-do all of their clothing every time there is an incremental update to a base model, but it seems like there could be a github type approach where there is an experimental path for an upgraded model.
     
  12. umutozkan

    umutozkan

    Joined:
    Oct 30, 2015
    Posts:
    406
    The problem with new base meshes is that the people already invested in UMA base are reluctant to use the new incompatible races, not just the artists who already have their assets for UMA base. Which is perfectly understandable.

    UMA could use some improvements with it's base meshes, that's why I created these races in the first place. It doesn't make any difference to me if it's in the base package or published as an add on like this. As I said I am all for having it in UMA package. I'll do my best to work with others to make it even better too.

    I could have tried and make the races compatible with existing clothing, but that would mean I'd have to keep the seam locations the same, and more importantly I wouldn't be able to change the skinning much, let alone adding new bones to skeleton without breaking the existing content. So I decided to make it incompatible hoping to make better morphs.

    I tried my best to make them good. Tried to create something I would use myself. I am pretty sure that there are great many number of artists (I do not consider myself an artist btw) who are far more talented than I am who could create a much better race for UMA. It's just that no one did :) So for better or worse here they are ;)
     
    hopeful likes this.
  13. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    UMA 2.7 Public Beta is available

    New for this release are the following features:

    • Editing improvements - more dropdown lists and automatic generation of parameters.
    • Bone Builder - This utility precreates the bones for the UMA, so you can integrate the UMA with various controller assets at design time.
    • Mesh Hiding - Ability to have wardrobe recipes hide polygons. An editor is included to define what polygons are hidden.
    • Various bug fixes
    You can get the public beta from here:

    https://github.com/umasteeringgroup/UMA/releases/download/v2.7-beta.1/UMA-27-beta.unitypackage

    We're hoping that a bunch of people will try out the new features. If there are any issues, we'd like to address them before uploading to the asset store. So give it a whirl, and if you see any issues, please let us know.

    The two major features are documented here:

    http://www.umawiki.secretanorak.com/Bone_Builder

    http://www.umawiki.secretanorak.com/Advanced_Mesh_Hiding

    There are some older videos of these features below. Please note that there has been some changes since these videos were made. The documentation linked above is up to date.



     
    Firlefanz73 and hopeful like this.
  14. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,316
    Thanks Jaimi!
    Using the bone builder sounds like a great Feature for me, in some situations I have Problems getting the uma Skeleton for adding stuff to the Hands... ;)
     
  15. MateAndor

    MateAndor

    Joined:
    Nov 5, 2014
    Posts:
    70
    Thanks. but i use https://www.assetstore.unity3d.com/en/#!/content/25366 this.
    And the problem is with the UMA mesh i think.
    Or i need to use UMASimpleLOD too?
     
    Last edited: Nov 16, 2017
  16. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    3,356
    Been a while since I used UMA and I'm curious if it would be a good fit for my current project.

    The character models and shading are very close to Albion Online. I would pay to have a race created for this. It has to be lower poly not sure if UMA imposes any restrictions in that area. Shading I'm assuming I can use whatever I want, as it's definitely not going to be PBR shading.

    The main question I have is if the overlays would save me time/resources over just using custom models. Clothing will be a relatively small set of patterns with a bunch of variants that vary by color only. So it's not a complex character setup as most games go.
     
  17. SirTwistedStorm

    SirTwistedStorm

    Joined:
    Sep 20, 2015
    Posts:
    192
    From what I gather you can use any model with UMA if you set it up the right way but you would still need make all the models for clothes and weapons anyway. I do not think UMA would save you time unless you need to morph your character models.
     
    Jaimi likes this.
  18. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Oh, I thought you were having trouble with something in UMA. For that asset, I don't have a clue. My gut feel would be that perhaps it doesn't handle meshes with multiple submeshes well, but really I don't know.
     
  19. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    The advantage that UMA will give you in this case is that it will generate custom atlases for you for each of your model, and it will combine your models into a single mesh. This will reduce your draw calls and improve performance. At it's heart, UMA is like a super "mesh combiner" that works on skinned meshes. If you allow customization of your models, then it will also make it easier to share the customization across the network by serializing the customizations, and then allowing you to deserialize them on the far side.

    There is no minimum polygon requirement or limit beyond what Unity already imposes. As well, you can use any shaders you like, you'd just have to create a UMAmaterial for them so UMA knows how to generate the materials and atlases.

    If you create your own race with it's own mesh, textures, clothing etc, you can use the "Simple Setup" scene to design your UMA's (choose the different pieces for them, set their colors, any DNA you setup, etc), and then you can save it as a runtime-customizable character. The downside of having it be runtime customizable is that it generates a unique material/texture for each mesh, so if you have a lot of similar meshes in the scene, they're not sharing textures. If you don't need runtime customization, then you can use the Power Tools to pregenerate a non-customizable prefab, and then of course you can share materials.

    You can create your own races - SecretAnorak has some videos to help out with this. Or there are several people here who have already done it that you may convince to help.

    Hope this helps.
     
    SirTwistedStorm likes this.
  20. Sehlor

    Sehlor

    Joined:
    Feb 10, 2012
    Posts:
    199
    So what i understand from this is, if i create a system that allows runtime customization of a character ( MMO-wise ) i can't share materials between UMAs?

    How it effects the game performance-wise?
     
  21. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    It could be faster or slower. Most likely UMA will be much faster. UMA will generate a texture atlas for each character. This significantly lowers draw calls. Of course, if you are strapped for texture RAM, then UMA will run slower. So you have to balance your resource usage. UMA can tune the texture usage on the fly to help out, and there is a Texture LOD sample scene included that shows how to do it.

    As well, you can preset the generator to lower texture atlas resolution, so you can include this as part of your graphics setup. For example, we ship the generator by default to lower atlas usage by 50%. If someone is on a lower spec system, and running in "medium" or "low" mode, then you can lower this even further.

    It's easy to have UMA's regenerate their atlas, and it uses the GPU so it's really fast. So you easily write even more comprehensive tuning when you detect frame rates are getting low, with just a few lines of code.
     
    Last edited: Nov 16, 2017
    Arlorean likes this.
  22. Sehlor

    Sehlor

    Joined:
    Feb 10, 2012
    Posts:
    199
    Thanks a lot for that information.
     
  23. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    Can you give us more information on your issue? It sounds like you're trying to use SimpleLOD at runtime, but I would assume it's an editor tool?

    UMA already does material atlassing, like Jaimi just described, so if you are wanting mesh LODs, you can create them for each mesh clothing you want to LOD using SimpleLOD, then you can hook them up in the UMA system using it's UMASimpleLOD component (the similar names are a coincidence).

    This component allow the UMA system to use alternative (LOD) slots when generating; http://umawiki.secretanorak.com/Simple_LOD
     
  24. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,685
    What the SimpleLOD plugin does is at runtime it takes a completed UMA and creates LOD levels of it. Possibly this script has become outdated and is malfunctioning, but it seems possible there is user confusion about which similarly named function is being executed?
     
  25. jakes-du-preez

    jakes-du-preez

    Joined:
    Aug 14, 2013
    Posts:
    30

    Hi

    I use this loading and saving on the DCA and it seems to work with the slots and all but the hair, body and skin colors dont work when loading it again,... Am i missing something.....
     
  26. Firlefanz73

    Firlefanz73

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

    just for your Information: I downloaded and installed Uma2.7 yesterday (with Unity 2017.2). And by the way I upgraded RPG Starter Pack 1 from Will to latest 1.52.

    Everything I use until now works perfect just as before, I now can also access the new face stuff, which did not work before because of broken texture links in the overlays. Everything Looks fine.

    Maybe I will find some time to test the new bone stuff or the ragdoll stuff, both sounds very interesting.

    Thanks a lot for the update!
     
    hopeful likes this.
  27. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    That should restore the colors also. Can you check in the string, see if it has the colors? I'll try to chase this down.
     
  28. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Great! Thanks for checking it out. It's a group effort, but the major enhancements were the brainchild of Kenamis this time around.
     
  29. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,316
    Thanks a lot Kenamis, too :)
     
    kenamis, Jaimi and hopeful like this.
  30. MateAndor

    MateAndor

    Joined:
    Nov 5, 2014
    Posts:
    70
    Thanks for the reply.
    I use SimpleLOD (not from UMA). The plugin outdated, but works fine with latest UMA.
    So my issue: Few clothes i have a problem, like male sweatpants.
    If add this cloth to the male character and i check the dynamic character mesh, this is look like just the pants.
    Can you check, i try on the base demos too, not just my project. So the mesh is just the pants, and the SimpleLOD create the meshes just for this.
    Looks like the problem is with the sweatpants, but i dont know what.
     
  31. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    I really can't imagine what could be different about the sweatpants - it doesn't have any cloth or blendshapes. it has only 1 mesh, and that uses the standard material. There are only 2095 vertexes in the sweatpants as well. It's really pretty vanilla.

    I don't have SimpleLOD, so I can't be much of a help. Have you contacted the asset developer? We can assist him if he has any questions.

     
  32. Sehlor

    Sehlor

    Joined:
    Feb 10, 2012
    Posts:
    199
    Ok i'm stuck.

    Using latest UMA 2, what is the best way to change DNA values programatically?
     
  33. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Are you using DynamicCharacterAvatar?

    If so, you get a list of DNASetters from the avatar, and use those to modify at runtime (see the Simple Setup sample scene)

    edit: (additional Info)

    You can call GetDNA() from the DynamicCharacterAvatar to return a dictionary of DnaSetter objects. this is keyed by DNA Name (example "ArmLength").

    Dictionary<string, DnaSetter> AllDNA = Avatar.GetDNA();
    AllDNA["ArmLength"] = 1.5;

    You'll have to rebuild your avatars recipe to see the changes:
    Avatar.BuildCharacter();

    You'll also need to make UMA generate it:
    Avatar.ForceUpdate(true); // tells it the DNA has changed

    Note: when you call buildCharacter, it regenerates the DNASetters (because DNA Converters can be changed or added in recipes), so you shouldn't cache the results of GetDNA(), unless you want to manage it.
     
    Last edited: Nov 17, 2017
  34. ychv

    ychv

    Joined:
    Apr 9, 2014
    Posts:
    18
    Thanks guys for the work on 2.7.

    I briefly tested the Bone Builder feature with Invector's Shooter character controller, FinalIk, and PuppetMaster. They seem to work. I am using Unity 2017.1.1f1. I did noticed the following:

    - The joints created by Bone Builder, when using an object with a DynamicCharacterAvatar component (HumanMaleDCS/HumanFemaleDCS) as input, seems to have their positions scaled by the Y axis. The feet positions are closer to the grey UMA scene editor window image but the head is about 0.2 units above. The positions are corrected at runtime and seems to run just fine.

    - The duplicate skeleton child object name error message and animator controller getting overriden were mentioned in Kenamis' intro video. <edit: removed animator controller value suggestion -- not a big thing.>

    - I was not able to get the Bone Builder to work with a receipt input. It seems to only accept *.assest files and generates a "NullReferenceException...Assets/UMA/Core/Extensions/DynamicCharacterSystem/Scripts/Editor/UmaBoneBuilderWindow.cs:62" error. It could be user error on my part.
     
    Last edited: Nov 17, 2017
  35. Sehlor

    Sehlor

    Joined:
    Feb 10, 2012
    Posts:
    199
    Thanks to you @Jaimi Got that working!
     
  36. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    Thanks for the feedback!

    I believe that is intended. The runtime male and female UMA's default bone values are smaller than unscaled values in the slot data. It shouldn't cause any issues, but let us know if it does.

    I believe the animator controller is a separate issue from the bone builder. It gets set by the DynamicCharacterAvatar component, the "Default Animator Controller". I can add that as an item to have an option to not have the DCA overwrite the animator controller if one exists already. Does that address the issue you were seeing?

    Strange, I'll look in to it. Was there a specific recipe you were using so I can try to reproduce the error?
     
  37. ychv

    ychv

    Joined:
    Apr 9, 2014
    Posts:
    18
    Okay, I see - the grey character image is more of general reference.

    I thought about it. The animator controller value is easy to set and not a big issues. It's fine as is.

    I was creating the recipe from the "UMA->Save and Load" menu items. I tried the available save options. It was the default DynamicCharacterAvatar HumanMaleDCS character.
     
    kenamis likes this.
  38. ychv

    ychv

    Joined:
    Apr 9, 2014
    Posts:
    18
    I might be confused on use of receipts -- need to look up more on using it. I did try with other existing receipts from the circle button and got the same error.
     
  39. MateAndor

    MateAndor

    Joined:
    Nov 5, 2014
    Posts:
    70
    I created a video to see what i think "wrong".
    In this im not use any asset, just the base UMA.

     
  40. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    That video isn't that helpful trying to figure out the issue. Can you show us the problem you're getting when using SimpleLOD?
    Also, if you PM your email I can invite you to the UMA slack channel so you can chat with people in realtime to help resolve your issue.
     
  41. MateAndor

    MateAndor

    Joined:
    Nov 5, 2014
    Posts:
    70
    Here is the video with SimpleLOD.

     
  42. ecurtz

    ecurtz

    Joined:
    May 13, 2009
    Posts:
    640
    For anybody following along at home this looks like an issue with slot scaling and the differences between skinned and non-skinned meshes. We're going to look at the source files for the sweatpants.
     
    hopeful and MateAndor like this.
  43. sandeep_kumar_p

    sandeep_kumar_p

    Joined:
    Aug 24, 2013
    Posts:
    4
    Hi,
    I'm using UMA 2.6 for Character Customization in my project. I am facing an issue regarding Material Rendering. After I make the changes to my Dynamic Character Avatar all my DNA, Mesh and Texture changes are updated and reflected on the generated UMA but the resulting character doesn't seem to have any map applied to it other than the Albedo.

    2017_11_18_14_21_48_.png
    But as soon as I select UMA Renderer from the hierarchy and expand the material from inspector by clicking on the collapsed material name, all the other maps seem to start working.
    2017_11_18_14_24_04_Unity_5.6.3p3_64bit_CharacterCustomization.unity_TML_Project_PC_Mac_L.png

    (The changes are reflected as soon as the material/shader editor is expanded as following) (For differences look at the loops for belt and wrinkles on the shirt.)
    2017_11_18_14_23_30_.png

    I am using my own UMA Material for which the configuration is as follows:
    Custom_Uma_Mat.png Custom_Mat.png


    The Avatar appears as shown in the first picture (without maps) in the game build. Please help me with this issue, Thank You.
     
    Last edited: Nov 18, 2017
  44. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    This is a quirk of using the standard unity shaders. When you build a custom uma material using the standard shader you need to put in some "dummy" textures in the shader input for the channels you are planning to use. The reason why is because unity's standard shader is actually many different ones that changes based on the input. It normally figures that out for you, but can't with uma. So, in your case, just drag a texture in to the albedo, normal map, specular and ambient occlusion channels on the unity material you are using for the uma material.
     
    hopeful and sandeep_kumar_p like this.
  45. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,316
    Hello,

    I installed the 2.7 yesterday. In Editor everything is perfect.
    But when I want to make a PC Standalone build (Unity 2017.2.0p2) I get some Compiler Errors:

    Very strange this one, but I guess it is only because of others:
    Assets/UMA/Core/StandardAssets/UMA/Scripts/GeometrySelector.cs(2,7): error CS0246: The type or namespace name `UnityEditor' could not be found. Are you missing an assembly reference?

    No idea:
    Assets/UMA/Core/StandardAssets/UMA/Scripts/GeometrySelector.cs(48,20): error CS0246: The type or namespace name `OpenSceneMode' could not be found. Are you missing an assembly reference?

    Is there a hotfix or a hint? Thanks :)
     
  46. sandeep_kumar_p

    sandeep_kumar_p

    Joined:
    Aug 24, 2013
    Posts:
    4
    Thank you @kenamis for the prompt response. Adding dummy textures to the material fixed the problem and everything is working like a charm now. :)
     
    hopeful likes this.
  47. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Oops. That should be an editor script. We'll need to move it. I'll try ro get that done and re-uploaded layer today.

     
    hopeful and Firlefanz73 like this.
  48. Firlefanz73

    Firlefanz73

    Joined:
    Apr 2, 2015
    Posts:
    1,316
    Thanks Jaimi! Please have me updated, I can test it :)
     
  49. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Will do. It's a bit more complicated than I thought (it's not an editor script for a reason). I'll have it updated here in a few minutes.
     
  50. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    UMA 2.7 Beta 2 Release

    Beta 2 Update:

    Fixed: Geometry selector preventing builds.
    Fixed: Mesh hide assets persisting after recipe removal.
    Fixed: Recipe editor size in inspector is weird.
    Fixed: Crash on Mac when using Geometry Selector (Weird Unity bug)

    Known Issues:

    Occlusion meshes can sometimes be out of scale or rotated. This can also cause issues when using SimpleLOD to rebuild UMA on the fly.


    https://github.com/umasteeringgroup/UMA/releases/download/v2.7-beta.1/UMA-27-beta2.unitypackage
     
    hopeful and Firlefanz73 like this.