huika / uma Goto Github PK
View Code? Open in Web Editor NEWUnity Multipurpose Avatar
License: MIT License
Unity Multipurpose Avatar
License: MIT License
Whenever i have the expressionplayer on my uma, it resets all the umas face deformation. It does not actually reset the dna though, just the shape. For example, if i adjust the head size dna slider, nothing happens.
There seems to be one or more problems when creating slots from fbx files exported from maya.
Callstacks may look likt his:
ArgumentNullException: Argument cannot be null.
Parameter name: key
System.Collections.Generic.Dictionary2[UnityEngine.Transform,UnityEngine.Transform].TryGetValue (UnityEngine.Transform key, UnityEngine.Transform& value) (at /Users/builduser/buildslave/monoAndRuntimeClassLibs/build/mcs/class/corlib/System.Collections.Generic/Dictionary.cs:58 UMA.SkinnedMeshCombiner.RecursivelyMapToNewRoot (UnityEngine.Transform bone, UnityEngine.Transform hierarchyRoot, System.Collections.Generic.Dictionary
2 boneMap)
UMA.SkinnedMeshCombiner.RecursivelyMapToNewRoot (UnityEngine.Transform bone, UnityEngine.Transform hierarchyRoot, System.Collections.Generic.Dictionary2 boneMap) UMA.SkinnedMeshCombiner.RecursivelyMapToNewRoot (UnityEngine.Transform bone, UnityEngine.Transform hierarchyRoot, System.Collections.Generic.Dictionary
2 boneMap)
UMA.SkinnedMeshCombiner.CloneBoneListInNewHierarch y (UnityEngine.Transform rootBone, UnityEngine.Transform[] bones, System.Collections.Generic.Dictionary2 boneMap) UMA.SkinnedMeshCombiner.CombineMeshes (UMA.CombineInstance& target, .CombineInstance[] sources, UnityEngine.Transform rootBone, System.Collections.Generic.Dictionary
2 boneMap)
UMA.SkinnedMeshCombiner.CombineMeshes (UnityEngine.SkinnedMeshRenderer target, .CombineInstance[] sources, System.Collections.Generic.Dictionary`2 boneMap)
UMA.UMADefaultMeshCombiner.UpdateUMAMesh (Boolean updatedAtlas, UMA.UMAData umaData, System.String[] textureNameList, Int32 atlasResolution)
UMA.UMAGeneratorBuiltin.UpdateUMAMesh (Boolean updatedAtlas)
UMA.UMAGeneratorBuiltin.HandleDirtyUpdate (UMA.UMAData data)
UMA.UMAGeneratorBuiltin.OnDirtyUpdate ()
UMA.UMAGeneratorBuiltin.Update ()
I've already spent a few hours without locating the problem.
Using the Menu Item "Save Selected Avatar(s) asset" saves an asset, but the Text Recipe is missing the last slot from the umaRecipe.slotDataList.
Must be because
int slotCount = umaRecipe.slotDataList.Length - umaRecipe.additionalSlotCount;
in PackRecipeV2 method of UMAPackedRecipebase.cs
If there is an additional slot, which is not the last slot in the slotDataList, instead of the additional slot being skipped when saving, another slot at the last index will get skipped.
Material builder needs to be cleared up, fields that user should not place anything in should not be shown. And maybe add in some more help texts.
Tried the following:
Boots.SetOverlayColor(new Color32(0,255,0,255), "Boots");
It doesn't matter if its 0 128 255 in the alpha channel it makes no difference,
Any solution or bug fix?
I'm calling a function with the help of the CharacterCreated Event, which I set up in the UMADynamicAvatar script in the Inspector Window (set to Runtime Only).
My function switches the slots of my character by using UMADynamicAvatar.umaData.umaRecipe.SetSlot(int index, SlotData slot) and UMADynamicAvatar.umaData.GetSlot(index).AddOverlay(string name).
However, calling my function via the CharacterCreated Event, the slots and overlays get added to the UMAData (I checked in the Inspector) but are not visible. If I delay my function call for just 1ms (via Invoke("myFunction", 0.001)), everything works fine.
I've added a hair slot and overlay to a generated character, then saved it. When it's reloaded the hair is not in the recipe nor is the overlay. Both the Slot and Overlay are in the Slot library and Overlay library.
I've tried it with 2 separate characters with different slots/overlays and the result is the same.
I and one other person are having an issue with Unity 5.3 and UMA 2.0.5. Textures are getting removed from overlays. It seems some of the overlays will have them and some won't.
5.1.2 doesn't have the issue. Attached images of the missing textures and console errors.
On my comp visual studio had an install issue. Don't know if that might be the cause. Will have to ask the other person.
All UMA menu items should be collected in the same submenu, not spread out like now.
in UpdateAvatar(UMAData umaData) UMA does this:
Object.DestroyImmediate(animator);
If done with a NetworkAnimator component attached to that animator it becomes a problem.
Marking slots dirty without marking DNA dirty is giving incorrect results in UMA 2, resetting the skeleton to the default TPose values.
Without one attached, no Animator gets added and animating the UMA is not possible afterwards.
1.UMA2 U3D crash when switching for android platform
2.In the android platform, while importing UMA2 U3D no response
With the current Git version (11th April 2016) I can no longer extract a T-pose.
ArgumentException: An empty file name is not valid.
System.IO.FileSystemInfo.CheckPath (System.String path) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.IO/FileSystemInfo.cs:255)
System.IO.FileInfo..ctor (System.String fileName) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.IO/FileInfo.cs:58)
(wrapper remoting-invoke-with-check) System.IO.FileInfo:.ctor (string)
UMAEditor.TPoseExtracter.ExtractTPose () (at Assets/Standard Assets/Editor/UMA/Core/TPoseExtracter.cs:23)
The specular map should be optional and if no specular map is given it should automatically use no specular.
If the head slot is replaced with a helmet slot that does not contain mapping to all facial bones UMA creation fails. I imagine this applies to all slots, but the head is the most likely to be replace with reduced bone slots.
The folders should be rearranged so that only the example stuff is in the same folder, currently its a mix of example scripts, core scripts and a slot of other things.
When adding an overlay to slot in a recipe, the UI switches back to DNA view.
I'm instantiating a character avatar, and immediately upon creation I'm calling animator.enabled=false;
the animator component re-enables itself 3 frames later, due to UMA internals
can the animator.enabled state be preserved, even when re-creating the avatar?
I've worked around the problem for now, by checking the state every Update(), and fixing it if it's out of sync, however this should probably be taken care of in UMA so it doesn't happen in the first place.
Thanks! :)
Hi. I'm new to UMA so I viewed the documentation (UMA_Manual.pdf) but it is so outdated; it relates to version UMA version 1.0.1.0R. Will there be an update any time soon as the UMA_Manual.pdf is deprecated as it stands.
Problem:
'Convert Mip Maps' are only created when 'Convert Render Texture' is enabled.
Solution:
Eli Curtz said:
destinationTexture.useMipMap = umaGenerator.convertMipMaps;
after line 80 on TextureProcessPROCoroutine.cs
Here's a few screenshots:
Convert Render Texture off + Convert Mip Maps on vs pbr without uma 2:
http://i.imgur.com/RBRwFZ1.png
Convert Render Texture on + convert mip maps on
http://i.imgur.com/b1tpn4o.png
After bug fix:
Slot meshes created from FBX files generated by 3ds max have mangled vertices.
Converted using UMA 1 then optimized for UMA 2:
Converted using UMA 2:
These fbx files work perfectly is used in the UMA 1 Material Builder. They also work when converted for use in UMA 2. Error occurs if they are directly converted using UMA 2 slot builder.
This has been tested with 3ds MAX 2012 & 2016 with all FBX exporters 2012 - 2016 in both ASCII and binary format.
I can only assume that the fact there are now 2 scales shown on file import in unity 5 may have something to do with it. (import now has "scale factor" and non-editable "file scale")
Example files and testing available on request from: [email protected]
Up to this point I haven't met a single comment in your code. And the documentation @ UMA homesite doesn't really tell you anything if you want to poke it from the code side.
Since I have 50+ UMAs in my scene I have chosen to reduce the texture size from 2048 down to 512. This is a well-considered decision that I think anyone with a large number of UMAs would agree with, otherwise you'll be using over 1 GB of memory at runtime.
Why does the generator tell me this is a warning? Can someone please add a toggle to disable this warning? Thanks.
Solution files, like most project files don't really belong to git, since they can be generated and configurated manually.
Replacing the default inner mouth overlay for a custom generated female recipe doesn't save.
New Inner mouth overlay is added to a female recipe and previous is removed (not during run time).
On loading the recipe during run-time it switches back to the default inner mouth overlay.
New recipe UI with shared colors options bugs:
You need to add 4 in order for the metallic to show ;however, it is effected by texture 2 multiplier. I'm guessing that Albedo Color is 0, then texture 1 normal, and texture 2 metallic. Texture 3 effects nothing but is needed for the metallic.
Adjusting texture 1 color (normals) and then putting back to it's original color causes the normals to stay modified.
Unity 5.1
The UMAData contains code to release the assets it's using. We're getting reports that this is causing crashes during normal app shutdown.
Please add comments with call stacks!
I've added 2 separate shared colors color 0 and Color 1.
I've assigned color 0 to one overlay and color 1 to another. When I press play the character generates and the settings change both overlays to color 0. Plus another overlay gets check marked after unchecking it.
I've also used save collection
Hi.
I've tried importing a few packs to 5.3( from 5.1.2) and I seem to get missing DNA and Slot Data for the Generated.asset. It appears to be mostly on females. Tried with Body Retexture vol.1 and Facepack.
Several "Object reference not set to an instance of an object" errors
This report includes all crashes originating from the UMAGenerator when a UMACharacter is being destroyed while the generator is building it.
Please add callstacks and descriptions as comments.
When using umaData.characterHeight and you have big feet on your UMA, it will not report a correct value.
As described in the forum thread here, rotating the UMAGenerator breaks atlas generation. We should probably ditch that prefab and have it build the camera in code, or at least put some sort of identity transform onto it before it's updated.
The upper muscle adjust no longer alters shoulder width with UMA 2.0. Torso mass still changes. This error can be seen when adusting the slider for any UMA.
It is very confusing which version this repository is on, nor is it impossible to find older versions.
I came on this repository through the UMA2x wiki page but I cannot find any trace of a 2.0 version. The last version mentioned in the readme.md (not really a great place for keeping a change log BTW) is version 1.0.1.0R which I find hard to believe since the version mentioned on the asset store is much higher. So which version is it currently and is it maybe an idea to use the git tag system for tagging releases? This is done by many repositories and also the recommended approach.
Using either slot builder or material builder I am getting the below errors.
I have modeled 5 items for UMA, all import into Unity fine. Only one of these items successfully creates itself. I have tested this numerous items and even edited the FBX files in 3ds Max to try alternate solutions.
I can recreate the item that succeed numerous times without a problem.
Couldn't add object to asset file because the Mesh 'Greek Greaves' is already an asset at 'Assets/Richards files/Armour/Legs/Greek Greaves.FBX'!
UnityEditor.AssetDatabase:CreateAsset(Object, String)
UMAEditor.UMASlotProcessingUtil:CreateSlotData(String, String, String, SkinnedMeshRenderer, UMAMaterial, SkinnedMeshRenderer) (at Assets/Standard Assets/Editor/UMA/Core/UMASlotProcessingUtil.cs:52)
UMAEditor.UmaSlotBuilderWindow:CreateSlot_Internal() (at Assets/Standard Assets/Editor/UMA/Core/UmaSlotBuilderWindow.cs:124)
UMAEditor.UmaSlotBuilderWindow:CreateSlot() (at Assets/Standard Assets/Editor/UMA/Core/UmaSlotBuilderWindow.cs:94)
UMAEditor.UmaSlotBuilderWindow:OnGUI() (at Assets/Standard Assets/Editor/UMA/Core/UmaSlotBuilderWindow.cs:71)
UnityEditor.DockArea:OnGUI()
UnityException: Creating asset at path Assets/Richards files/Slots/Greek Greaves/Greek Greaves.asset failed.
UMAEditor.UMASlotProcessingUtil.CreateSlotData (System.String slotFolder, System.String assetFolder, System.String assetName, UnityEngine.SkinnedMeshRenderer mesh, UMA.UMAMaterial material, UnityEngine.SkinnedMeshRenderer prefabMesh) (at Assets/Standard Assets/Editor/UMA/Core/UMASlotProcessingUtil.cs:52)
UMAEditor.UmaSlotBuilderWindow.CreateSlot_Internal () (at Assets/Standard Assets/Editor/UMA/Core/UmaSlotBuilderWindow.cs:124)
UMAEditor.UmaSlotBuilderWindow.CreateSlot () (at Assets/Standard Assets/Editor/UMA/Core/UmaSlotBuilderWindow.cs:94)
UMAEditor.UmaSlotBuilderWindow.OnGUI () (at Assets/Standard Assets/Editor/UMA/Core/UmaSlotBuilderWindow.cs:71)
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
Crash when creating new Humanoid Race.
NullReferenceException: Object reference not set to an instance of an object
UMA.UMAGeneratorBase.CreateAnimator (UMA.UMAData umaData, UMA.UmaTPose umaTPose, UnityEngine.RuntimeAnimatorController controller, Boolean applyRootMotion, Boolean animatePhysics, AnimatorCullingMode cullingMode)
UMA.UMAGeneratorBase.UpdateAvatar (UMA.UMAData umaData)
UMA.UMAGeneratorBuiltin.UpdateUMABody (UMA.UMAData umaData)
UMA.UMAGeneratorBuiltin.HandleDirtyUpdate (UMA.UMAData data)
UMA.UMAGeneratorBuiltin.OnDirtyUpdate ()
UMA.UMAGeneratorBuiltin.Update ()
Crash occurred at run-time trying to spawn a character.
Best guess: No T-Pose assigned to Race. Add check and verbose error message.
Today I tried UMA for the 1. time 3h ago, I know that linux unity3d (free) is experimental just do not have money for windows, since there is no money for windows mac should not be even considered.
Using dx11 and linear lighting gives horrible artifacts on parts of the mesh that's affected a lot by the Gloss value. Raising the slider removes the issue so its somehow related.
Screenshot: https://db.tt/UkfdfPCb
At least on the Standard Shader - try changing it on UMA_Diffuse_Normal_Metallic and run the crowd scene (decrease crowd size) ends up with 0x0 textures.
The left-right muscle range of the avatar (and t-pose?) jaws are set incorrectly.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.