Search Unity

UMA - Unity Multipurpose Avatar on the Asset Store!

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

  1. Sholms

    Sholms

    Joined:
    Nov 15, 2014
    Posts:
    24
    I tested with unity 2017 and 2018 on windows and I receive the same error
     
  2. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    334
    Would you be able to send me your race, slots, and overlays for me to try to reproduce your error?
     
  3. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    334
    Are you building with one of the sample scenes or a scene you created?
     
  4. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    did you download the updated code from the link I posted?
     
  5. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    hopeful, kenamis and boysenberry like this.
  6. arteria

    arteria

    Joined:
    May 31, 2007
    Posts:
    2,081
    New 'Tudor Townsman Costume' for UMA








    The 'Tudor TownsMan ' costume is designed for Unity 5 UMA 2.5 Character system..

    All costume items scale and deform precisely so you can vary the size of your characters proportions

    Pack Contains:

    • 4 Slots
    • 4 Overlays
    • 4 Wardrobe Recipes
    SLOTS Included & Overlays & Wardrobe Elements for:

    • Hat
    • Tabbard
    • Trousers
    • Boots
    Purchase for $14.99 from Arteria Store:
    https://arteria3d.myshopify.com/products/tudor-townsman
     
    Last edited: Jan 18, 2019
    Jaimi and boysenberry like this.
  7. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    40
    Hey guys, I've been making new clothes for my custom UMA race. It worked fine for the first couple of times, but now it's telling me these:

    Mesh.boneWeights is out of bounds. The supplied array needs to be the same size as the Mesh.vertices array.

    Failed setting triangles. Some indices are referencing out of bounds vertices. IndexCount: 47925, VertexCount: 65534

    Bones do not match bindpose.

    I can't figure out how to fix these.
     
  8. arteria

    arteria

    Joined:
    May 31, 2007
    Posts:
    2,081
    Are your meshes quite high poly, as I’ve experienced this error if I’ve pushed the poly count on clothing
     
  9. axleR

    axleR

    Joined:
    Jan 9, 2019
    Posts:
    6
    Built a new Race/DNA with the same mesh and now the blendshapes work fine. Not sure what I did wrong before. Or right this time;)
    Now on to the neck seam.
     
    Jaimi and kenamis like this.
  10. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    40
    Ah, yes. They're around 20k polys. What, is there a limit?

    Edit: It seems there's a limit. I tested it with only the clothes and it seems to be fine. By my tests. the limit is around 60k polys. That isn't good at all.

    Unless I can cheat? Like, using normal maps instead of meshes for the clothes? Attaching the hair as a prop instead of letting UMA handle it? How do I do that? The hair is especially high poly because they're hair converted from Blender hair particles.

    Also, is it possible to use normal maps instead of t-shirts meshes and the like? Or is it better to use the T-Shirt mesh(and others) and just plain hide the mesh it's covering?
     
    Last edited: Jan 19, 2019
  11. marto

    marto

    Joined:
    Jun 19, 2013
    Posts:
    4
    Hi, I am having an issue with a clothing mesh (shorts) which is only showing a very small part.

    Imported from blender, all the other slots are working.

    It renders correctly when the slot prefab is dragged on the scene but not the asset.

    It was model by someone else and I have upgraded it to UMA2. It looks fine in blender.

    What could be causing the mesh to not render correctly?


     
  12. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    2,375
    So how much work would be involved to make UMA work with legacy animations? Would it be fairly straight forward? I can't think of any reason why it wouldn't be, but I'm not at all familiar with the codebase.
     
  13. arteria

    arteria

    Joined:
    May 31, 2007
    Posts:
    2,081
    Today is the last of the UMA GIveaways!! UMA users can choose one free pack today from our UMA collection(new Tudor character, knight pack and Viking pack exempted) Email steve@arteria3d.com with your selection
     
    hopeful likes this.
  14. Dadibom

    Dadibom

    Joined:
    Oct 7, 2013
    Posts:
    4
    Hi everyone, just got UMA set up and now I'm trying to add weapons to the hand slots. The problem is that it seems to take a couple of frames before the skeleton is actually created, meaning i cant find the skeleton in my start method. What's best practice here? Is there some way to get a callback to run when the skeleton is built and added to the gameobject?
     
  15. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    Currently, UMA supports meshes with 16 bit buffers. This is due to legacy code, and is due to be upgraded in Release 2.9. But generally, you have to cheat where possible. This is always the case when designing games. Typically, people generate high quality meshes using sculpting, cloth solutions, etc - and then "Retopo" them using some retopology tool (like this one: https://blendermarket.com/products/retopoflow/ ) to a low poly mesh, and generate normal maps for the missing detail from the high poly mesh.
    There are also tools to help generate low poly meshes specifically from hair (for example: https://gumroad.com/l/hairtool)

    In addition to these, you can also force UMA to generate a separate atlas and mesh for the various mesh parts by using (or creating) a different UMAMaterial, and assigning that to both the slot and the overlay(s) that it uses. (This is helpful as well for hair when you want it to reflect light differently, for example.) This will result in more meshes and drawcalls, of course.
     
    Ne0mega likes this.
  16. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    UMA generates a mesh and skinned mesh renderer at runtime. In theory, if everything matches exactly, you can use an old animator and attach legacy animations to it. But honestly, I don't recommend it.
     
  17. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    There is a callback (OnCharacterCreated) on the DCA.

    However, there is a different solution also - you can pregenerate the bones using the bone builder, and then the skeleton will exist when your start method is executed.
     
  18. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    Looking at the picture, it looks like the "belt buckle" is there, but not the pants. If your blender mesh has multiple materials, it will generate multiple UMA slots - that is the most likely scenario here. Look in the folder and see if more slots were generated, and if so, add them to your recipe.

     
    marto likes this.
  19. Dadibom

    Dadibom

    Joined:
    Oct 7, 2013
    Posts:
    4
    I did not find a reference to "bone builder" but i did get the callback working, thank you!
     
  20. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    You're welcome. If you need the Bone Builder in the future, it is on the UMA menu. Choose "UMA/Bone Builder", select the race on your DCA, and drop the game object with the DCA on the object field and click "Generate Bones". I believe this was added in Release 2.7.
     
  21. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    40
    Having multiple draw calls... well, I'd like to keep it low, but honestly in my case it's not really important. There won't be many things on screen, actually the maximum number of entities on screen at all times will be maybe 3. Kind of like a Fighting game, and the backgrounds are pretty minimal. So I have a lot of budget for my UMA and monsters.

    So if I understand correctly, I can make another material, let's say "UMAPantsMaterial", using it only for all the pants, and it's not going to count for the poly limit? If I have a different material for each slot, for example, I'm essentially free from the limits, but with increased draw calls? Would the morphs DNA still work?
     
  22. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    You still have the limit on vertexes/faces/etc, but the limit is per mesh - so you should be fine. More meshes means more draw calls. DNA will still work.
     
  23. DankP3

    DankP3

    Joined:
    Jul 17, 2017
    Posts:
    68
    Jaimi and kenamis like this.
  24. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    40
    Allright. I made a new UMA material for each slot I'm using on my UMA race. I have one for the hair. torso, arms, legs, etc. and another one for the main UMA. I also created a new normal material for each one. They're all set to use the same base shader, though. Yet, it still seems I'm hitting the limit. My UMA comes out deformed. Is there something I'm forgetting to do?
     
  25. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    On the UmaMaterial, change the Material Type to "No Atlas". If that doesn't do it, there are other things to look at, but that should.
     
  26. Dadibom

    Dadibom

    Joined:
    Oct 7, 2013
    Posts:
    4
    Is there a method to remove every single wardrobe item from the character in one call?

    EDIT: Turned out you can call ClearSlots without arguments to clear everything!
     
    Last edited: Jan 19, 2019
  27. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    40
    Unfortunately that didn't help.
     
  28. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    Hmm - maybe someone else can chime in.

    That *should* have stopped it from trying to merge the meshes. On the source material, it also checks the RenderQueue - so you can give that a unique number (whatever+1, +2, etc) and then it will force the material check to be unequal.

    But beyond that, it's likely your source meshes are just too large. If it's complaining about BlendShapes, you might try removing those. But honestly at this point,I'm thinking "too big"
     
  29. snacktime

    snacktime

    Joined:
    Apr 15, 2013
    Posts:
    2,375
    Ya I think it would take another pass to map the bones correctly to make legacy work. We have too many characters for mecanim. Mecanim for core features, cross fading and layer blending, is more then double the cpu usage of legacy which starts adding up a lot. Doing a clean implementation of the UMA approach is actually on the table, that is still a better option long run for us then more traditional methods. But I'm thinking it will be easier to just work with UMA and modify as needed.
     
  30. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    40
    Yeah. Well, it's unfortunate. That's not too big of a problem, though, I'm thinking I can work around that by having the hair work as a "wig" and have another system for swapping hair styles instead of recipes. Just attaching it to the head bone or something. Unless I restart everything, which is undesirable for now since it took me months to get it working. (Not because of UMA, though. The system is amazing as is.)

    Thanks for your help, still. I appreciate it.
     
  31. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    This might sound silly, but slots don't have to contain meshes. You can actually create a slot without a mesh, and then attach a script to it (tied to an event), and have that attach your wig.
     
    hopeful likes this.
  32. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    334
    Did you confirm whether multiple skinned mesh renderers were being created or not? You can expand the uma root object at runtime and see subobjects for each skinned mesh renderer.
    I think you need to check "Separate Renderer" on each uma material you want to separate to another mesh too.
     
  33. marto

    marto

    Joined:
    Jun 19, 2013
    Posts:
    4
    Thanks Jaimi, there was a second slot and is now working correctly.
     
  34. DavidGrof

    DavidGrof

    Joined:
    Sep 13, 2016
    Posts:
    17
    Hi, just a quick question. On the Animator Component the avatar property gets added at runtime?
    When I spawn a DynamicUma character with networkidentity the avatar does not get added. But no errors in sight.
    Any fix for this?
     
  35. arteria

    arteria

    Joined:
    May 31, 2007
    Posts:
    2,081


    Today, Arteria3d release a new DUO UMA Costume pack. Thank you to the Devs for allowing us to post here too.
    The 'Tudor Squire & Lady ' costume is designed for Unity 5 UMA 2.5 Character system..

    The pack contains both the Male & Female costumes, plus new head textures, and hair meshes too!

    Pack Contains:

    • 5 Slots
    • 5 Overlays
    • 5 Wardrobe Recipes
    SLOTS Included & Overlays & Wardrobe Elements for:

    • Hair Mesh
    • Hat
    • Tabbard
    • Trousers
    • Boots
    As a special offer, UMA forum members, can purchase this pack for $9.99 if you email the code 'Squired' to steve@arteria3d.com - you will then receive a special payment page to purchase.

    Main Prouct Page:
    https://arteria3d.myshopify.com/products/tudor-squire-lady
     
  36. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    A DynamicCharacterAvatar should add an animator and animatorcontroller when it is loaded and built. Are the Default Animation Controller and "Race Animators" setup on your prefab (in the DynamicCharacterAvatar component)?
     
  37. DavidGrof

    DavidGrof

    Joined:
    Sep 13, 2016
    Posts:
    17
    I have followed this guide since I am using ThirdPersonController :

    But I use a networked player so that is different.
    The Animator component itself is working fine just the avatar is Missing.
    Could you possibly give me a hint where to start debugging the issue?

    Edit: The Avatar does not get added when I create a prefab. Using unity 2018.3.
    I also do not see the Context GameObject that you Instantiate when clicking on DynamicChar GameObject
     
    Last edited: Jan 22, 2019
  38. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    The Avatar is created when the UMA is built the first time. This may take a frame or two depending on settings. Are you getting an error at any point?
     
  39. DavidGrof

    DavidGrof

    Joined:
    Sep 13, 2016
    Posts:
    17
    No error. It gets created in the scene then I save the GO as to Prefabs folder. Open it and then it has no avatar.
    I have also searched the project if something changes or removes the avatar but nothing else just UMA.
     
  40. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    I don't understand - are you saying that you are saving a prefab of the UMA while the game is running?
     
  41. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    40
    Hey guys! Good news. I got everything working pretty much flawlessly now. Damn this thing is amazing. @Jaimi you and your team do good work. I'm impressed.

    I have a couple questions, again. Now, this is not required, I don't even know if the concept exists as a whole so I might be reaching, but two things.

    1: Is it possible to use DNA to "Blendshape" textures? For example, I have a set of eyes that I want to go from normal to berserk, where the eye pupil changes shape. I made two textures. I want to get a Dna slider that "morphs" the normal texture into the berserk texture. I want it as a slider so I can hook it up into a quick time event, so I can have players mash a button in order to calm down and have the eyes reflect the emotional state in realtime.

    2: I want to use a posing system similar to Daz Studio, where you have a set of pre-made poses and you can switch among them on the fly. I saw something called BonePose in the DNA tool, unfortunately I can't find documentation for it anywhere. I don't even know what kind of [Race Data] to feed it. If it enables me to, let's say, make a facial expression and hook it to a DNA Slider, that would be great since it's exactly what I need. Although maybe I could get around this by using the animator. so again, it's not the end of the world.
     
  42. DavidGrof

    DavidGrof

    Joined:
    Sep 13, 2016
    Posts:
    17
    No why? I save it as a prefab after the scripts are added to the gameobject in the scene .
    Then when the scene is loaded I Instantiate the object.
     
  43. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    2.8 (due for release "real soon now") has added some new DNA features that let you blend textures, colors and normal maps. You can also add all the different classical DNA types together with these in a single DNA setting. It comes with an example DNA that morphs the character from a long eared small muscular blue elf, to a tall, smooth skin green alien with a conehead. This is all setup through tables, and is much easier than the old dynamic DNA.
    I think this will cover both of your scenarios.
    The boneposes are used to create the initial race pose (in conjunction with the base race recipe, they define the looks of the race) - basically, they level set the race to a specific size/pose so the neutral DNA is the pose, and DNA changes adjust the pose.


     
    hopeful and boysenberry like this.
  44. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    4,780
    Im just trying to figure out where things ate breaking down for you. The Animator and Avatar are added at runtime, so that won't exist until the character is built at runtime. You can manually run the bone builder, and setup the avatar on the character if you need that for a prefab (like if you are using a 3rd party controller like ooti or invector) in which case you can use the avatar from the unified fbx.
     
  45. digiross

    digiross

    Joined:
    Jun 29, 2012
    Posts:
    204
    I am starting a new rpg and like what I see about the UMA, can anyone recommend a good set of tutorials to get it up and running? Also, any good tutorials on creating clothes since i'm not doing a fantasy game, hairs etc.?
     
  46. arteria

    arteria

    Joined:
    May 31, 2007
    Posts:
    2,081
    As continued support to the UMA community, for such generous support over the past few months, we are giving away free our 'Egyptian Priest' UMA costume today - Visit the page below, to access a special offer for our UMA costumes, plius to download your free Priest Costume

    https://arteria3d.myshopify.com/products/uma-special-giveaway
     
    lcs_tlf and boysenberry like this.
  47. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,883
    Sounds wonderful! I'm hoping in another week or two I will have time to get at this. :)
     
  48. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    4,883
    On clothes, I'd think you could use modern clothes from FUSE (I'm not that familiar with it, but I think they have clothes), and clothes designed for humanoid characters for sale (or free) in the asset store.

    As for creating the clothing from "whole cloth" as it were, I'm pretty sure SecretAnorak has that somewhere in the video tutorial series. You'd build the clothing mesh onto your male or female base model in Blender (or whatever), and make sure you transfer weights from the base mesh to the clothing, with any adjustments by hand you might need for non-formfitting parts. Then you need to make sure you have the export settings right, so it will import properly into Unity and you're good to go.

    Probably best to start with something super simple first, and get it so the slot and overlay will appear on your UMA character. Once you have the pattern of the workflow established, there should be no stopping you. :)
     
  49. DankP3

    DankP3

    Joined:
    Jul 17, 2017
    Posts:
    68
    Is there any reason why I should not make all of my UMAs skin (face, torso, arms and legs) a single material, and hence single slot, from a texture atlas?
    I assume multiple hide assets will add together?
    and multiple separate overlays, eg. tattoos, should be OK?
    Etc.
    Sorry, just wanted to check before going through the modelling process...
    Thanks
     
  50. umutozkan

    umutozkan

    Joined:
    Oct 30, 2015
    Posts:
    310
    A single material does not mean single slot in UMA world. Base UMA models have one texture on the torso, hands, legs and feet slots. The textures (in form of overlays) are added together into a single texture for all the slots that use the same UMA material. If you look at your generated texture atlas you'll see that base uma models have the head texture along with the body texture on the same final merged texture atlas. The final mesh is a combined mesh with one or more materials on it (depending on your use of materials with body and equipment).

    I think there is no problem having all the body parts, including the head, sharing the same UV space though. The only reason I can think of as to why the base model has a separate head texture could be to have high resolution on the head.