Skip to content

UMA 2.13 Alpha 4

Pre-release
Pre-release
Compare
Choose a tag to compare
@Jaimi Jaimi released this 30 Jun 02:27
· 83 commits to develop since this release
cfc2b03

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)