About this document
InstaLOD's unique way of preserving surface attributes enables optimized geometry to render and shade true to the original geometry. Our polygon optimizer pushes the limits of polygon optimization and challenges expectations.
InstaLODs polygon optimizer processes the original mesh by removing edges and vertices (using our unique and intelligent algorithms). This allows for input metadata and surface attributes to be preserved, including UVs, Textures, Vertex colors, and many more.
Broken geometry such as Non-Manifold geometry is no challenge for InstaLOD. Where other optimizers either break the geometry even more or don't process the data at all, InstaLOD is capable of optimizing broken geometry without making matters worse and is even capable of fixing geometry in the optimization process.
InstaLOD includes a wide variety of optimization settings, giving users full control and flexibility over the process. Depending on the settings used, the optimizer can be fully parallelized across all available CPU threads.
Percent Triangles: Optimize to a percentage of the input polygon count
Absolut Triangles: Optimize to a specific amount of polygons
Screen Size In Pixels: Optimizes using the mesh deviation depending on the pixel amount used to display the object
Maximum Deviation: Optimizes as far as possible until a specified quality threshold is reached. More information on the 'Mesh Deviation' can be found here.
InstaLOD takes a variety of mesh attributes into consideration in its optimization process to ensure the highest quality results across the board. The importance of each feature can be changed for manual control over the priorities. The feature importances work best when using the 'Percent Triangles' or 'Absolute Triangles' due to the available polygon constraints.
Boundary Importance: The importance of mesh boundaries. Boundaries can be locked in the 'Advanced Settings'
Texture Importance: The importance of textures and UVs. If no textures and/or bad UVs are available, this can be set to 'Off'; bad UVs (layered-, or degenerate UVs) can otherwise have a negative impact on the other features.
Shading Importance: The importance of surface shading. If bad shading or broken normals appear, increase the importance.
Silhouette Importance: The importance of the Silhouette. Increasing this will move necessary polygons to e.g. curved areas.
Skinning Importance: The importance of Skinning weights. Increase if deformation quality is not true to the original.
We recommend only changing a single feature importance at a time as InstaLODs algorithms are otherwise limited in their capabilities.
Make sure to fix any issues on the input mesh prior to optimizing as InstaLOD will consider faulty attributes as important to the user and therefore try to maintain them. Fixing geometry can be done by using the Mesh Toolkit (MTK).
Recalculate Normals: Recalculates the normals of the output mesh
Normal Healing Mode: Invalid normals that can occur while optimizing can automatically by fixed
InstaLOD supports the optimization of skeletal meshes including the transfer of skinning weights so that animations still work flawlessly even after the optimization. Additional to mesh optimization, the rig itself can be optimized in many ways using the 'Skeleton Optimization' features. More information on optimizing rigs can be found here.
Leaf Bone Weld Distance: Removes the skinning of leaf bones and their parent-bones when below the welding distance threshold.
Maximum Bone Depth: Removes skinning information from bones that exceed the specified bone depth.
Maximum Influence Per Vertex: The maximum amount of bones that can influence the deformation of a single vertex. If a vertex references more bones than allowed, the lowest bone influence will be removed first.
Minimum Influence Threshold: The minimum amount of bone influence of a vertex. Influences that fall below this value will be removed.
Ignore Joint RegEx: Joint names matching the specified regular expression will not be culled. The ignore joint parent hierarchy will also be preserved. Example
Vertex Welding And Mesh Healing
Vertex welding can be applied in the optimization process to fix geometry.
Welding Distance: Welds vertices that are below the specified distance to one another
T-Junction Healing Distance: Automatically heals T-junctions if the vertex-edge distance is below the specified threshold
The 'Advanced settings' give users additional control over the behavior of the polygon optimizer.
Lock Splits: Locks vertices along a UV boundary. Enabling this feature can fix texture stretching on models with very bad UVs.
Lock Boundaries: Locks vertices along a mesh boundary. Enabling this feature allows for mesh patches or e.g. scan tiles to align perfectly, even after optimizing.
Protect Splits: (Enabled by default) gives a high priority to vertices along a UV boundary.
Protect Boundaries: (Enabled by default) gives a high priority to vertices along a mesh boundary.
Optimal Placement: Allows InstaLOD to move vertices along an edge while optimizing to get improved visual results.
Optimizer Weights Allows for manually painted vertex colors or selection sets to be used to remove or pin vertices. More information on Optimizer weights can be found here.
Unit Scale Factor: scale objects to match a custom scale when optimizing. InstaLOD is scale-sensitive, so scaling meshes correctly is important.
Normalize Mesh Scale: scales meshes up/down to match a BSR of 1000u. This can be used if file scaling is incorrect and manual scaling is not desired. This is particularly useful in batch processes when files are scaled using different unit scale factors.
Force Optimization: Enable to force skeletal optimization even when polygon count percentage is set to 100% (by default, 100% OP will not process the mesh).