Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

UMA - Unity Multipurpose Avatar on the Asset Store!

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

  1. lorddanger

    lorddanger

    Joined:
    Aug 8, 2015
    Posts:
    103
    Is there support for URP with UMA
     
  2. arteria

    arteria

    Joined:
    May 31, 2007
    Posts:
    2,189
    Thanks to Jaimi today for help with the UMA Cloth System. Just introduced this into our packs, the first released to feature cloth physics on both the Tabbard and Cloak, is our Medival Monk Costume Set for UMA



    See Video below.



    Can be purchased for just $10 today, via the below product page
    https://arteria3d.myshopify.com/products/medieval-monk-unity-uma
     
    camta005, Jaimi and hopeful like this.
  3. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    Yes, but there are some manual steps you will need to do. Once you have your converted materials, there is a menu option to convert UMA to URP. That will leave a few materials/umamaterials to be manually converted if they have special shaders (like hair).
     
  4. SonicShade

    SonicShade

    Joined:
    Dec 29, 2015
    Posts:
    8
    Hey @Jaimi
    today I followed the tutorials on youtube

    and tried to import a modeled tunic from blender into untiy like shown in the video.
    Unfortunatelly the tunic is not applied to the character correctly.
    I used the blender 2.8 files to get started.

    Did I miss anything?
     

    Attached Files:

  5. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    This sort of thing is usually an issue with the export parameters. Please try exporting from Blender 2.8x with the 2.8 parms as shown in the documentation file "UMAContentCreation.pdf" in the UMA folder.

    Note: You must use FBX to export from Blender 2.8
     
  6. camta005

    camta005

    Joined:
    Dec 16, 2016
    Posts:
    320
    I have created an extended version of the 'Hair Fade Cutout 2' shader included with UMA. The new version allows the hair to receive shadows and exposes some extra settings to play around with. It works with both built-in forward or deferred rendering including soft blending working in deferred with the queue set lower than transparent. It probably works better with certain hair types and it might be worth having a look if you are playing around with hair shaders for your project.

    UMA/Hair Fade Cutout 3
    Code (CSharp):
    1. // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'
    2.  
    3. //Hair Fade Cutout 3 extends the shader to receive shadows and exposes more settings.
    4.  
    5. // Simple 2 Pass Hair Shader
    6.  
    7. // This shader blends a solid cutout and fade shader to try and produce reasonable looking hair.
    8.  
    9. // Made with components from the: Amplify Shader Editor
    10. // Available at the Unity Asset Store - http://u3d.as/y3X
    11.  
    12. Shader "UMA/Hair Fade Cutout 3"
    13. {
    14.     Properties
    15.     {
    16.         [HideInInspector] __dirty( "", Int ) = 1
    17.         _Color ("Main Color", Color) = (1,1,1,1)
    18.         _Color2 ("Fade Color", Color) = (1,1,1,1)
    19.         _Brightness("Main Brightness", Range(0,50)) = 1.0
    20.         _Brightness2("Fade Brightness", Range(0,50)) = 1.0
    21.         _MainTex("Diffuse/Alpha Map", 2D) = "white" {}
    22.         _MaskClipValue( "Cutout Clip", Range( 0 , 1) ) = 0.5
    23.         _Cutoff( "Shadow Clip", Range( 0 , 1) ) = 0.5
    24.         _FadeFactor("Fade Factor", Range(0,5)) = 2.0
    25.         [Toggle] _FlipNormals ("Flip Backface Normals", Float) = 0.0
    26.         [Enum(UnityEngine.Rendering.CullMode)] _Cull ("Main Cull Backface", Float) = 0
    27.         [Enum(UnityEngine.Rendering.CullMode)] _Cull2 ("Fade Cull Backface", Float) = 0
    28.         _BumpMap("Normal Map", 2D) = "bump" {}
    29.         _BumpStrength("Bump Strength", Range( 0 , 1)) = 0.4
    30.         _MetallicStrength("Metallic Strength", Range (0,2) ) = 0.0
    31.         _MetallicAdd("Metallic Add", Range (0,1) ) = 0.0
    32.         _SmoothnessStrength("Smoothness Strength", Range (0,2)) = 0.5
    33.         _SmoothnessAdd("Smoothness Add",Range(0,1)) = 0.0
    34.         _MetallicGlossMap("Metallic(R) Smoothness(A)", 2D) = "white" {}  
    35.         [HideInInspector] _texcoord( "", 2D ) = "white" {}
    36.     }
    37.  
    38.     SubShader
    39.     {
    40.         Tags{ "RenderType" = "TransparentCutout"  "Queue" = "AlphaTest+0" }
    41.         Cull [_Cull]      
    42.    
    43.         CGINCLUDE
    44. //        #include "UnityStandardUtils.cginc"
    45.         #include "UnityPBSLighting.cginc"
    46. //        #include "Lighting.cginc"
    47.         #pragma target 3.0
    48.    
    49.         struct Input
    50.         {
    51.             float2 uv_texcoord;
    52.             float face : VFACE;      
    53.         };
    54.    
    55.         uniform float4 _Color;
    56.         uniform float4 _Color2;
    57.         uniform float _Brightness;
    58.         uniform float _Brightness2;      
    59.         uniform float _MetallicAdd;
    60.         uniform float _MetallicStrength;
    61.         uniform float _SmoothnessStrength;
    62.         uniform float _SmoothnessAdd;
    63.         uniform float _BumpStrength;
    64.         uniform sampler2D _BumpMap;
    65.         uniform float4 _BumpMap_ST;
    66.         uniform sampler2D _MainTex;
    67.         uniform float4 _MainTex_ST;
    68.         uniform sampler2D _MetallicGlossMap;
    69.         uniform float4 _MetallicGlossMap_ST;
    70.         uniform float _Cutoff = 0.5;
    71.         uniform float _MaskClipValue = 0.5;
    72.         uniform float _FadeFactor;
    73.  
    74.         void surf( Input i , inout SurfaceOutputStandard o )
    75.         {
    76.             float2 uv_BumpMap = i.uv_texcoord * _BumpMap_ST.xy + _BumpMap_ST.zw;
    77.             o.Normal = UnpackScaleNormal( tex2D( _BumpMap,uv_BumpMap) ,_BumpStrength );
    78.             float2 uv_MainTex = i.uv_texcoord * _MainTex_ST.xy + _MainTex_ST.zw;
    79.             float4 tex2DNode1 = tex2D( _MainTex,uv_MainTex) * _Color;
    80.             o.Albedo = tex2DNode1.xyz * _Brightness;
    81.             float2 uv_MetallicGlossMap = i.uv_texcoord * _MetallicGlossMap_ST.xy + _MetallicGlossMap_ST.zw;
    82.             o.Metallic = tex2D(_MetallicGlossMap,uv_MetallicGlossMap).x * _MetallicStrength + _MetallicAdd;
    83.             o.Smoothness = tex2D(_MetallicGlossMap, uv_MetallicGlossMap).a * _SmoothnessStrength + _SmoothnessAdd;
    84.             o.Alpha = tex2DNode1.a;
    85.             clip( tex2DNode1.a - _MaskClipValue );
    86.         }
    87.  
    88.         ENDCG
    89.         CGPROGRAM
    90.         #pragma surface surf Standard fullforwardshadows exclude_path:deferred keepalpha addshadow
    91.  
    92.         ENDCG
    93.    
    94.         Tags{ "RenderType" = "Transparent"  "Queue" = "Transparent" "IgnoreProjector" = "True" }
    95.         //ZWrite Off  
    96.         ZTest Less
    97.         Cull [_Cull2]
    98.    
    99.         CGINCLUDE
    100. //        #include "UnityStandardUtils.cginc"
    101.         #include "UnityPBSLighting.cginc"
    102. //        #include "Lighting.cginc"
    103.         #pragma shader_feature _FLIPNORMALS_ON
    104.         #pragma target 3.0
    105.  
    106.         void surf2( Input i , inout SurfaceOutputStandard o )
    107.         {
    108.             float2 uv_BumpMap = i.uv_texcoord * _BumpMap_ST.xy + _BumpMap_ST.zw;
    109.             o.Normal = UnpackScaleNormal( tex2D( _BumpMap,uv_BumpMap) ,_BumpStrength );
    110.             float2 uv_MainTex = i.uv_texcoord * _MainTex_ST.xy + _MainTex_ST.zw;
    111.             float4 tex2DNode1 = tex2D( _MainTex,uv_MainTex) * _Color2;
    112.             o.Albedo = tex2DNode1.xyz * _Brightness2;
    113.             float2 uv_MetallicGlossMap = i.uv_texcoord * _MetallicGlossMap_ST.xy + _MetallicGlossMap_ST.zw;
    114.             // o.Metallic = tex2D( _MetallicGlossMap,uv_MetallicGlossMap).x * _MetallicStrength;
    115.             o.Metallic = _MetallicAdd + (tex2D(_MetallicGlossMap, uv_MetallicGlossMap).x * _MetallicStrength);
    116.             o.Smoothness = _SmoothnessAdd + (tex2D(_MetallicGlossMap, uv_MetallicGlossMap).a * _SmoothnessStrength);
    117.             o.Alpha = tex2DNode1.a * _FadeFactor;      
    118.        
    119.             //Flip backface normals
    120.             #ifdef _FLIPNORMALS_ON
    121.                 if (i.face < 0.0) o.Normal *= -1.0;
    122.             #endif
    123.        
    124.        
    125.         }
    126.  
    127.         ENDCG
    128.         CGPROGRAM
    129.         #pragma surface surf2 Standard exclude_path:deferred decal:blend //alpha:fade
    130.  
    131.         ENDCG
    132.     }
    133.     FallBack "Legacy Shaders/Transparent/Cutout/Bumped Diffuse"
    134. }
    135.  
     
    Last edited: May 15, 2020
    Jaimi and hopeful like this.
  7. SonicShade

    SonicShade

    Joined:
    Dec 29, 2015
    Posts:
    8
    I see! I was importing the blender file into my unity project, which obviously didn't work ;-) Will use the fbx export for a test. Thanks!
     
  8. DankP3

    DankP3

    Joined:
    Jul 17, 2017
    Posts:
    93
    So i updated, it may be slightly better as i could see the missing polys, but the core issue is still there. but it appears that the red highlighting only shows when overlapping the sky (the whole arm is selected in this example) (UMA2.10, Unity 2019.3, HDRP):
    upload_2020-5-13_11-22-36.png
     
  9. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    OK - I will take a look at it. It might be a few days. I created a trello task so I won't forget it.
     
    DankP3 likes this.
  10. dudedude123

    dudedude123

    Joined:
    Aug 24, 2013
    Posts:
    128
    I'm trying to use UMA content creation to put a body part on an avatar


    I setup .fbx
    2020-05-13_01h22_55.png
    2020-05-13_01h23_22.png



    I can't install bones with the mesh
     
  11. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    When you export your clothing, it must have the "armature" modifier on it, and it must have the rig referenced in the modifier.

    Then when you export, select both the armature and the model. Also, be sure you set all your settings the same as in the most recent content creation doc - Your "Apply Scaling" should be set to "FBX All"

    When you import the fbx in Unity, verify it creates a skinned mesh renderer.

     
    hopeful likes this.
  12. mukki014

    mukki014

    Joined:
    Jul 30, 2017
    Posts:
    164
    Hi I'm bit confused here. Is UMA 2 like for making a 3d character model as daz3d or reallusion character creator ? And its model can be used in any game inside unity?
     
  13. DankP3

    DankP3

    Joined:
    Jul 17, 2017
    Posts:
    93
    It's a system for customising characters in game. You can use any base characters, the defaults, daz3d etc. Third party characters will need to be modified and of course may require licenses. I think you would be advised to look at SecretAnoraks YouTube channel for an idea of what is required.
     
  14. Wothanar

    Wothanar

    Joined:
    Sep 2, 2016
    Posts:
    122
    [AssetBundleManager] index was already downloading
    UnityEngine.Debug:Log(Object)
    UMA.AssetBundles.AssetBundleManager:LoadAssetBundleInternal(String, Boolean, Boolean, String) (at Assets/UMA/Core/Extensions/DynamicCharacterSystem/UMAAssetBundleManager/AssetBundleManager.cs:723)
    UMA.AssetBundles.AssetBundleManager:LoadAssetBundle(String, Boolean, Boolean, String) (at Assets/UMA/Core/Extensions/DynamicCharacterSystem/UMAAssetBundleManager/AssetBundleManager.cs:591)
    UMA.AssetBundles.AssetBundleManager:RedownloadAssetBundleIndex() (at Assets/UMA/Core/Extensions/DynamicCharacterSystem/UMAAssetBundleManager/AssetBundleManager.cs:964)
    UMA.AssetBundles.AssetBundleManager:Update() (at Assets/UMA/Core/Extensions/DynamicCharacterSystem/UMAAssetBundleManager/AssetBundleManager.cs:925)


    HELP!, i dont find the way of use assets bundles with uma! i search every where but still cant understand why is not building my bundles? im using the o3n race then i set global library to use only the ones thats need and cant made it run it crash the app if i have the UMA_DCS enabled if not use assets bundles its seems and well i know how to do filestream of assets in unity and use assets bundles too but well i was using the assets bundles of uma the one that comes integrated with it but i barely can understand it coz i search and search and didnt found much information at least explaining the process of build assets bundles and why this is looping on the debug log and that worrie me and i end up to coming here in search of help thank you .

    What im really looking to know its why i cant see my bundles of o3n build ? i mean i think there are not building? i have to put them out of global library? and do something? coz i dont know how to pickup the ones of the assets bundles to build and i really want to know this guys thanks.
     
  15. Wothanar

    Wothanar

    Joined:
    Sep 2, 2016
    Posts:
    122
    Can you explain better what you mean with global index? thanks... i just need to build assets bundles and use uma with it but im kind lost here... should i download or install the Assets Bundles Browser panel for then build my assets bundles? coz i cant find any way to build assets bundles with your integrated tools for build assets bundles... please help , thanks.
     
  16. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    The stuff you are quoting was from several years ago. Things have changed in UMA. You have three options in UMA 2.10:

    1. You can use the Global Library without asset bundles. In this case, everything will be bundled into resources. This is the default method.
    2. You can use Addressables. In this case, follow the "Read Me Now" file which explains the setup of UMA and Addressables. Addressables are unity's new way of managing Asset Bundles. If you use this, don't make any assumptions about how addressables and prefabs work. You have to let UMA manage that, as it needs to have things ready when needed. Using this method will demand load and unload slots/overlays/textures as needed, speed up the initial load, and save a lot of memory.
    3. You can still use the legacy asset bundles. To do this, you would need to manage them yourself, build them, download them, and add them to the Index using AddAssetBundle();
    I suggest if you are first starting out to use option 1. Using Addressables requires familiarity with UMA, Unity, and Addressables.

    To use Addressables to build your bundles (from the readme):

    To use this version of UMA with Addressables (very much recommended), you must have the Addressables package 1.6.2 or later installed from the package manager.

    UMA will not download raw asset bundles in this version. If you want to use raw Asset Bundles, you will need to download them, and add the contents to the global library using UMAAssetIndexer.Instance.ProcessNewItem(item) for each item in the bundle. You would need to manage the asset bundle manually.

    To upgrade a project:

    • Install Addressables 1.6.2 or greater

    • Open the preferences window, and enable addressables in the UMA preferences section. • Import the new UMA 2.10

    • In your scene, delete the UMA_DCS prefab. This is very important. You should not use this older prefab when using Addressables.

    • Add the UMA_GLIB prefab from the "UMA/Getting Started" folder.

    • Open the Addressable groups window and dock it. (Windows/AssetManagement/Addressables/Groups)

    • Edit the default settings in the default group as needed. These settings will be used for the generated groups. If you don't know what this does - leave it as-is.

    • Open the new "Global Library" window. This is new for this version of UMA.

    • Select the Generate/Generate Single Group option from the Addressables menu in the Global Library. The system will generate the addressable groups. This may take some time.

    • In the addressable groups screen, you should build the asset bundles: Build/New Build/Default Build Script.

    • Select the “play mode script”. I use “use existing build”, as that validates the bundles are generated correctly.




     
    unity_006 and jcrey225 like this.
  17. Wothanar

    Wothanar

    Joined:
    Sep 2, 2016
    Posts:
    122
    this happend when i build the assets bundles
    https://gyazo.com/e4ac26f0d2fd67307b775f326198b8a8
    why is this content there? im not using this assets i remove them from the global library i just cant understand how to manage this i cant be so dumb can anyone here drop me a few lines to follow thanks
     
  18. Wothanar

    Wothanar

    Joined:
    Sep 2, 2016
    Posts:
    122
    Right, it works on unity 2018.4.10? and should work for android? coz my customer its pointing to mobile atm

    And thanks for your help , sorry for my multiple posts :p
     
  19. mukki014

    mukki014

    Joined:
    Jul 30, 2017
    Posts:
    164
    Thank you. So it's like a character customization during runtime? Not an actual character creator?
     
  20. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    Yes. Works with 2018.4, and works on Android.
     
  21. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    It's runtime character customization. Imagine you are writing an MMO, and you want people to decide how their character looks (nose position, belly size, etc), and they need to be able to wear one of 80 different outfits, and have different hair styles and skin colors. That's what UMA does.
     
    mukki014 and hopeful like this.
  22. mukki014

    mukki014

    Joined:
    Jul 30, 2017
    Posts:
    164
    Yh
    Thank you that's really helps.
     
  23. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    Hello, I want to implement realtime painting on body function for my uma character. I use a compute shader to generate a render texture every frame, and assigned this texture to a standard material. This material then can be assigned to character's body parts. But this workflow is without UMA, with UMA I know I can use overlay to add fixed tattoo onto the character, but how can I let player paint in realtime and see the results on the character's body directly?
    Rebuild the character every frame is not performant, is there any good way to do it?
     
    Foxaphantsum likes this.
  24. BAIZOR

    BAIZOR

    Joined:
    Jul 4, 2013
    Posts:
    112
    Why it looks like this ? How to fix it ?
    upload_2020-5-15_13-58-5.png
     
  25. Falondrian

    Falondrian

    Joined:
    Nov 1, 2017
    Posts:
    73
    Hello, I need help (see screenshot). What you see is the unchanged UMADynamicCharacter alongside UMA_GLIB prefabs from the GettingStarted folder. All works fine, but something is wrong with the skinning/blend shapes.

    Occurred after upgrading from Unity 2018.4 to Unity 2019.3.13.
    Uma: 2.10
    Platform: Android
    Mode: Editor
    Enabled Features: Addressables, URP

    Things I tried:
    - Repeatedly convert Materials to URP (both Unity and UMA functions), regenerate global library, regenerate addressables group
    - Enable/disable addressables support
    - Reset project settings
    - Reimport UMA
    - Delete UMA and fresh import
     

    Attached Files:

    • uma.png
      uma.png
      File size:
      108.5 KB
      Views:
      363
    Last edited: May 15, 2020
  26. WickedRabbitGames

    WickedRabbitGames

    Joined:
    Oct 11, 2015
    Posts:
    79
    So... recommended for player characters. Not NPCs? At this point I have a character model for the player... but need something to create a variety of NPCs.
     
  27. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    Try turning off "GPU Skinning" in your project settings->Player and see if the issue goes away.
     
  28. DankP3

    DankP3

    Joined:
    Jul 17, 2017
    Posts:
    93
    PCs, NPCs, dragons, cars, pretty much whatever you want.
     
  29. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    Also, go into your quality settings, and make sure ALL of the settings for your platform have the Blendweights set to 4 bones.
     
  30. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    It's definitely for variety among NPCs too. With UMA, you no longer have to put out armies of clones for your players to fight. Each NPC can be unique, within certain parameters that you set up.
     
  31. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    An UMA has a material and a set of textures, just like a regular model. You can have the same workflow as before, but you need to track your additional texture, and apply it to the material after generation.
     
  32. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    The problem is: my UMA character has 5 materials on the generated mesh, and the last sub-mesh is eyelashes, not the skin. If I add another material into the array, the additive effect only applies to the eyelashes. Let alone when I want clothes painting alongside skin paintings. The original workflow was based on separated meshes, but since UMA combined all the meshes into one, the old workflow doesn't work anymore.

    Also a similar problem: I use overlay slots to change the character's eyebrows shape, and used a shared color to control their color. When I change and apply the color when players drag the color slider, the whole scene become very laggy due to the texture rebuild. I made a workaround with eyes and hairs, for they have their own meshes and material, so I can precache the materials then change the color directly in them and only apply the colors to the shadered colors when the character needs a rebuild. But this method doesn't seem to work with overlays since they directly merged the additive texture into the base texture on one slot.

    Any suggestions?
     
  33. Ne0mega

    Ne0mega

    Joined:
    Feb 18, 2018
    Posts:
    745
    I dont know what kind of compute shader you are using, but redrawing textures causes massive bumps, and is very expensive to send from CPU to GPU. I ran into the same problem with terrain generation and wanting to make a Fog of War. I was told i need to do a blit shader. (have not figured that out yet, since all my shaders are shadergraph).
     
  34. Falondrian

    Falondrian

    Joined:
    Nov 1, 2017
    Posts:
    73
    Thanks a lot Jaimi, that was it! It seems the default quality settings have been changed in Unity 2019. Compute skinning enabled seems to run fine though, has the issue with it been resolved in 2019.3?
     
  35. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    I'm not sure, I'm stuck on 2018.4 for a while. I seem to remember someone else having a problem with it in one version of 2019, though.
     
  36. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    Take a look at WillB's new post!

    Male base 1/Fem base 1 RPG starter and UMA Multipurpopse Avatar
     
    hopeful and nsmith1024 like this.
  37. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    The shader itself runs pretty fast. It's the UpdateColor function in dynamic avatar causing the lag. I'm looking for a workaround so I don't need to call this method every frame.
     
  38. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    When I was thinking about how this would "probably" be done, I was thinking was that you have your own set of shaders, one that would blend a texture (that you were modifying with the paint) over the top of the existing textures in the material.
    If you did it this way, you wouldn't be rebuilding the atlas every frame. Instead, you would be modifying the exisiting material (with your new shader on it), and updating the paint texture, based on where they hit the UV with the paint. In essence, you would have one extra paint texture for each material.

    Note: When you change a color, you can simply pass a flag to tell it to update the colors. This should be very fast.
    However, if you have set *any* texture to convert from a render texture to a regular texture (this is in the Generator, and also on each material you can set it) - then it will become extremely laggy as this causes a GPU stall, and the texture copy takes a long time. I have a task out there to delay the conversion until the GPU is done with the RenderTexture, but it won't make it until the next release.
     
    hopeful likes this.
  39. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    This is usually because the export parameters are wrong, and the scaling isn't set right. If you are using Blender, look at the "UMAContentCreation" pdf in the UMA folder for the correct parameters. If you are using Maya, I don't know, but others have had luck. You might try scaling the character up in the import parameters. You may need to extract the TPose again.
     
  40. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    OK, I got what you mean, the body paint I think I can work it out. I'll just send the character's rendered texture into my shader and change the color according to player's paintings every time the character updated.

    About the overlay eyebrow issue: I do use the flag to change the overlay color, but it's still a bit slow.
     
  41. DankP3

    DankP3

    Joined:
    Jul 17, 2017
    Posts:
    93
    Slightly related gpu skinning was bust for the whole of 2018 (add an recipe at runtime would shatter the character mesh) , so I was surprised you were using blendshapes on umas in 2018, I guess you had gpu skinning off. Gpu skinning seems to be fine in 2019.3 - had to leave 2018 for this.
     
    hopeful likes this.
  42. nsmith1024

    nsmith1024

    Joined:
    Mar 18, 2014
    Posts:
    870
    Yes!! thats what i talking about, doesnt that look WAY better than the standard UMA characters. Most people who are playing games are teens, they WANT TEEN looking characters. The standard UMA looks like adults.
     
  43. ScottKane

    ScottKane

    Joined:
    Aug 24, 2019
    Posts:
    81
    Hi,

    I'm new to using UMA and have been experiencing some strange behaviour with my mesh, does anyone have any idea why this is happening:

    upload_2020-5-17_17-0-6.png

    My race has 3 slots (Head, Torso and Legs). Left of image is the character when using UMA, right is without. I'm sure it's probably something simple.

    Thanks
     
  44. kenamis

    kenamis

    Joined:
    Feb 5, 2015
    Posts:
    387
    Wolfmoss and Falondrian like this.
  45. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    I recommend to review the Generator, and all your materials, and make sure you have not turned on "Convert RenderTextures", unless you really really need it.
     
  46. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    My guess would be one of the following:

    1. The bones are not normalized in the armature. In Blender, you select all the bones, and Apply the pose.
    2. The DNA is not setup with 0.5 giving you the default results.
     
  47. ScottKane

    ScottKane

    Joined:
    Aug 24, 2019
    Posts:
    81
    Thanks for the reply, I tried step 1 which hasn't seemed to do anything and I haven't yet set up DNA for the blend shapes so I don't think it's that. If the normal skinned mesh renderer is able to render the model without issue that would indicate it's something being applied by UMA when putting the slot meshes together?
     
  48. ScottKane

    ScottKane

    Joined:
    Aug 24, 2019
    Posts:
    81
    I figured it out, It was because I was using the one of the UMA materials which was set to "Fade", I created my own material as "Opaque" if anyone else has the same issue.
     
    Jaimi likes this.
  49. Harekelas

    Harekelas

    Joined:
    Feb 3, 2015
    Posts:
    864
    No, I've not checked the convert render Texture, if I checked this, there will be several seconds lag on rebuilding character. What I'm experiencing is a slight lag when changing and applying shared color. It's somewhat tolerable but if there is a way to improve, I'd like to know.
     
  50. Jaimi

    Jaimi

    Joined:
    Jan 10, 2009
    Posts:
    6,204
    This should be the fastest thing, and really not much of a hit at all. Recently, someone else had this problem too, and on one of the UMAMaterials, in one of the Texture Channels, the convert option was somehow chosen for that specific channel.
    All I can suggest is to make sure you aren't doing things in you CharacterUpdated that would effect it. But beyond that I really don't know. Recoloring the textures should be lightning fast.