Releases: d4rkc0d3r/d4rkAvatarOptimizer
Releases · d4rkc0d3r/d4rkAvatarOptimizer
d4rkpl4y3r Avatar Optimizer 3.5.3
Add Repo to VCC
Bug Fixes
- Fix BoxCollider animation bindings getting thrown away for the BoxCollider that gets implicitly added by VRCStation components. (more)
d4rkpl4y3r Avatar Optimizer 3.5.2
Add Repo to VCC
Bug Fixes
- Fix Texture2D_ST material property animations not working when using the
Use Shader Toggles
option.
d4rkpl4y3r Avatar Optimizer 3.5.1
Add Repo to VCC
Bug Fixes
- Fix root animator parameter animations getting removed as non animatable binding. (more)
- Mark all bindings that reference a transform as animatable as long as the transform exists on the avatar.
This is because there are more animatable bindings than the AnimationUtility tells us about. Thanks Haï~ for linking me to this. - Mark all material property animations as animatable when the target path is affected by any material swap animation.
d4rkpl4y3r Avatar Optimizer 3.5.0
Add Repo to VCC
Features
- Add auto settings for Shader and NaNimation toggles that disable them if the avatar has more than 150k tris.
- Also shows a warning if Shader or NaNimation toggles are enabled and the avatar has more than 150k tris.
- Always remove animation curves which reference a binding that doesn't exist on the avatar.
Changes
- Swap
OnPreprocessTexture
toOnPreprocessAsset
to stop the optimizer from triggering a full project all texture reimport in unity 2022. (more)- This will trigger one last full texture reimport if you already used the optimizer in unity 2022 :(
- Remove option
Merge Cull Back with Cull Off
, just set the culling of your materials to off if you want to merge them. - Reduced generated shader complexity handling material property animations:
- When Shader or NaNimation toggles are enabled, it will still perform a basic merge of meshes that get animated in the same way.
- When all meshes in a merged mesh blob have material properties animated in the same way, it will no longer split the properties into separated properties.
This helps immensely when using global material adjustments like for example color, hue or brightness radials.
Bug Fixes
- Fix materials getting merged even if they have different
VRCFallback
shaders set. - Fix copy of old material property animation when it is a color property.
- Fix optimizer always injecting the animated property disambiguation code on merged material blobs that have at least one material that comes from the combined mesh path.
- Don't generate default properties which have names that are invalid ShaderLab property names. (more)
- Fix always disabled renderer components not getting deleted before mesh merging happens.
Since v3.4.0
Changes
- Added BC6H & DXT1 compression to normal maps in the texture compression analyzer.
Bug Fixes
- Fix mesh disappearing locally when NaNimation is enabled and the mesh has the Head or one of its children as the root bone.
- Fix shaderlab
Int
parameters actually getting written as an int. "Obviously" they should be written as a float.
d4rkpl4y3r Avatar Optimizer 3.4.1
Add Repo to VCC
Changes
- Added BC6H & DXT1 compression to normal maps in the texture compression analyzer.
Bug Fixes
- Fix mesh disappearing locally when NaNimation is enabled and the mesh has the Head or one of its children as the root bone.
- Fix shaderlab
Int
parameters actually getting written as an int. "Obviously" they should be written as a float.
d4rkpl4y3r Avatar Optimizer 3.4.0
Add Repo to VCC
Features
- Improved support for poiyomi shaders to better match the lock in logic.
- Add support for
//ifex
parsing which is important for poi 9.0 as it is used to skip entire passes. - Add support for
#if defined(PROP_Texture) || !defined(OPTIMIZER_ENABLED)
macros to skip unused texture properties.
- Add support for
- Massive performance improvements for the perf rank change preview.
- My personal avatar went from 450ms to 35ms. (
AnimatorController.layers
is slow and you should cache it)
- My personal avatar went from 450ms to 35ms. (
Changes
- Always merge other meshes into the mesh
Body
if it exists. (more) - Add property filter for the shader analyzer debugger.
Auto Refresh Preview Timeout
now ignores the first time it is over the threshold.- This is because the first time the preview is calculated it takes longer than usual.
Bug Fixes
- Fix material property animation of the original property not getting the correct
material.
prefix. - Don't duplicate shader functions with a
Texture2DArray
parameter. - Fix detection of cull ShaderLab property and disable merge with off when there is more than one cull property.
- Fix crash when a MeshRenderer has no MeshFilter on the same GameObject. (more)
Since v3.3.0
Bug Fixes
- Fix
Delete Unused GameObjects
not marking the global phys bone collider transforms as used. - Fix sort order of which mesh should get priority for getting merged into.
- Fix WD ON workflow toggles not stopping NaNimation when
Optimize FX Layer
is disabled. - Fix NaNimation getting blocked by WD ON workflow even for meshes that are on by default.
- Don't normalize normals & tangents when merging meshes. This fixes outlines that are dependent on the normal length to determine mesh scale.
- Clamp blendshape value to 0-100 when baking the blendshape to match in-game blendshape clamping.
- Fix crash when no fxlayer is present.
- Fix non shader or NaNimation toggles getting broken.
- Fix it not working in unity 2019
d4rkpl4y3r Avatar Optimizer 3.3.4
Add Repo to VCC
Bug Fixes
- Fix
Delete Unused GameObjects
not marking the global phys bone collider transforms as used. - Fix sort order of which mesh should get priority for getting merged into.
- Fix WD ON workflow toggles not stopping NaNimation when
Optimize FX Layer
is disabled. - Fix NaNimation getting blocked by WD ON workflow even for meshes that are on by default.
d4rkpl4y3r Avatar Optimizer 3.3.3
Add Repo to VCC
Bug Fixes
- Don't normalize normals & tangents when merging meshes. This fixes outlines that are dependent on the normal length to determine mesh scale.
- Clamp blendshape value to 0-100 when baking the blendshape to match in-game blendshape clamping.
d4rkpl4y3r Avatar Optimizer 3.3.2
Add Repo to VCC
Bug Fixes
- Fix crash when no fxlayer is present.
- Fix non shader or NaNimation toggles getting broken.
d4rkpl4y3r Avatar Optimizer 3.3.1
Hotfix for Unity 2019
Add Repo to VCC
Features
- Add new way to toggle merged meshes
NaNimation
.- This allows merging meshes that have shaders that don't support shader toggles.
- Add sub option
Keep Default Enabled State
which only merges meshes that have the same default enabled state. - Add sub option
Allow 3 Bone Skinning
which allows NaNimation on all meshes by reducing the skinning quality on meshes that use 4 bone weights.
- Add sub option
Merge MainTex
that decides whether the_MainTex
property is allowed to be merged into a texture array. (more)
Changes
- No longer put the dummy animation clip in empty states. (more)
- Add debug list
Mesh Bone Weight Stats
. - Add debug list and validation info for when some meshes can't use NaNimation because of missing on or off animations.
- Collapsed some info boxes regarding materials that can't merge into one info box.
- The UI is now disabled when in play mode. This saves performance when testing with av3 emulator without running the optimizer.
- Requires ORL shader generator 6.2 or newer for faster shader parsing of .orlshader files.
- Mesh only uses 1 or 2 bone weight skinning if none of the vertices need more than that. Was always 4 bone weights before.
- Slightly increase the size of the performance rank change icons.
- Minor performance improvements:
- Calculating if materials can merge is faster which speeds up the preview.
- Merging skinned mesh data is faster by pre allocating list capacity and skipping uv sets that don't exist.
Bug Fixes
- Fix crash when a material name has slashes or other characters that are not allowed in file names.
- Fix crash in 2022 when an extra animator is not humanoid or doesn't have an avatar definition. (more)
- Fix macro to declare
tex##_ST
not being detected as a custom texture property declaration macro. - Fix log spam in 2022 from vector array properties also setting as a float value.
- Fix material property animations on MeshRenderer components that get combined into a SkinnedMeshRenderer still being bound to the MeshRenderer type.
- Fix basic merged mesh blobs also trying to use
Use Shader Toggles
when it is enabled but the shaders don't support it. (more) - Fix non triangle topology meshes not working when merged.
- Fix
Merge Same Ratio Blend Shapes
not working correctly if some ratios had 0 values in them. - Fix crash with Skinned Mesh Renderers that have no mesh assigned to them. (more)
- Fix VRCFury check only checking the root game object and not all children. (more)
Since v3.2.0
Bug Fixes
- Fix phys bone dependency check only checking the moved transforms and not all children. (more)
- Fix ignored transform in phys bone not being marked as moving despite it being possible thanks to stretch & squish.
- Fix delete unused game objects not registering phys bone ignore transforms as used. (more)
- Fix crash when a static mesh has a missing material and
Write Properties as Static Values
is enabled. (more)