Optimizing skeletal meshes often results in exploding meshes, broken rigs, or other issues which makes this process tedious work to complete. InstaLOD makes this a quick and painless task.
InstaLOD supports the optimization of skeletal meshes including the transfer of skinning weights so that animations still work flawlessly after the optimization. Additional to mesh optimization, the rig itself can be optimized in many ways using the Skeleton Optimization
features.
To optimize a skeletal mesh, simply select the mesh and optimize, remesh, or imposterize as usual. InstaLOD will automatically maintain skinning weights and add any Skeleton Optimization
if previously set up within the optimizer.
Skinning weights get transferred by all mesh operations, including remeshing and imposterizing as seen above
InstaLOD automatically recognizes where vertices are needed for animation and deformation purposes and preserves these where necessary with clever skinning weight distribution to stay true to the original.
The Optimizer has additional Skeleton Optimization
features which allow for advanced rig optimization.
Leaf Bone Weld Distance: Allows users to set a distance threshold. If leaf bones are within the set distance to another bone, it will weld and remove the skinning data of the leaf bone.
Maximum Bone Depth: Is calculated from the root outwards and maintains the specified depth of bones. All bones past the specified depth are removed.
Max Influences Per Vertex: Specifies the maximum amount of bones to influence the skinning of a single vertex.
Min Influence Threshold: Removes skinning weights below the specified threshold
Ignore Joint RegEx: Ignores specified bones from being included in any of the above features using Regular Expressions. E.g. if a large welding distance would remove the head animation, the head can be ignored from being welded by typing in the bone name 'Head' and be kept animated.
InstaLOD Studio is capable of loading, optimizing, and exporting rigs. Deformations and animations are currently not rendered within the viewport, however, when exporting optimized rigs, they should animate as intended.
InstaLOD currently only supports the preservation of blend shapes when using the InstaLOD For Unreal Engine Plugin. In Unreal Engine, the morph targets are implemented through a UV lookup table instead of saving the position for each vertex which, therefore, currently only makes this feature possible InstaLOD for Unreal Engine.
Blend shapes typically need a reference mesh to deform into with the exact same vertices that have simply been translated in 3D space to create a different e.g. facial expression.
When Optimizing, InstaLOD removes vertices so, therefore, the information of "which vertex moves where" is lost as every original vertex is necessary to compute this information.