Releases: umasteeringgroup/UMA
UMA 2.13 Beta 2 f3
Updated to correct tag
UMA 2.13 Beta 2 f3
What's Changed
- Added recalculate normals slot (requires burst to use)
- Fixed UMA_Diffuse material
- Fixed new gui to clear UI when changing sex
- Added missing icons, female slots
Full Changelog: v2.13b2f2...v2.12b2f3
UMA 2.13 Beta 2 f2
Fix update 2 for Beta 2.
Adds usings that were erroneously deleted due to compiler options.
See earlier release for additional update notes.
v2.13b2f1
UMA 2.13 Beta 2
New Simple Setup scene
Fixed Mesh Hide Asset editor
Fixed Layer goofup
Added UMAMaterialAnimator (animate shader parms on overlays)
Reworked DynamicCharacterAvatar Inspector, added helper buttons, reconfigured layout logically (?)
Saved Material Properties along with colors in AvatarDefinition
Removed DynamicAssetLoader and old AssetBundle code which was no longer working
Fixed null ref possible in BoneVisualizer
Changed all runtime foreach to standard for(,,) code
Fixed gaze in UMAExpressionPlayer
Made shader properties work correctly with Compositing Shaders
Added/Fixed UMAUVAttachedItem
Added "Force Keep" to indexed items (will never be orphaned)
Fixed "Use Root Folder" in slot builder
Allow editing of bone Mappings in UMAMeshData
Added integrated tags editor to recipes, slots, overlays
Added Validation to slotdataasset inspector.
Added "UMA_INSTALLED" symbol so other assets can detect UMA installation at compile time.
Updated textures, shaders (Still waiting on realistic textures)
Removed null slots during slot merge in recipes
Fixed some UI issues in inspectors due to 2022.3 update
Added DisplayColor to Shared Colors (overlaycolordata)
Added new events to DCA
Minimum version of Unity is now 2021.3
UMA 2.13 Beta 1
What's new in UMA 2.13b
Minimum Unity version 2020.3
You can now enable/disable default wardrobe recipes without removing them from the list in the customization section.
The currently equipped wardrobe recipe is marked with a * in the list.
Enabled recipes are marked with a plus sign.
Disabled recipes are marked with a minus sign.
The Hair Smoosher has been updated and bugs fixed.
Clipping Plane offset - It will now allow you to tune the plane points on the clipping plane slot.
You can now scale and offset the smooshed hair to help adjust for different polygon densities on the hair slot.
Overlays can now have Photoshop-style blend modes applied to them. This allows for more control over how the overlay is blended with the underlying texture.
Blends are specified on the individual texture channel on the overlay.
Supported blend modes are: Normal, Multiply, Screen, Overlay, Darken, Lighten, Color Dodge, Color Burn, Hard Light, Soft Light, and Subtract.
Drag and drop support for merging recipes into other recipes, with slots/overlays/colors/options.
Mesh Hide asset editor can now export occlusion data to a texture, and load and apply occlusion data from a texture.
Fixed bug in Addressable preloader where it would not ask to load additive recipes, causing those not to work at all when using addressables.
Added new compositing shader for Diffuse/Normal/Metallic workflow, so you can drop it in most recipes.
Added favorites window so you can add whatever favorites you want
Colors can now be marked as "base colors" in the customization window, and filtered to those colors.
Added option to "average normals" on the slot welder.
Added ability on DCA to "force suppress" slots or overlays based on tag. For example, if you want to remove an eyebrow overlay off the face if you have used replacement texture for the face that already contains them.
Added preference to use the Burst Compiler to speed up mesh generation. Requires the burst compiler to be installed.
Added option to tile overlays when using the Keep Textures mode.
Added additional sanity checking in various functions for those times when things are going so well. :)
Disabled index healing (even when enabled in preferences) when playing in the editor
Added option to trigger various rebuild types in the editor, not just a full rebuild.
Added "Second pass" material to UMAMaterial. When present, will duplicate the submesh, and draw the submesh a second time with the second material. This is useful for simulating multi-pass in URP.
Added option to UMAMaterial to specify alternate materials for different SRP pipelines.
ConvertRenderTexture is now off by default on mobile.
Fixed various leaks/bugs in MeshHideAsset Inspector.
What's new from previous alphas
What's new in Alpha 4
Minimum Unity version 2020.3
New compositing shaders for the Keep Textures mode that composite textures on the fly. This allows for faster UMA building, and less memory usage. The masked shader also lets you recolor portions of the mesh without having to have multiple overlays. It also allows you to tile in detail textures for higher realism.
Compositing shaders reworked to allow setting parameters from every overlay in the overlay chain. This allows for more control over the compositing shaders.
UV Attached Items: Slots can be attached to UV locations on the model.
Hair Smoosher: A clipping plane slot is used to define the place where hair is conformed to the head. This is to stop hair from poking through hats.
New slot events: SlotBeginProcessing, SlotProcessed. These events are called when a slot is being processed, and can be used to add custom processing to slots.
Swap Slots: Conditional slot replacements. Slots can be swapped out in a recipe by tag. For example, if you have a hat that can't use the hair smoosher, you can include "hat hair" with the hat, and swap out any existing hair that is tagged with the tag provided. For example, you might want to swap and "long hair" for the hat hair, but not any short or bald hair.
Asset Index: The index will now attempt to repair itself if it becomes corrupted, or you have asked it for a slot that doesn't exist.
Asset Index: Added function to remove slot references from MeshHideAssets. This is usefult to save memory when building addressables.
Asset Index: new PrepareBuild() function for use in your build scripts to force the index to be rebuilt, fix all references, etc. Note: You will still need to call the SingleGroupGenerator to generate labels after this function is complete.
DynamicCharacterAvatar: You can specity to keep the predefined DNA ("KeepPredefinedDNA"), so it is always loaded when the character is built.
DynamicCharacterAvatar: Added SetSlot(string) function to set a slot by name. Does not need the slot specified.
Texture Combiner Utility: Reworked to make it easier to use.
Many, many bug fixes and improvements.
From Alpha 3
UMAMeshData - added function to convert to Unity Mesh
DynamicCharacterAvatar
Added events when wardrobe items are added and removed
Error checking when Additional recipes have null item
Replacement slots can now update overlays, and do not duplicate
Force Suppress wardrobe items - If you want a character to never wear something, you can add it.
Texture Processing / Materials
New shader to combine overlays at render time. Allows color masking in addition to all other functions (R,G,B,A masks).
Rewrote Mesh LOD finder
Photobooth
Reworked photobooth to work in URP, and to allow it to enable/disable backface culling when creating icons.
Simple LOD
Distance scaling feature to push out LOD zones
Rewrote Slot LOD finder, and cached results for fast lookup.
UMATextureCombiner
New - Lets you build textures from texture channels of other textures, fill channels with values
UMANormalViewer
New - Lets you view vertex normals to help debug issues
Mesh Combiner:
Now tracks where every slot begins in the built mesh, and every UVArea for atlassed textures
(used by UMAUVAttachedItem)
Global Library
Can now select orphaned slots and overlays
Can now permanently delete selected items (be careful)
Calculate size of selected items
Added UMAMaterial so we can save/restore materials as needed
Filtering System - You can now specify folders that you want to use when rebuilding the global library.
Utilities panel - Tons of new features to automate tedious tasks of updating recipe transforms, mesh hide assets, materials, etc.
Add selected items to unity selection (optionally include dependencies). Apply selected race to selected items.
Bug fixes:
Twistbones fixed to not keep adding itself
Fixed cases where skeleton rebuild would not happen correctly
Overlay Aligner - fixed for various lighting issues
OverlayColorData Property Drawer fixes
DCARendererManager - fixed obscure issues when updating
Wardrobe Collections - Fixed null references when items removed
Fix for null race names in recipes
SkinnedMeshCombiner - fix an empty array copy in some cases
UMARandomAvatar - Numerous fixes
Addressables SingleGroupGenerator - Numerous fixes with Material stripping,
Character Editor - numerous fixes
OverlayDataAsset Inspector - fixes for newer Unity (Duplicate arrays)
SlotDataAsset Inspector - fixes for saving changes
Shader Parameter Mappings - Several fixes - Always Update, etc.
From Alpha 2
You can now load/save Avatar Definition from the DynamicCharacterAvatar in the inspector at runtime.
DNA Converters can now have a "post apply" action.
Several blendshape bugfixes
added editable property to force rebind the animator at build time.
Fixed drag/drop of mesh hide assets
Fixed submeshes in Mesh Hide Asset editor
Added "Show Help" on UMAMaterial Editor, so you can see what all the different types are.
Reworked "hide" on DCA, so it does not use Update. (less overhead)
Added "Recreate Avatar on Race change" option.
Added "AddressableBuildPending" function so you can see if a build is waiting on addressables.
Added new UMAMaterial type "Use existing textures". This sets the textures to the existing textures, and does not generate an atlas. To compositing, you will need to use special shaders. Extra overlays are passed to the shader appending the overlay number in the chain (example, if you have 2 overlays that set _MainTex, then the second one will set "_MainTex1". Shaders are not included for compositing.
Changed "DNA Applied" events to call at the very end of the DNA process.
Small speedup in blendshape application when not all vertex data is sent.
From Alpha 1
Lots of bug fixes - Too many to list
On Generator - added ability to force rebuild all characters at edit time.
On DCA - added button to rebuild current character
On DCA - Added buttons to pull up the current race, and the current base race recipe
Photobooth can now turn on/off mannekin, make clothes double sided (URP/HDRP required for that)
Slots can now contain objects
Objects on slots can get events through IUMAEventHookup to setup the object
Override textures on overlays
Override vertexes on slots
Override bones on T-Poses
Switch to Native methods to set triangles on mesh building
Slot builder can strip parts of bone names when they get renamed spuriously (looking at you, Maya)
New UMAMaterial type: Use Existing Material
Drag and Drop mesh hide assets
Minor fixes to SimpleLOD, Twistbones
Mass add mesh hide assets in Global Library window
Select overlays by material in Global library window
Weld functionality in Slot Inspector - fixes seams without seams mesh
Lots of little buttons to make life easier in the editors
Decal Editor (broken - in progress)
UMA 2.13 Alpha 4
Note: There is a small bug if you are using addressables that will prevent a compile. To fix this, add "using UMA.Controls;" to the top of the file "charbaseeditor.cs". Or wait for the update.
What's new in Alpha 4
Minimum Unity version 2020.3
New compositing shaders for the Keep Textures mode that composite textures on the fly. This allows for faster UMA building, and less memory usage. The masked shader also lets you recolor portions of the mesh without having to have multiple overlays. It also allows you to tile in detail textures for higher realism.
Compositing shaders reworked to allow setting parameters from every overlay in the overlay chain. This allows for more control over the compositing shaders.
UV Attached Items: Slots can be attached to UV locations on the model.
Hair Smoosher: A clipping plane slot is used to define the place where hair is conformed to the head. This is to stop hair from poking through hats.
New slot events: SlotBeginProcessing, SlotProcessed. These events are called when a slot is being processed, and can be used to add custom processing to slots.
Swap Slots: Conditional slot replacements. Slots can be swapped out in a recipe by tag. For example, if you have a hat that can't use the hair smoosher, you can include "hat hair" with the hat, and swap out any existing hair that is tagged with the tag provided. For example, you might want to swap and "long hair" for the hat hair, but not any short or bald hair.
Asset Index: The index will now attempt to repair itself if it becomes corrupted, or you have asked it for a slot that doesn't exist.
Asset Index: Added function to remove slot references from MeshHideAssets. This is usefult to save memory when building addressables.
Asset Index: new PrepareBuild() function for use in your build scripts to force the index to be rebuilt, fix all references, etc. Note: You will still need to call the SingleGroupGenerator to generate labels after this function is complete.
DynamicCharacterAvatar: You can specity to keep the predefined DNA ("KeepPredefinedDNA"), so it is always loaded when the character is built.
DynamicCharacterAvatar: Added SetSlot(string) function to set a slot by name. Does not need the slot specified.
Texture Combiner Utility: Reworked to make it easier to use.
Many, many bug fixes and improvements.
From Alpha 3
UMAMeshData - added function to convert to Unity Mesh
DynamicCharacterAvatar
Added events when wardrobe items are added and removed
Error checking when Additional recipes have null item
Replacement slots can now update overlays, and do not duplicate
Force Suppress wardrobe items - If you want a character to never wear something, you can add it.
Texture Processing / Materials
New shader to combine overlays at render time. Allows color masking in addition to all other functions (R,G,B,A masks).
Rewrote Mesh LOD finder
Photobooth
Reworked photobooth to work in URP, and to allow it to enable/disable backface culling when creating icons.
Simple LOD
Distance scaling feature to push out LOD zones
Rewrote Slot LOD finder, and cached results for fast lookup.
UMATextureCombiner
New - Lets you build textures from texture channels of other textures, fill channels with values
UMANormalViewer
New - Lets you view vertex normals to help debug issues
Mesh Combiner:
Now tracks where every slot begins in the built mesh, and every UVArea for atlassed textures
(used by UMAUVAttachedItem)
Global Library
Can now select orphaned slots and overlays
Can now permanently delete selected items (be careful)
Calculate size of selected items
Added UMAMaterial so we can save/restore materials as needed
Filtering System - You can now specify folders that you want to use when rebuilding the global library.
Utilities panel - Tons of new features to automate tedious tasks of updating recipe transforms, mesh hide assets, materials, etc.
Add selected items to unity selection (optionally include dependencies). Apply selected race to selected items.
Bug fixes:
Twistbones fixed to not keep adding itself
Fixed cases where skeleton rebuild would not happen correctly
Overlay Aligner - fixed for various lighting issues
OverlayColorData Property Drawer fixes
DCARendererManager - fixed obscure issues when updating
Wardrobe Collections - Fixed null references when items removed
Fix for null race names in recipes
SkinnedMeshCombiner - fix an empty array copy in some cases
UMARandomAvatar - Numerous fixes
Addressables SingleGroupGenerator - Numerous fixes with Material stripping,
Character Editor - numerous fixes
OverlayDataAsset Inspector - fixes for newer Unity (Duplicate arrays)
SlotDataAsset Inspector - fixes for saving changes
Shader Parameter Mappings - Several fixes - Always Update, etc.
From Alpha 2
You can now load/save Avatar Definition from the DynamicCharacterAvatar in the inspector at runtime.
DNA Converters can now have a "post apply" action.
Several blendshape bugfixes
added editable property to force rebind the animator at build time.
Fixed drag/drop of mesh hide assets
Fixed submeshes in Mesh Hide Asset editor
Added "Show Help" on UMAMaterial Editor, so you can see what all the different types are.
Reworked "hide" on DCA, so it does not use Update. (less overhead)
Added "Recreate Avatar on Race change" option.
Added "AddressableBuildPending" function so you can see if a build is waiting on addressables.
Added new UMAMaterial type "Use existing textures". This sets the textures to the existing textures, and does not generate an atlas. To compositing, you will need to use special shaders. Extra overlays are passed to the shader appending the overlay number in the chain (example, if you have 2 overlays that set _MainTex, then the second one will set "_MainTex1". Shaders are not included for compositing.
Changed "DNA Applied" events to call at the very end of the DNA process.
Small speedup in blendshape application when not all vertex data is sent.
From Alpha 1
Lots of bug fixes - Too many to list
On Generator - added ability to force rebuild all characters at edit time.
On DCA - added button to rebuild current character
On DCA - Added buttons to pull up the current race, and the current base race recipe
Photobooth can now turn on/off mannekin, make clothes double sided (URP/HDRP required for that)
Slots can now contain objects
Objects on slots can get events through IUMAEventHookup to setup the object
Override textures on overlays
Override vertexes on slots
Override bones on T-Poses
Switch to Native methods to set triangles on mesh building
Slot builder can strip parts of bone names when they get renamed spuriously (looking at you, Maya)
New UMAMaterial type: Use Existing Material
Drag and Drop mesh hide assets
Minor fixes to SimpleLOD, Twistbones
Mass add mesh hide assets in Global Library window
Select overlays by material in Global library window
Weld functionality in Slot Inspector - fixes seams without seams mesh
Lots of little buttons to make life easier in the editors
Decal Editor (broken - in progress)
UMA 2.13 Alpha 3
What's new in Alpha 3
UMAMeshData - added function to convert to Unity Mesh
DynamicCharacterAvatar
Added events when wardrobe items are added and removed
Error checking when Additional recipes have null item
Replacement slots can now update overlays, and do not duplicate
Force Suppress wardrobe items - If you want a character to never wear something, you can add it.
Texture Processing / Materials
New shader to combine overlays at render time. Allows color masking in addition to all other functions (R,G,B,A masks).
Rewrote Mesh LOD finder
Photobooth
Reworked photobooth to work in URP, and to allow it to enable/disable backface culling when creating icons.
Simple LOD
Distance scaling feature to push out LOD zones
Rewrote Slot LOD finder, and cached results for fast lookup.
UMATextureCombiner
New - Lets you build textures from texture channels of other textures, fill channels with values
UMANormalViewer
New - Lets you view vertex normals to help debug issues
Mesh Combiner:
Now tracks where every slot begins in the built mesh, and every UVArea for atlassed textures
(used by UMAUVAttachedItem)
Global Library
Can now select orphaned slots and overlays
Can now permanently delete selected items (be careful)
Calculate size of selected items
Added UMAMaterial so we can save/restore materials as needed
Filtering System - You can now specify folders that you want to use when rebuilding the global library.
Utilities panel - Tons of new features to automate tedious tasks of updating recipe transforms, mesh hide assets, materials, etc.
Add selected items to unity selection (optionally include dependencies). Apply selected race to selected items.
Bug fixes:
Twistbones fixed to not keep adding itself
Fixed cases where skeleton rebuild would not happen correctly
Overlay Aligner - fixed for various lighting issues
OverlayColorData Property Drawer fixes
DCARendererManager - fixed obscure issues when updating
Wardrobe Collections - Fixed null references when items removed
Fix for null race names in recipes
SkinnedMeshCombiner - fix an empty array copy in some cases
UMARandomAvatar - Numerous fixes
Addressables SingleGroupGenerator - Numerous fixes with Material stripping,
Character Editor - numerous fixes
OverlayDataAsset Inspector - fixes for newer Unity (Duplicate arrays)
SlotDataAsset Inspector - fixes for saving changes
Shader Parameter Mappings - Several fixes - Always Update, etc.
From Alpha 2
You can now load/save Avatar Definition from the DynamicCharacterAvatar in the inspector at runtime.
DNA Converters can now have a "post apply" action.
Several blendshape bugfixes
added editable property to force rebind the animator at build time.
Fixed drag/drop of mesh hide assets
Fixed submeshes in Mesh Hide Asset editor
Added "Show Help" on UMAMaterial Editor, so you can see what all the different types are.
Reworked "hide" on DCA, so it does not use Update. (less overhead)
Added "Recreate Avatar on Race change" option.
Added "AddressableBuildPending" function so you can see if a build is waiting on addressables.
Added new UMAMaterial type "Use existing textures". This sets the textures to the existing textures, and does not generate an atlas. To compositing, you will need to use special shaders. Extra overlays are passed to the shader appending the overlay number in the chain (example, if you have 2 overlays that set _MainTex, then the second one will set "_MainTex1". Shaders are not included for compositing.
Changed "DNA Applied" events to call at the very end of the DNA process.
Small speedup in blendshape application when not all vertex data is sent.
From Alpha 1
Lots of bug fixes - Too many to list
On Generator - added ability to force rebuild all characters at edit time.
On DCA - added button to rebuild current character
On DCA - Added buttons to pull up the current race, and the current base race recipe
Photobooth can now turn on/off mannekin, make clothes double sided (URP/HDRP required for that)
Slots can now contain objects
Objects on slots can get events through IUMAEventHookup to setup the object
Override textures on overlays
Override vertexes on slots
Override bones on T-Poses
Switch to Native methods to set triangles on mesh building
Slot builder can strip parts of bone names when they get renamed spuriously (looking at you, Maya)
New UMAMaterial type: Use Existing Material
Drag and Drop mesh hide assets
Minor fixes to SimpleLOD, Twistbones
Mass add mesh hide assets in Global Library window
Select overlays by material in Global library window
Weld functionality in Slot Inspector - fixes seams without seams mesh
Lots of little buttons to make life easier in the editors
Decal Editor (broken - in progress)
UMA 2.13 Alpha 2
Alpha 2 New
You can now load/save Avatar Definition from the DynamicCharacterAvatar in the inspector at runtime.
DNA Converters can now have a "post apply" action.
Several blendshape bugfixes
added editable property to force rebind the animator at build time.
Fixed drag/drop of mesh hide assets
Fixed submeshes in Mesh Hide Asset editor
Added "Show Help" on UMAMaterial Editor, so you can see what all the different types are.
Reworked "hide" on DCA, so it does not use Update. (less overhead)
Added "Recreate Avatar on Race change" option.
Added "AddressableBuildPending" function so you can see if a build is waiting on addressables.
Added new UMAMaterial type "Use existing textures". This sets the textures to the existing textures, and does not generate an atlas. To compositing, you will need to use special shaders. Extra overlays are passed to the shader appending the overlay number in the chain (example, if you have 2 overlays that set _MainTex, then the second one will set "_MainTex1". Shaders are not included for compositing.
Changed "DNA Applied" events to call at the very end of the DNA process.
Small speedup in blendshape application when not all vertex data is sent.
From Alpha 1
Lots of bug fixes - Too many to list
On Generator - added ability to force rebuild all characters at edit time.
On DCA - added button to rebuild current character
On DCA - Added buttons to pull up the current race, and the current base race recipe
Photobooth can now turn on/off mannekin, make clothes double sided (URP/HDRP required for that)
Slots can now contain objects
Objects on slots can get events through IUMAEventHookup to setup the object
Override textures on overlays
Override vertexes on slots
Override bones on T-Poses
Switch to Native methods to set triangles on mesh building
Slot builder can strip parts of bone names when they get renamed spuriously (looking at you, Maya)
New UMAMaterial type: Use Existing Material
Drag and Drop mesh hide assets
Minor fixes to SimpleLOD, Twistbones
Mass add mesh hide assets in Global Library window
Select overlays by material in Global library window
Weld functionality in Slot Inspector - fixes seams without seams mesh
Lots of little buttons to make life easier in the editors
Decal Editor (broken - in progress)
UMA 2.13 Alpha 1
UMA 2.13
Lots of bug fixes - Too many to list
Photobooth can now turn on/off mannekin, make clothes double sided (URP/HDRP required for that)
Slots can now contain objects
Objects on slots can get events through IUMAEventHookup to setup the object
Override textures on overlays
Override vertexes on slots
Override bones on T-Poses
Switch to Native methods to set triangles on mesh building
Slot builder can strip parts of bone names when they get renamed spuriously (looking at you, Maya)
New UMAMaterial type: Use Existing Material
Drag and Drop mesh hide assets
Minor fixes to SimpleLOD, Twistbones
Mass add mesh hide assets in Global Library window
Select overlays by material in Global library window
Weld functionality in Slot Inspector - fixes seams without seams mesh
Lots of little buttons to make life easier in the editors
Decal Editor (broken - in progress)