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
    This is likely because the slots/overlays/recipes are not included in the build. Before building, open up the global library, and add everything to the build (there's a button to add everything).

    Jaimi

     
    drakedane likes this.
  2. drakedane

    drakedane

    Joined:
    May 23, 2017
    Posts:
    62
    Thanks for reply. I will check. But thought that had been done a while ago; because I thought I had to do that to get slots, wardrobe recipes, etc. I had created added to the global library. Any other reasons UMA characters might not show up?? Thanks again! Really appreciate it!
     
  3. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    I'm not aware of any other reason, if it works at edit time.
    UMA can find items in the library in the editor without the item being in the build - to be in the build, the library has to have a reference to the object (and for it to be loaded), this makes unity include the items when you build the application (since the library is in a resources folder).
     
  4. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    (EDIT: I just saw that there were more posts ... guess I had this page sitting in my browser too long!)

    If no one else responds saying they have this problem as well, then I'm going to assume something is going wrong just for you. So try a few things to troubleshoot on your end. I'll throw out a couple of suggestions to get you started.

    To start with you can do a build of a standard UMA demo scene. If you get UMAs appearing when you run that build, then that means you've got something weird going on in your implementation.

    The lack of forward / backward movement also points to something being off in your current implementation. That would suggest you've got something wrong in input handling, animation, or something outside of the UMA system. Maybe you're not seeing your UMA because the camera is in the wrong place? If that could be it, try setting up additional UMAs that should be in your default camera view.

    And basically, you'd work on it from there, going from a very primitive setup slowly to something more advanced, ruling out this or that feature that you're trying to implement.
     
    drakedane likes this.
  5. drakedane

    drakedane

    Joined:
    May 23, 2017
    Posts:
    62
    Thanks for reply! As I thought, I had already added build references. But I used option to clear them; and then I re-added them. But still no visible UMA's in the build, although I suspect they are there, since the player [free look] camera is there and I have partial third person player control. Thanks again, I will continue to troubleshoot on my end.
     
  6. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    What is your target platform? Do you get any errors in the player log?

    (The runtime log location varies by platform: https://docs.unity3d.com/Manual/LogFiles.html )
     
  7. drakedane

    drakedane

    Joined:
    May 23, 2017
    Posts:
    62
    Thanks for taking time to respond, hopeful! Appreciate it!

    Yes, this is the idea I am starting to get! I have actually had several issues with UMA, where a fresh install seemed to be the only way to continue. Could be issue with the project itself. I am continuing to troubleshoot on my end. Glad to know this isn't something I should expect, with UMA. I am hoping that means I will eventually nail down the issue!

    Agreed. That was the next step in the process of elimination I have already started. I will let you know if I am able to get other scenes or projects to build successfully. That will certainly let me know, if the issue is with any of my scenes or with the project itself.

    But consider that this only happens when I run builds of my game. It doesn't happen, when I run the game from the Unity editor. And this has never happened, when I used my prior character system (MCS), or when I have used any other characters. I should also explain that I have never implemented "walking backwards", so I apologize for throwing in that additional confusion!

    I suspect that the camera does a slow spin, instead of moving forward, when I press forward key, for the same reason I am not actually seeing my UMA's. It feels like I am moving in place; like I am unable to "Use Root Motion". Anyway, I am hoping the movement issue will vanish, when I fix the issue of not seeing my UMA's.

    Thanks so much for looking at this issue from all angles (no pun intended)! But this is a third person character, so the Main Camera is a child of the player. So, even if the camera couldn't see other UMA's, it would see the player. Also I should note that this is a free look camera that is actually working. So I can look around. And I can see that there are no other UMA's in the scene.

    But the camera and third person controls are parts of the UMA player. So how can the camera and third person controls be there, if the UMA isn't?

    Maybe the UMA's are, in fact, in the build, but are not being properly rendered?

    If the camera and player controls are there, I also wonder how much more of the character might be there?

    I should note that the player character starts in a teleporter that has a trigger collider. That collider IS being triggered, when the game starts, which seems to indicate that there IS, in fact, something in the teleporter.

    Yes. I think this is the only way to go! Besides the process of elimination test noted earlier [that you also suggested], I plan to check out a development build, to see if the console has anything to say about this. After that, just more eliminating possibilities, until I have a solution.

    Thanks again for all of the feedback and suggestions! I will let you know, if I make any progress!
     
  8. drakedane

    drakedane

    Joined:
    May 23, 2017
    Posts:
    62
    Target platform is Mac.

    As I just told hopeful, I will soon be doing a development build. And, besides the console, I think that also provides some kind of log. If so, do you think that will be enough?

    I will check out the link you provided.

    Thanks again, for your assistance with this, and for the quick turnaround! It really helps!
     
  9. drakedane

    drakedane

    Joined:
    May 23, 2017
    Posts:
    62
    I decided to do a development build, before I continued with the process of elimination. And I think I have figured out the problem. Now I just have to figure out how to solve it!

    I saw this in the development build console, as soon as the game loaded:

    IsolatedStorageException: Could not find a part of the path "/Users/username/Library/Caches/com.Company.ProductName/UMA/Player.txt"

    "Player.txt" is the save file for this particular UMA. I see this same message for every UMA character.

    The problem is that this is NOT the proper path to the save files. "com.Company.ProductName" sounds like something I have seen in the "Player Settings" of the "Build Settings". So does this mean I have to address the issue there? Or is the above an actual location to which I should move or copy my save files? If these files need to be elsewhere, seems like they would be auto copied there, during the build. Is there any way to edit the path the player will use to try to find these files? For now, I will simply try to create this path (if it doesn't actually exist) and I will copy the save files there. In theory, that should work! But, please, let me know, if there is some simpler or usual solution for this.

    Thanks in advance!
     
  10. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    How are you loading the uma? Is the character txt file in the library? They don't get added by default.

     
  11. drakedane

    drakedane

    Joined:
    May 23, 2017
    Posts:
    62
    Thank you, for your response!

    Given issue, I assume not! But, if "they don't get added by default", how do they get added??

    Obviously it is not going to work for other people, if the save files are only in a particular folder on my computer. I also don't want to have to manually copy the files to a special location, every time I want to do a build.

    How do I ensure these save files are included in the build, so the game can find them?

    To be clear: Copying the save files to the path indicated in the player log DID WORK. I now see UMA's, when I run the build. And, as expected, the third party player controls are, once again, working. So the problem was the fact that the game was looking for the UMA save files, but was unable to find them where it was looking for them.

    I now have a workaround; but this is not a final solution!

    Thanks again, sir!
     
    hopeful likes this.
  12. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    You either have to check the box (add text assets) next to the rebuild from project button, or you have to manually drop the text files in. Or you can put them in resource folders manually.
     
    hopeful likes this.
  13. giotta

    giotta

    Joined:
    May 31, 2015
    Posts:
    48
    Hi all,and thx in advance.
    Is anyone able to explain if you can use the uma model with the asset store animations?
    what do I need to run them properly?
     
  14. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    Humanoid animations from the store should work with humanoid UMAs. That's the way Unity's Mecanim works. Read up a little on Mecanim to get a better understanding.
     
  15. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    I never did fix up the shader problems with my hair. When I regenerate the DCS every 6th and then 8th regen the hair breaks. I assume it's shader related. I could provide Jaimi or someone with a Steam key to download and look at the game which starts out with character creation where you can do things like select skin color that updates the DCS every frame, so the hair flickers on and off. Or I can try to recreate it in a small scene... My Kickstarter is next week though so I'm pretty busy XD Would love to fix this before then though... sounds like no one else has it??? I'm using Will B's stuff... I know others are too though... maybe I'm importing something in the wrong order?
     
  16. giotta

    giotta

    Joined:
    May 31, 2015
    Posts:
    48
    I thank you immensely for the answer, I have already done the procedure you have indicated, I have tried to look at tutorials or to read in the forum what the problems may be.

    Anyway, the animations imported into the UMA model are terrible.

    .
     
    Last edited: Sep 16, 2017
  17. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    Are you saying that the animations that come with UMA look bad? Well, they are old free ones used for demo purposes in Unity. Most people using UMA would either buy or make new animations for their game.

    Try some of the free animations available in the asset store. All of the humanoid ones should work with the standard UMA models.
     
  18. m0rr0ws0n

    m0rr0ws0n

    Joined:
    Sep 18, 2014
    Posts:
    65
    Hey I have a problem with models colors. The color of my character models and clothing is not saving when I load them from my database. At first it was saving then I messed my project up and had to go to a backup. Now the colors are not saving. The models from before the backup have their proper colors but the newer models after the backup do not. I don't know what I did to mess it up. o_O

    I'm using LoadFromRecipeString() and GetCurrentRecipe() to handle the recipe string and it looks like the color is saving in the string, it's just that it doesn't show on the model when I load the avatar. But like I said, the old ones from before the backup show the colors they were created with.
     
  19. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    UMA 2.6.2 released!

    Changelog:
    • Cloth hotfix
    • UMA Renderer gets Layer from UMA game object.
    • Fixed another bug for power tools
     
    hopeful likes this.
  20. m0rr0ws0n

    m0rr0ws0n

    Joined:
    Sep 18, 2014
    Posts:
    65
    Oh yeah I forgot I changed GetCurrentRecipe() from this:

    UMATextRecipe recipe = ScriptableObject.CreateInstance<UMATextRecipe>();
    recipe.Save(Avatar.umaData.umaRecipe, Avatar.context);
    string saveString = recipe.recipeString;
    Destroy(recipe);

    I changed it back and now it gives me colors on my models that I set them to use. Why is this?
     
  21. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    What is the second feature?

    Also, is the "mesh hide" feature included in this version?
     
  22. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    UMA Renderer gets Layer from UMA game object.
    If you give your uma avatar game object a layer then the renderers that uma creates at runtime will also use this layer, so you can control which camera's will render the avatar.

    It wasn't mentioned in the pull requests, beyond that I don't know.
     
    hopeful likes this.
  23. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    No, that'll be in the next major release. This release was just bug fixes.
     
    hopeful likes this.
  24. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    If you can make a small project to illustrate it, that would help immensely in tracking down the issue. While I would be happy to look at your app on steam, it might not be really helpful finding the problem.
     
  25. TidyDev

    TidyDev

    Joined:
    Dec 16, 2012
    Posts:
    45
    Hi, can someone please point me to a tutorial or explain how DNA works in UMA2? I am currently implementing a Character Creation system into my game using UMA2 and want to use unityUI sliders to change the body shape.

    I have it working to a certain degree, but when I change the race to say "Female" the sliders no longer effect UMA.

    Much appreciated.
     
  26. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    If you are using "DynamicCharacterAvatar", you need to pull the DNA again after switching races.
     
  27. TidyDev

    TidyDev

    Joined:
    Dec 16, 2012
    Posts:
    45
    @Jaimi Thanks for the quick reply, this is what I am doing on "Gender Change" but I think I may of missed something, what is the best method to get the DNA from a DynamicCharacterAvatar?

    Currently I call avatar.GetDNA () when the gender is changes but the only way it seems to work is if I change the gender, wait a few secounds, then call GetDNA.
     
  28. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Yeah - the UMA's are actually constructed by the generator, and it may be a frame or two later. So you have to hook into the CharacterCreated event on the avatar (under "Character Events") to be able to process the avatar after it's constructed.

     
  29. TidyDev

    TidyDev

    Joined:
    Dec 16, 2012
    Posts:
    45
    I hooked it to the Character Update DNA event and it works like a charm now, appreciate the support @Jaimi
     
    hopeful and Jaimi like this.
  30. malkere

    malkere

    Joined:
    Dec 6, 2013
    Posts:
    1,212
    I don't have the free "demo" version of my game approved on Steam yet which is basically just the character creator which is basically 100% UMA =D but hopefully by the end of the week. In the meantime my Kickstarter just went live, and you can see some different character built in real time using the UMA DCS. Would love if anyone is interested in checking it out!
    https://www.kickstarter.com/project...e-crafting-distance-based-fantasy-survival-rp
    Divider-characters.jpg
     
    Jaimi and kenamis like this.
  31. Wolfschadowe

    Wolfschadowe

    Joined:
    Sep 19, 2017
    Posts:
    3
    I'm both new to this and baffled. New project, new scene, Import UMA and I get the following compiler error:

    Assets/UMA/Core/Extensions/DynamicCharacterSystem/UMAAssetBundleManager/AssetBundleManager.cs(44,25): error CS0066: `UMA.AssetBundles.LoadedAssetBundle.unload': event must be of a delegate type.

    Any help in resolving?
     
  32. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    What version of Unity are you using? And what version of UMA?
     
  33. giotta

    giotta

    Joined:
    May 31, 2015
    Posts:
    48
    I've tried animations with a free store model (https://assetstore.unity.com/packages/3d/characters/humanoids/speedball-player-12980) and they seem to work fine.
    At this point I wonder if the UMA model has any problem,is there a way to manipulate the avatar of the UMA model?
    From what I've seen, it is created when I'm playing on unity
     
  34. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    You need to give us a better idea of what you are talking about. Animations should look the same on both the speedball model and the UMA models.
     
  35. giotta

    giotta

    Joined:
    May 31, 2015
    Posts:
    48
    The only thing I noticed is that the bark hierarchy is the same in the two models (the original one, which has the animations, and that downloaded from the store store).
    The UMA model, on the other hand, has a totally different hierarchy.
    Is that the problem? anima.png
     
  36. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    The default UMA is a humanoid rig and I assume your free model is too so they are not totally different. Maybe what you meant is differently named bones? If so, that is fine, that is part of mecanim's job, mapping to the required bones.

    From your screenshot it appears to be working fine. Is the issue you are having the position of the arms and hands? If so, that is to be expected. This is a mecanim limitation. Any models with different limb proportions and/or muscle settings are going to look slightly different in it's animations. This is where IK comes in. You can try turning on the "foot ik" option on your animation states.

    https://docs.unity3d.com/Manual/AnimationOverview.html
     
  37. Wolfschadowe

    Wolfschadowe

    Joined:
    Sep 19, 2017
    Posts:
    3
    Hi Jaimi, I'm using unity 2017.1.0f3 and UMA 2.6.2. I temporarily worked around the issue by commenting out the unload code and it seems to work fine for my purposes of experimentation and learning the basics, although I'm not really comfortable with that as a full solution, of course. I should note, I had the problem also with UMA 2.6.1. when I first tried to play with UMA last week, and set it aside at that time.
     
  38. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    I have the same setup and have no problem.

    Is it possible you had a previous version of UMA installed? Or maybe imported some assets from the asset store that accidentally included some source files (this is a common issue)?

    Maybe also a bad ifdef in there, not commenting something out - what platform are you compiling for?
     
  39. giotta

    giotta

    Joined:
    May 31, 2015
    Posts:
    48
    First of all thank you for your interest in my problem.
    Animation on the UMA model does not work well, maybe from a single frame you can not see, but the swinging sword during the rotation is completely bumped, and the character floats in the air, also has fingers of broken hands.
    In practice it is totally unnatural, while in the black model it works almost perfectly.

    Marking "foot ik" was the first thing I did.
     
  40. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    What animation are you using?
     
  41. giotta

    giotta

    Joined:
    May 31, 2015
    Posts:
    48
  42. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    I was wanting to see if I could duplicate the issue - I have many of the animation packages on the store, but alas not that one. If you can IM me one of the FBX animation models that shows the issue, I can import it and see if I can figure out what is wrong. I see in the comments people complaining about problems, that I assume he fixed. I think the problem is most likely with the animation.

     
  43. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    In addition to what Jaimi said, if you can find a free animation package - something that can be shared - that produces the error, that would be helpful.

    UMA has been around for years, and it does work with Mecanim. So we want to try to find out if there is something going wrong in your implementation, or with the specific animations you're using, or .... some other thing?
     
  44. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Looking at the animations, I see two reasons that they don't look the same:

    1) The UMA model is not proportioned like this guys model and the t-pose is slightly different. So things like leg stance don't match well, and the proportioning makes some things more exaggerated. I think this can mostly be addressed by adjusting the avatar on the source animation to match the UMA one better.

    2) Worse is the animation on the hands. The problem here is that the animation is relying on the hand twisting the forearm, and he really moves those hands around quite a bit. So you can address this two ways - this guy has addressed it by weighting the wrist bones more to the forearm. This has a disadvantage of being more cartoony, and introducing unwanted forearm movement in other circumstances. Another way to address this is how UMA did it - by introducing "twist" bones into the forearm. You can enable these using the forearmtwist recipe, and it does make it look better, but not perfect, as I think his rotations are off a bit.
     
    Last edited: Sep 21, 2017
  45. giotta

    giotta

    Joined:
    May 31, 2015
    Posts:
    48
    Thank you really for the time you devote to me.
    I'll try to spend some time watching tutorials and following your tips to see if I can fix these animations with the UMA model.

    I have a question, seeing this video (
    ) I seem to understand that I can insert any model on UMA. Can not simply put the original warrior (where animations turn right) inside UMA?
    If so, can I simply mount the armor with a click or do I have to go for a blender and create every single slot?
    Thank you
     
  46. Wolfschadowe

    Wolfschadowe

    Joined:
    Sep 19, 2017
    Posts:
    3
    I figured out the problem stemmed from the creation of a public abstract class Action : ScriptableObject during the Pluggable AI tanks. When I renamed the abstract class to AIAction the problem resolved itself, so must be an overlapping Action class. Not sure if anything can be done to avoid that for anyone else adapting the Unity PluggableAI tutorial scripts for use with UMA or not, but this might be a future Gotcha.

    All resolved at my end though, and I'm having a lot of fun playing with UMA! Thanks for your help and input Jaimi!
     
  47. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    You can make any model a UMA model. But unfortunately the slots (like the armor) have to be specifically designed for the skeleton that you use, so making the included model a UMA won't allow him to the use all the existing content. I think it is much simpler to just fix the animation so the hand doesn't rotate so much.

     
  48. Auxonaut

    Auxonaut

    Joined:
    Mar 3, 2017
    Posts:
    4
    This might be a long shot, but is there a way to reduce the poly count of the typical UMA mesh to <5000 tris? From looking at the crowd example scene it looks like the meshes are around 10k tris

    I noticed UMA Power Tools has something involving LODs but it seems to only be referring to textures not meshes.
     
  49. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    You'd need to run everything through some LOD tools and then recreate their slots. Usually, it's better to optimize texture sizes before optimizing poly counts, when things are already low poly - if you're seeing performance issues, might look at adjusting the "initial scale factor" and "Atlas resolution" on the generator first.
     
    hopeful likes this.
  50. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,683
    Possibly look into SimpleLOD? One of the first things that developer did was set it up so that it could auto-decimate UMAs at runtime to make mesh LODs.