Search Unity

UMA - Unity Multipurpose Avatar on the Asset Store!

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

  1. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    Are you using shape keys on top of uma like bone transformation with good results?

    If so that sounds very interesting. I know I've shot that idea down with uma before, but there is a HUGE difference between having an idea that you want others to implement and having working code.
     
  2. virror

    virror

    Joined:
    Feb 3, 2012
    Posts:
    2,963
    That would be awesome, but if you want to go your own way, you can have a look at this file: UMAGeneratorBase.cs
    We have to regenerate the Avatar and the Animator as soon as something changes, but we are working on refactoring this code atm, so hopefully we dont need to recreate the Animator in the future since it has its own set of problems.
     
  3. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    Well I'm not the one doing it (yet), i'm relying answers lol I presented UMA (among other solutions to help review the best solution for him) to the person and shot down his initial preconceptions.

    Before reading those latter answer the person responsible had this to say relative to previous answers. It's kind of harsh :rolleyes: but it's because there is one degree of separation lol it's TOO honest! Also he have specific need anyway. I think the head is made of shapekeys (maybe with some animation bones).

    However I have to consider stopping relying answers back and forth if there is none to his problem. :)

    Anyway I think UMA is a great project and I have personally learnt a lot from it too. Personally I'm trying to create an even more generic solutions more akin to spore creatures using Bmesh, part of it was inspired by some UMA's solutions.
    http://www.math.zju.edu.cn/ligangliu/CAGD/Projects/Bmesh/
     
    Last edited: May 16, 2016
  4. virror

    virror

    Joined:
    Feb 3, 2012
    Posts:
    2,963
    Good luck : )
     
  5. LacunaCorp

    LacunaCorp

    Joined:
    Feb 15, 2015
    Posts:
    147
    Hi guys,

    I figured this would be the best place to come now that I'm ready to dive head first out of my second-floor window.

    I've spent the past 18 hours or so wrestling with something ridiculously simple, which is stopping me from making any progress with UMA. I have written a custom interface for UMA to basically allow the base UMA scripts to communicate with our own, and character customisation, saving and loading are all working perfectly. Now I have to recreate our old animation system (we're switching out our first-person-only right for a FPS/TPS hybrid character controller) using UMA.

    I'm having some REALLY weird issues. First off, all of the anims are humanoid, and they all work properly. I have set up UMA so when it generates the player, it sets the animation controllers in all the respective scripts, and the UMA character plays the first animation just fine. If I change the Mecanim state to any other clip, Mecanim shows that the clip has changed and another clip is running, but the UMA model will only play the first (base) clip. If I change the base clip to another animation, this also plays fine, so there's definitely nothing wrong with the animation themselves.

    I think this has something to do with UMAGeneratorBase.cs, where the animator appears to be constantly destroyed and reapplied. As far as I can tell, this has something to do with updating the avatar, and I've tried countless variations of this code and even swapped the whole thing out without any success.

    If anyone has any idea what could be causing this, I would really appreciate some help. I'm totally stumped now...
     
  6. ecurtz

    ecurtz

    Joined:
    May 13, 2009
    Posts:
    640
    The avatar shouldn't be getting updated unless the DNA is being marked dirty - my guess would be that you're marking the UMA dirty at some point you shouldn't. Is there some reason you can't run it with the debugger and check what's calling into UMAGeneratorBase.cs?
     
  7. LacunaCorp

    LacunaCorp

    Joined:
    Feb 15, 2015
    Posts:
    147
    Quick edit- I had been awake for so long that I really shouldn't have been working. I got up this morning and realised what was causing it straight away. Thanks for the help anyway :)
     
    Last edited: May 22, 2016
  8. andrew210

    andrew210

    Joined:
    Apr 23, 2014
    Posts:
    241
    Finally got into beta testing for my game. UMA has probably been the most useful asset I've come across, it's let us create a full RPG game with about 30 hours of game play and thousands of NPC's and kept the filesize down to <200mb.

    The only thing I've come across which would be obvious to most anyways, is not to create all the UMA's immediately on scene load for an RPG like mine, the UMA creation is handled well enough that even on 5 year old devices, loading them up when the player gets within a certain range has no noticeable lag and saves me a tonne of memory.

    One thing my testing has brought up is that some players on android are able to create an abomination:



    They do this simply by flicking through the various hair styles. Does anybody have any idea how the model could get this messed up? I can't recreate locally / on my android devices / on my apple devices...

    Incase anyone is interested, here's a rough trailer of the game, have to get around 10 seconds in to see any UMA created avatars but after that there's quite a few UMA characters displayed in the world:

     
    hopeful likes this.
  9. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    Good advice, my power tools has this functionality built in, but as you say it's easy to handle yourself and it's allows you to have "unlimited" number of characters in your game.

    Does this android device work to begin with? Does it reliably fail on the same hair 1,2,3 combo. Are the assets loaded through asset bundles? At work I've seen (non-uma) reports that looks similar on certain devices, can't remember which at the top of my head. What version of Unity did you use? I suspect this might be a unity bug because uma is actually quite conservative with how we create the meshes, using the plainest unity vanilla all the way. We have some experiamental code in the animatorTest_b branch that we're awaiting more tests to merge in.

    It looks super cool, thanks for sharing!
     
  10. andrew210

    andrew210

    Joined:
    Apr 23, 2014
    Posts:
    241
    We're getting different reports from different users but they seem to be able to make it fail consistently although their steps to reproduce are different and can't replicate it on any of our devices (Asus TF201 and Samsung Galaxy S3 are our Android test devices). I always grab the latest patched version of Unity, the current builds are made with 5.3.4p6. I'll keep an eye out for the experimental code of UMA! Thanks for your help!
     
  11. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,686
    BTW, I see there is a new version of Unity out: 5.3.5. Not sure when it came out, but recently, I suppose.

    It has some tweaks for asset bundles. Maybe that impacts the next update of UMA in some way ...?

    • Asset Bundles: Added offset argument to AssetBundle.CreateFromFile and AssetBundle.LoadFromFile methods.
    • Asset Bundles: Output the CRC value for the manifest asset bundle.
    • Asset Bundles: Fixed issue where WWW.LoadFromCacheOrDownload would not take into account space on device, and could hang. (762829)
    • Asset Bundles: Fixed the error messages when building variant asset bundles. (769858)
    • Asset Bundles: Fixed an issue where unloading an asset bundle with animated objects (legacy animation) during play mode crashes the editor. (775822)
    • Asset Bundles: Added back scene asset bundles compression statistics. (768965)
    • Asset Bundles: Fixed a crash while loading asset bundle asynchronously. (747800)
    • Asset Bundles: Fixed a potential crash when decompressing corrupted LZMA bundles. (782773)
    • Asset Bundles: Fixed Compress Assets On Import setting ignored when switching platform (762739)
    • Asset Bundles: Fixed CreateFromMemory not working with "." in filenames. (734216)
     
    andrew210 likes this.
  12. andrew210

    andrew210

    Joined:
    Apr 23, 2014
    Posts:
    241
    The abomination bug seems to be the most frequently reported actual bug at the moment and frustrating because I'm not able to recreate it. Would anybody happen to have any idea that if, after an UMA is created, if I check the renderers bounds, would the bounds account for the abominations crazy resulting mesh? If it does, I could just get the game to try again to create the mesh. If I could recreate it I could try it out and see myself but as I can't am hoping somebody with a bit more knowledge than me might have an idea.
     
  13. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    The new UMA will have support for Asset Bundles - David has done a lot of work on this, and has put together a pretty cool character editor demo that allows you to download new races, slots and overlays on the fly.

    I also believe that the new version will be much easier to use at a high level, if you don't want to get down into the guts of it.
     
    Moerk75 and hopeful like this.
  14. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,686
    That sounds awesome! Very much looking forward to it. :)
     
  15. 1576546943

    1576546943

    Joined:
    Sep 22, 2015
    Posts:
    2
    I have learn UMA system for 2 months, I want to know why "Male_Separated_Rig" have "lowerback" "spine" and "spine1" three 3 spines. But the Unity Mecanim System only support 2 spines humanoid animation. I hope some give me a favor. I have some animation fbx file which use the same rig. When i import these fbx files to Unity , it always show the warnings below:


    "Clip "xxxx" has import animation warnings that might lower retargeting quality: Note:Activate translation DOF on avatar to improve retargeting quality. 'LowerBack' is inbetween humanoid transforms and has rotation animation that will be discard."

    I have no idea to fix this warning . Please help me. Thank you.
     
  16. DirtyHippy

    DirtyHippy

    Joined:
    Jul 17, 2012
    Posts:
    224
    This sounds a bit scary to be honest. Are these changes breaking to existing behaviour?

    IMHO the largest problem with UMA right now is the fact that it reserves a ton of memory for creating atlases via the overlay manager (which will happen extremely infrequently).

    And this major bug: https://github.com/huika/UMA/issues/25 (which has been fixed it seems, fantastic, thanks!).
     
  17. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    For the most part, these are bug fixes and additions. There is one minor function signature change that resulted from a fix for a documented issue. if someone actually used this specific function, the change is simple. All assets (recipes, slots, overlays, etc) are usable in the new version.

    The changes to allow asset bundles are implemented by using new scripts that derive from the old ones, so as not to break anyones scenes.
     
    hopeful likes this.
  18. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    It is true that the uma demo scenes uses a ton of memory per character. But using the atlas resolution scale based on distance from camera and rebuilding the textures on demand will let you have as many characters as you want. I guess I could add a demo scene showcasing a simple script that does this. With this tiny script the skinning and animating cost will be your only concern when having 100+ chars.

    This functionality has been built into my power tools as part of a bigger lod solution, which replaces slots based on distance as well. This means you can have LOD slots that gets swapped in for lower triangle count. Combined with bone baking the powertools will drastically reduce the skinning and animating cost when having many characters.
     
  19. Mikael-H

    Mikael-H

    Joined:
    Apr 26, 2013
    Posts:
    309
    Hey fellow UMAers! Just thought to let you guys know there is now a final official version of my master's thesis up. As some of you already know it would never have been possible without UMA!

    Here's a link to the thesis report, Selfie to Avatar: http://lup.lub.lu.se/student-papers/record/8567678
    There is one more guys doing a thesis picking up where I left off, and we are working together to make a viable product f this. You can, if you have som patience, actually already make a UMA texture of your own face and download it from our Web GL test app, I will post here again when the app quality has increasedbut if you're really interested you can have a go right now. You can read more about that here: http://forum.unity3d.com/threads/wip-uma-master-thesis-player-avatar-creator.343331/#post-2527129
     
  20. DirtyHippy

    DirtyHippy

    Joined:
    Jul 17, 2012
    Posts:
    224
    This is not the problem I am describing. I agree, the problem you describe can be mitigated.

    The problem I describe is that every single overlay texture you will use for _generating_ the atlases is held in memory, forever. This does not scale.
     
  21. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,686
    With the current UMA, can you solve that problem by using additive scenes? Like, if you need to generate city people (or orcs), then additively load a city people (or orc) generator scene, make them, and then unload that scene.

    I've not tried it, so I could easily be overlooking something obvious that would prevent that from working.
     
    Last edited: May 26, 2016
  22. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    It doesn't need to be in memory forever... we only use it when generating, after that it can be safely unloaded.
     
  23. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    And the lod scene is in branch unity53, if anyone is brave enough to venture into bleeding edge.
     
    Teila likes this.
  24. DirtyHippy

    DirtyHippy

    Joined:
    Jul 17, 2012
    Posts:
    224
    Yes, I suppose you can write a system that loads the required overlays for your generation use case from the resources folder/asset bundles at run-time, generates the atlas, and then unloads them (assuming you can add overlays at run time to the overlay manager which I'm guessing would probably work). I guess I will have implement that at some point. Probably would want to keep common overlays (base body/head stuff) in memory all the time since they will be commonly used.
     
  25. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    The new asset bundle support can automatically download and load asset bundles, I guess it's a fairly small step to unload the assets afterwards, though it will certainly have a performance impact.
     
  26. CommunityUS

    CommunityUS

    Joined:
    Sep 2, 2011
    Posts:
    240
    How about now? :)
     
  27. LacunaCorp

    LacunaCorp

    Joined:
    Feb 15, 2015
    Posts:
    147
    Hi again guys,

    So, the other day I thought I'd managed to fix the issues I'd been having but after posting, they popped right back up. I figured I would just run through everything from the top and see where they were coming from, but I'm still unable to resolve them. I would really appreciate any advice at this stage as I'm now unable to progress with development, and I have to fix this before I can move our old animations over to the new system.

    To sum it up, we had a first person rig which we used for everything. Now we want to implement multiplayer we need a full player model, which is why I integrated UMA into our project. I wrote an interface for character customisation just to make it easier to communicate with our existing code (for things like UI and saving/loading UMAs from .txt). This is all working perfectly- you can create a character when starting a new game, and this will be saved and loaded with your XML save file. The problems are with animation, and from what I understand it's because of animators requiring regeneration after the UMA has been changed.

    Now, the thing is, the UMA doesn't change. So I thought it could be that the animator would just need regenerating after the UMA is created, but this does not fix the problem (in fact it just destroys the current animator and fails to create a new one). I am using a custom aniamtion controller for testing, with only 2 states. The first state, the idle animation, plays. The second state does not play, although Unity's animator window shows that the clip is playing. I applied root motion to get a better view of the problem, and it shows that the animations are actually playing but the UMA is not responding to them (i.e. when walking, the player sways from side to side because of the root motion, but his arms stay locked to his sides).

    One thing to note is that I had to modify the overall scale of the character in the DNA converter scripts to translate properly from character creation to the game world. I don't imagine that this would be an issue, but it's probably worth mentioning.

    I have deleted the entire UMA folder and set everything up from scratch twice now, and I am seeing the exact same issue each time. It's a shame because I love UMA so far, and I definitely think this is the way forward for our project, but I'm at a dead end until this is resolved. Again, if anyone has any idea what is going on here, then please share your thoughts! Thanks :)
     
  28. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    We have a test branch that is not destroying the animator, if you're running Unity 5.3+ then you should try that branch. https://github.com/huika/uma/tree/animatorTest_b

    Please note we have only tested windows and android platforms so far but it seems to be working. But once we have more testing in saying this is works on all os's in Unity 5.3+ then we'll merge it to the unity53 branch that is where all new development is going.
    This fix will not be back ported by us due to the frequent crashes we experienced on earlier versions, but it is likely that it will work on certain older versions / os.
     
    hopeful likes this.
  29. LacunaCorp

    LacunaCorp

    Joined:
    Feb 15, 2015
    Posts:
    147
    Thanks for the fast response, I'll test it out ASAP and post with news on how it goes.
     
  30. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    If you have hardware to test ios and mac please do, once we know this update is safe we can move onto the next step of making an uma humanoid prefab with the animator at design time. And I could update my power tools prefabs to actually have the full fledged uma character at design time while preserving the ability to modify it later.
     
    hopeful likes this.
  31. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    I tested this on OSX, and it worked fine.
     
    hopeful likes this.
  32. jmayi

    jmayi

    Joined:
    Mar 21, 2013
    Posts:
    1
    Hey,

    I'm trying to change UMA to use a Mixamo rig as opposed to the default UMA rig. Is there an easy way to go about this? Currently what I'm doing is changing the UMA source to recognize mixamo rig as the actual rig instead of generating its own which seems to work up to the point in which I need to scale/rotate the bones. Looking at the HumanMaleDNAConverterBehaviour which is where all the bones are scaled for the male race based on the dynamic avatar's associated value it's hard to find a pattern to the hard coded numbers used in the calculations per bone. Was there a specific equation used for these values or were those values obtained through trial and error? For example, here is a line pulled straight from that class:

    Code (CSharp):
    1. skeleton.SetScale(leftEyeHash,
    2.                           new Vector3(
    3.             Mathf.Clamp(1 + (umaDna.eyeSize - 0.5f) * 0.3f , 0.7f, 1.4f),
    4.             Mathf.Clamp(1 + (umaDna.eyeSize - 0.5f) * 0.3f , 0.7f, 1.4f),
    5.             Mathf.Clamp(1 + (umaDna.eyeSize - 0.5f) * 0.3f , 0.7f, 1.4f)));
    In here, was there a specific equation or method from where 0.5, 1, 0.3, 0.7 and 1.4 were pulled from or was that obtained through trial and error?
     
  33. ecurtz

    ecurtz

    Joined:
    May 13, 2009
    Posts:
    640
    Unless you really know what you're doing and have a very specific reason behind it this is almost certainly a bad idea. One of the big reasons for the Mecanim animation system in Unity is so that you can share human animations between different rigs, so you should be able to use anything from the Mixamo rig in UMA.

    I do believe that Fernando just adjusted those values by trial and error until they seemed reasonable if you insist on trying to switch rigs, but you're going to give yourself a lot of grief.
     
  34. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    Why? We use Mixamo animations with UMA without any problem. There is a secret though. Take the unified UMA model from the content pack and upload him to the Adobe Mixamo site. Then put the animations on him and save them as "with skin". Be sure to change the animations to humanoid and make sure the model is also humanoid.

    This has worked great for us. Some Mixamo animations just have problems, but we have gone through hundreds of them and found most work without a problem.

    Edit: DO NOT change the rig on the UMA unified model on the Mixamo site. Leave as is, and add the animations to him.
     
    CommunityUS, runningbird and Tinjaw like this.
  35. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    UMA 2.1 is shaping up nicely.
    The unity53 branch is seeing a lot of action!

    I thought I'd list the key features here.
    • Full UMA 2.0 backwards compatibility!
      Just make sure your UMA 2.0 project compiles without errors before upgrading. Take care to handle obsolete warnings.
    • Default assets are now PBR!
      Legacy will be an add on, similar to how pbr works today)
    • Unity 5.3+ required!
      Lot's of new api's and fixes made 5.3 a good baseline.
    • Looks like we'll get rid of the Animator Destruction!
      This simplifies integrating with networking and third party character controllers like UFPS.
    • RenderTextures rebuilt automatically
      Fixed: DirectX has a habit of kicking RenderTextures when you resize the window.
    • Networking Demo
      Virror created a networking Demo
    • LOD Demo
      Jaimi and I created an LOD Demo that features 150 characters.
    • No 3rd party DLLs!
      We switched to Unity Json and such was able to remove the last of our 3rd party DLLs
    • Dynamic Character System
      Jaimi's Character System has been extended by David and Jack and now features dynamic loading from resources and asset bundles. It's a great simplified system for working with UMA.
    • Asset Bundle Support
      Built in support for downloading content Asset bundles with Slots and Overlays(edited)
    • And a ton of bug fixes.
      In fact the only open bug report is that we lack documentation!
    There is still some way to go, both on the feature side and the testing side, so if you're interested now is the perfect time to get involved.

    To get into our slack team where we discuss the future of uma and work on the 2.1 release, please pm any of the uma experts your email address and they'll add you.
     
    runningbird, Jaimi, hopeful and 3 others like this.
  36. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,686
    @UnLogick - I remember many months ago a user was having an issue where - if I understand it correctly - the solution was to recalculate normals after changing the shape of a character. Is that something that was added or that can be added to the UMA update?
     
  37. Apolyon6k

    Apolyon6k

    Joined:
    May 5, 2013
    Posts:
    32
    Hi, have been working on a few outfit pieces for male and female characters for my game (ignore the guy in the back, he is part of the UMA standard): screen_1920x1080_2016-06-04_18-35-03.jpg screen_1920x1080_2016-06-04_18-29-37.jpg screen_1920x1080_2016-06-04_18-37-14.jpg screen_1920x1080_2016-06-04_18-38-01.jpg screen_1920x1080_2016-06-04_18-36-51.jpg

    Really nice system but as I am no artist or have any experience with weights and rigging, the skirts are a pain to work with (second to last picture, bottom of the skirt! And the green one with insides poking through). Apart from that learned a lot and even taught myself Blender to do those.

    Any tips for skirts or long clothing that spans more then one body part? I mostly try to use the standard weights from the base meshes.
     
  38. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    Please submit bug reports to the bug tracker. So they're not forgotten.

    https://github.com/huika/uma/issues

    I actually remembered this one yesterday and worked a bit on it, still not entirely sure how to fix it without creating seams at the neck/shoulders/etc.
     
    hopeful likes this.
  39. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    The poke through can be handle several ways - mostly, you have to adjust the bone weights, and try to match the underlaying geometry as much as you can. You can cheat a bit by scaling the dress out in the trouble spots as well. Another thing you can do is supply modified body parts to go with your clothing - for example, in the skirt shot, you could delete everything above mid thigh (be careful to not change bone weights or UV).

    Hope to see your assets completed and on the store! :)
     
  40. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    UMA 2.1 continues to shape up.

    We finished testing Victor's changes that gets rid of the Animator Destruction! This greatly simplifies integrating with networking and third party character controllers like UFPS.

    It's been tested on windows, mac, ios and android. The ios and android test was performed with the lod scene that has 150 uma characters and it worked great!
     
    hopeful and runningbird like this.
  41. Apolyon6k

    Apolyon6k

    Joined:
    May 5, 2013
    Posts:
    32
    Have been thinking about my issue with skirts and dresses and it could be fixed with the addition of skirt bones. Is there a tutorial on adding additional bones to UMA? Might need that for other clothing as well (capes or such) and for additional body parts (wings, tails or the like)
     
  42. MikeyUchiha

    MikeyUchiha

    Joined:
    Jan 8, 2011
    Posts:
    109
    @UnLogick @Jaimi Can one of you add me to the UMA slack team? I would love to assist with the testing since I'm going to start implementing my character creation system. :)
     
  43. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Sure - PM me your email address
     
  44. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    @Apolyon6k adding bones is as easy as having your slot meshes skinned to them. The Slot Creation window looks at what bones your mesh uses and adds those.

    Having your bones survive the power tools bone baking is as simple as adding their names to the AnimatedBoneNames array on the SlotDataAsset. Simply dragging a transform into the drag box for "overlays" (the text is wrong, fixed in UMA 2.1) will do the trick. So if you make an armor with customizable spike lengths you shouldn't add them, but if you add hair or dress bones for physics or other "animation" then their names should be in the AnimatedBoneNames.
     
    hopeful likes this.
  45. JustinAndrew

    JustinAndrew

    Joined:
    Jul 13, 2015
    Posts:
    1
    Hi!
    I've got a problem with UMA. All the character seem to have white flickering, only around the changeable Parts (Nose, Mouth, Eyes, Ears, Shoes). I think I saw that same flickering in other UMA video as well. Anyone knows how to fix it ? The Flickering is getting worse when looking at the Character from far away. Turning any Light sources off is fixing the Problem, but I obviously need Light in my system. Thanks !

    Here is my system's video (played with Oculus rift)
     
  46. UnLogick

    UnLogick

    Joined:
    Jun 11, 2011
    Posts:
    1,745
    That looks to be a problem with the texture for the hair asset... it needs more padding.
     
  47. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,208
    Done - you should receive an invite at the email provided. Welcome aboard!
     
  48. smd863

    smd863

    Joined:
    Jan 26, 2014
    Posts:
    292
    Does the white flickering go away when you disable anti-aliasing? It could be the same issue from this thread.
     
  49. philvanzu

    philvanzu

    Joined:
    Oct 14, 2012
    Posts:
    6
    Hello,

    I'm starting to work on a new project , mainly a turn based experimental combat system for now, and have decided to go with UMA for all characters generation.

    So I followed SecretAnorak's tutorials and then I created a new race with an adobe fuse model that I skinned to the uma rig. And now I'm fiddling with custom DNA, for which I have a few questions.

    1 what is the proper way to create a new UMADna / HumanoidDNAConverterBehaviour combo ?

    First I just tried clicking on the "Create DNA Helper Code" in the UMA menu, to absolutely no effect.
    Then by reading the script code I saw that I needed to derive from the UMADna abstract class first, which means implementing a bunch of inherited abstract members. I had to let visual studio implement these automatically even though I had seen the implementation should be located in the script generated part of the class because all compiler errors have to be fixed before running a script. So I had something like this
    Code (CSharp):
    1. using UnityEngine;
    2. using System.Collections;
    3. using System;
    4.  
    5. namespace UMA
    6. {
    7.  
    8.     [System.Serializable]
    9.     public partial class TestDna : UMADna
    10.     {
    11.  
    12.  
    13.         public float constitution = 0.5f;
    14.         public float fitness = 0.0f;
    15.         public float musculature = 0.0f;
    16.  
    17.         public override int Count
    18.         {
    19.             get
    20.             {
    21.                 throw new NotImplementedException();
    22.             }
    23.         }
    24.  
    25.         public override string[] Names
    26.         {
    27.             get
    28.             {
    29.                 throw new NotImplementedException();
    30.             }
    31.         }
    32.  
    33.         public override float[] Values
    34.         {
    35.             get
    36.             {
    37.                 throw new NotImplementedException();
    38.             }
    39.  
    40.             set
    41.             {
    42.                 throw new NotImplementedException();
    43.             }
    44.         }
    45.  
    46.         public override float GetValue(int idx)
    47.         {
    48.             throw new NotImplementedException();
    49.         }
    50.  
    51.         public override void SetValue(int idx, float value)
    52.         {
    53.             throw new NotImplementedException();
    54.         }
    55.     }
    56. }
    57.  
    Then I ran the helper script which generated the other half of the class as expected. I then had to erase the auto implementation of the inherited abstract members because it had been done by the script. This all seems a bit awkward and I imagine there is a better way, hence my question.

    2.
    After following Secret Anorak's tutorials I had this in my character creation script :
    Code (CSharp):
    1.     public void OnUmaCreated(UMAData data)
    2.     {
    3.         UMAExpressionSet expressionSet = _umaData.umaRecipe.raceData.expressionSet;
    4.         UMAExpressionPlayer expressionPlayer = gameObject.AddComponent<UMAExpressionPlayer>();
    5.         expressionPlayer.expressionSet = expressionSet;
    6.         expressionPlayer.umaData = _umaData;
    7.         expressionPlayer.Initialize();
    8.     }
    The expression player works allright but when it is activated, the custom dna is only partially working. I can do whatever I want with adjust bones, for the most part, but there are things the Dna cannot do : scaling the head or the eyes would not work for example, though scaling the root transform still was working fine. If I remove the expression player component. The Dna performs as expected. Any idea what I'm doing wrong?

    I've been doing all this on Unity 5.4 beta which was still scheduled to be released later this month last time I checked.

    3. I'd love to test UMA 2.1 too so I'll pm my mail address, and maybe i could write some doc to help out as well once I figure things out.
     
  50. kikkina

    kikkina

    Joined:
    Dec 17, 2015
    Posts:
    3
    hello to everybody, I'm using plugin UMA to create a dynamic avatar. I want ask if I can move the avatar programatically with C# instead with Animation.
    Thanks for the help anyway