Skip to content

Releases: anatawa12/AvatarOptimizer

v1.7.1

07 May 05:16
Compare
Choose a tag to compare

Version 1.7.1

Installer unitypackage for this version is here.

Added

  • Implement mask texture editor #1044
  • Add Simplified Chinese translation #1055

Changed

  • Improved behavior with Read/Write Off #1045
    • Because of Unity limitation, AAO cannot process meshes with R/W off on Start so it will be error.
    • However, on Awake, we can read them so AAO should process them.
    • Since this version, AAO will process meshes with R/W off on Awake.
    • This reduces the number of errors on the apply on play.
    • If you're using Av3Emulator, you still see the error.
    • In addition, in such case, we'll show Auto Fix button on the error message.
    • If you press the button, AAO will fix the error by changing the mesh to read/write enabled.
  • Advanced Options section has benn renamed to Debug Options #1052
    • This express the purpose of the section more clearly.
  • Added Advanced Optimizations and moved Remove Zero sized Polygons to it #1052
    • The Remove Zero sized Polygons can break some shaders or animations so it's not enabled by default.
    • To make it more clear, we moved it to Advanced Optimizations.

Fixed

  • Material Slot animations for multi-material multi-pass rendering are broken #1042
    • Previously we only preserves animations for the number of submeshes instead of material slots.
  • Relax Bounds condition for Automatic Merge Skinned Mesh #1043
    • Previously, AAO doesn't merge Skinned Meshes if bounds are different accurately.
    • Since this version, AAO will merge meshes if bounds are the same with precision to the last 6 digits of decimal point.
  • Entry/Exit to BlendTree broken with None state 1048
  • Particle System with bone-rigged Skinned Mesh Renderer will be broken #1054

v1.7.1-rc.1

06 May 14:42
Compare
Choose a tag to compare
v1.7.1-rc.1 Pre-release
Pre-release

Version 1.7.1-rc.1

Installer unitypackage for this version is here.

This is SNAPSHOT, not a stable release. make sure this may have many bugs.

Added

  • Implement mask texture editor #1044

Changed

  • Improved behavior with Read/Write Off #1045
    • Because of Unity limitation, AAO cannot process meshes with R/W off on Start so it will be error.
    • However, on Awake, we can read them so AAO should process them.
    • Since this version, AAO will process meshes with R/W off on Awake.
    • This reduces the number of errors on the apply on play.
    • If you're using Av3Emulator, you still see the error.
    • In addition, in such case, we'll show Auto Fix button on the error message.
    • If you press the button, AAO will fix the error by changing the mesh to read/write enabled.
  • Advanced Options section has benn renamed to Debug Options #1052
    • This express the purpose of the section more clearly.
  • Added Advanced Optimizations and moved Remove Zero sized Polygons to it #1052
    • The Remove Zero sized Polygons can break some shaders or animations so it's not enabled by default.
    • To make it more clear, we moved it to Advanced Optimizations.

Fixed

  • Material Slot animations for multi-material multi-pass rendering are broken #1042
    • Previously we only preserves animations for the number of submeshes instead of material slots.
  • Relax Bounds condition for Automatic Merge Skinned Mesh #1043
    • Previously, AAO doesn't merge Skinned Meshes if bounds are different accurately.
    • Since this version, AAO will merge meshes if bounds are the same with precision to the last 6 digits of decimal point.
  • Entry/Exit to BlendTree broken with None state 1048
  • Particle System with bone-rigged Skinned Mesh Renderer will be broken #1054

v1.7.0

30 Apr 04:58
Compare
Choose a tag to compare

Version 1.7.0

Installer unitypackage for this version is here.

Added

  • Animator Optimizer #854
    • Most features of Animator Optimizer is not available in Unity 2019.
    • Animator Optimizer optimizes your Animator Controller without behaviour Changes
    • Current Optimizer includes the following optimization
  • Asset Description #847
    • Asset Description is the file to provide information of your assets for Avatar Optimizer.
    • Please see documentation for more details.
  • Warning for material animation in Merge Skinned Mesh #769
    • Merge Skinned Mesh does not support animating material properties differently. (In other words, it can be broken.)
    • Since this version, AAO will warn for such a case.
    • If you animated all materials from same animations, your animation will not be warned.
  • API for declaring dependency relationship to the name of the component #943
    • You can use this API to not change the name of the GameObject.
  • Configuring Clamp BlendShapes (Deprecated) #957
    • Since VRCSDK 3.5.1, VRCSDK sets Clamp BlendShapes (Deprecated) to true on assembly reload.
    • This is not a good setting for AAO in EditMode since AAO does not support clamping BlendShapes.
    • That's why AAO now configures Clamp BlendShapes (Deprecated) to false in edit mode and true in play mode.
    • PlayMode is usually used for testing the avatar behavior so it's better to have the same setting as VRChat client.
    • If you want not to change this setting, please disable Tools/Avatar Optimizer/Configure Clamp BlendShape Weight.
  • Automatic Merge Skinned Mesh #952 #972 #1010 #1020 #1021
    • Trace and Optimize now automatically merges Skinned Meshes if possible.
    • Trace and Optimize will merge your mesh if the material properties or enablement of the mesh is animated similarly and has no BlendShapes.
  • Components API for Scripting Usage #976
    • You can now add AAO components from your script.
  • Animations animating missing GameObject is removed #994
    • Since this update, animations that targeting GameObjects with post-AAO paths is no longer working.
    • Please create animations that targeting GameObjects with pre-AAO paths.
  • Remove Mesh by Mask #998
    • With this component, you can remove polygons with mask texture.
    • You can use use mask for MeshDeleterWithTexture or alpha mask to remove polygons.
  • Remove Empty SubMesh in Trace and Optimize #1007
    • This removes empty SubMeshes including becomes empty by optimization.

Changed

  • MergePhysBone now corrects curve settings #775
  • MergePhysBone now warns if chain length are not same #775
  • MergePhysBone with only one source is now error #775
    • It was not working well and not a error by a bug.
  • Animator Parser is completely rewritten #850 #968 #1011
    • New Animator Parser allow us to track animating properties animated by components removed by AAO.
  • PhysBone that swings no bones are now removed #864
    • I found such a PhysBone on Lime so I added this feature.
  • Switched Localization system to NDMF from CL4EE #873
    • Since this release, Avatar Optimizer is no longer depends on CL4EE.
    • Because VCC doesn't remove unused packages, CL4EE may still be installed on your project.
    • If you want to remove CL4EE, please remove it manually.
  • Suppressed animated BlendShape warning of FreezeBlendShape if it's animated to a few constants #881
    • Modern models have tons of BlendShapes to change their face shape but emotion animation of some of them animates such a BlendShapes to constant (default value).
    • That's unnecessary (incorrect I think) and force users to remove or change the clip when user wants to face shape.
    • I see AAO users use FreezeBlendShapes for overriding such a BlendShapes on twitter.
    • I think using this way is reasonable enough so I suppressed the warning if AAO detected such a usage.
  • Changed minimum VRCSDK to 3.3.0 #882
    • VRCSDK 3.3.0 is required for stable NDMF-VRCSDK compatibility.
  • Endpoint Position settings for newly created MergePhysBone is now Copy instead of Clear #945
    • The Clear settings will increase the number of PhysBone Transforms so it's not better as a default settings.
  • Improved activeness animation warning in Merge Skinned Mesh #948
    • Reduced false-positive warnings
      • Previously, AAO warns if activeness warning is applied to different GameObjects.
      • However, this can be false-positive if animation is applied to different GameObjects with same timing.
      • Since this version, AAO will not warn if the activeness is animated in same animation clip with same curve.
    • Combined warning per Merge Skinned Mesh component.
      • Previously, AAO warns for each source Renderers.
      • Since this version, AAO creates one warning for each Merge Skinned Mesh component.
  • Add error for Cloth component in Merge Skinned Mesh component #949
    • The Cloth component is not supported by Merge Skinned Mesh component.
    • In previous versions, AAO will keep the source Skinned Mesh Renderer if it's with Cloth component by bug.
    • Since this version, AAO will make an error if the source Skinned Mesh Renderer is with Cloth component.
  • Remove Unused Objects now removes PhysBones and Contact Receivers with parameters defined but not used by Animator Controllers #959
    • Previously, AAO did not remove PhysBones and Contact Receivers if they are defined in Animator Controllers whether they are used or not.
    • I thought such a PhysBones on the base body are rare but my friend told me there is Manuka has such a PhysBone so I added this feature.
  • Dropping GameObject to PrefabSafeSet adds the All components on the GameObject to the PrefabSafeSet #960
    • You can add all PhysBones on the GameObject by dropping the GameObject to the MergePhysBone component.
  • MergeSkinnedMesh now warns if Root Bone or Anchor Override are not set #963
  • It will be error if read/write mesh is off in play mode again #1018
    • I found that we may not possible to read mesh with r/w mesh off mode in play mode with the Av3Emulator.
  • Disabled AutoFreezeBlendShape for Skinned Mesh Renderers with Cloth component #1029
    • According to the report, making some polygons zero-size by AutoFreezeBlendShape will make initializing avatar extremely heavy.
    • After a small discussion, we decided to not automatically optimize Skinned Mesh Renderers with Cloth component.

Removed

  • Compatibility with VRCQuestTools v1.x #847
    • Please use VRCQuestTools v2.x, which has compatibility with AAO.

Fixed

  • Inspector of ComponentTypePair (GCDebug) is broken #846
  • Bones swung by unused PhysBones (which will be removed by AAO) are not merged #850
    • Note that To fix this problem, Animato...
Read more

v1.7.0-rc.4

26 Apr 03:14
Compare
Choose a tag to compare
v1.7.0-rc.4 Pre-release
Pre-release

Version 1.7.0-rc.4

Installer unitypackage for this version is here.

This is SNAPSHOT, not a stable release. make sure this may have many bugs.

Changed

  • Disabled AutoFreezeBlendShape for Skinned Mesh Renderers with Cloth component #1029
    • According to the report, making some polygons zero-size by AutoFreezeBlendShape will make initializing avatar extremely heavy.
    • After a small discussion, we decided to not automatically optimize Skinned Mesh Renderers with Cloth component.

Fixed

  • Animating m_Enabled of Animator as a Behavior is broken #1028
    • Since Animator.property become animating float animation property named property,
    • AAO must keep it as Behavior.m_Enabled instead of Animator.m_Enabled but we were not.

v1.7.0-rc.3

24 Apr 12:12
Compare
Choose a tag to compare
v1.7.0-rc.3 Pre-release
Pre-release

Version 1.7.0-rc.3

Installer unitypackage for this version is here.

This is SNAPSHOT, not a stable release. make sure this may have many bugs.

v1.7.0-rc.2

24 Apr 12:02
Compare
Choose a tag to compare
v1.7.0-rc.2 Pre-release
Pre-release

Version 1.7.0-rc.2

Installer unitypackage for this version is here.

This is SNAPSHOT, not a stable release. make sure this may have many bugs.

Changed

  • It will be error if read/write mesh is off in play mode again #1018
    • I found that we may not possible to read mesh with r/w mesh off mode in play mode with the Av3Emulator.

Fixed

  • Box Editor of Remove Mesh in Box can be broke with scale of Skinned Mesh Renderer #1019
  • Automatic Merge Skinned Mesh is broken with BlendTree #1020
  • Automatic Merge Skinned Mesh breaks mesh-shaped Particle System #1021
    • In addition, reference to Skinned Meshes might be broken and this is also fixed.

v1.7.0-rc.1

19 Apr 15:55
Compare
Choose a tag to compare
v1.7.0-rc.1 Pre-release
Pre-release

Version 1.7.0-rc.1

Installer unitypackage for this version is here.

This is SNAPSHOT, not a stable release. make sure this may have many bugs.

v1.7.0-beta.7

16 Apr 03:08
Compare
Choose a tag to compare
v1.7.0-beta.7 Pre-release
Pre-release

Version 1.7.0-beta.7

Installer unitypackage for this version is here.

This is SNAPSHOT, not a stable release. make sure this may have many bugs.

Fixed

  • NRE with AutoMergeSkinnedMesh #1010
  • Error with some rare animation clip #1011

v1.7.0-beta.6

13 Apr 18:39
Compare
Choose a tag to compare
v1.7.0-beta.6 Pre-release
Pre-release

Version 1.7.0-beta.6

Installer unitypackage for this version is here.

This is SNAPSHOT, not a stable release. make sure this may have many bugs.

Added

  • Animations animating missing GameObject is removed #994
    • Since this update, animations that targeting GameObjects with post-AAO paths is no longer working.
    • Please create animations that targeting GameObjects with pre-AAO paths.
  • Remove Mesh by Mask #998
    • With this component, you can remove polygons with mask texture.
    • You can use use mask for MeshDeleterWithTexture or alpha mask to remove polygons.
  • Remove Empty SubMesh in Trace and Optimize #1007
    • This removes empty SubMeshes including becomes empty by optimization.

Fixed

  • dependency is not child of root error if humanoid bone is moved to out of animator game object #995

v1.6.13

13 Apr 08:42
Compare
Choose a tag to compare

Version 1.6.13

Installer unitypackage for this version is here.

Fixed

  • Animator Controller on the VRCStation will be broken #1002
  • Remove Component can be fails with RequireComponent attribute #1003