Skip to content

Latest commit

 

History

History
506 lines (415 loc) · 28.9 KB

CHANGELOG.md

File metadata and controls

506 lines (415 loc) · 28.9 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Added

  • Support for Multi Frame BlendShapes #333

Changed

  • Auto FreezeBlendShape now freezes meaningless BlendShape #334
    • If you removed some vertices with RemoveMeshInBox or RemoveMeshWithBlendShape, some BlendShape may transform no vertices
    • Auto FreeseBlendShae now freezez such a BlendShapes
  • Auto FreezeBlendShape now freezes vertices even if already FreezeBlendShape is configured. #334

Deprecated

Removed

Fixed

Security

1.3.4 - 2023-08-22

Changed

  • Internal implementation of Trace and Optimize #361
  • Documentation Improvements #366 #365

1.3.3 - 2023-08-21

Added

  • BlendShape Weight mismatch warning is now build-time warning instad of validate time warning #359
    • Thanks to FreeseBlendShape by TraceAndOptimize, most pre-build this warning is false positive. So this warning is moved to build-time only.

Fixed

  • ClearEndpointPosition is not applied for non-first PhysBones on the GameObject #357
  • Incompatbile with Reload Scene disabaled #358

1.3.2 - 2023-08-20

Fixed

  • Children of IsActive animated object is not considered #342
  • Multi Passs Rendering not supported error doesn't have location info #347

1.3.1 - 2023-08-19

Fixed

  • Unity Editor may freezes when there are circular dependency #329
  • Network ID is not assigned for newly created PBs #331
  • Internally assigned animator controller is not skipped for default choosen playable layer in Trace and Optimize #332
  • VRCSDK assigned default animators are not considered in Trace and Optimize #332
    • This bug doesn't create bad behavior for now but will does in the feature.
  • Humanoid Animation are not considered in Trace and Optimize #332
    • This bug doesn't create bad behavior for now but will does in the feature.
  • Material Slot with null material is created if there are more SubMesh than Material Slots #337
  • AAO silently ignored multi pass rendering #337
    • For now, multi pass rendering of last SubMesh is not (yet) supported so now cause error but will be supported.
  • There is no warning about BlendShape weight difference #336

1.3.0 - 2023-08-12

Added

  • Remove always disabled objects #278
  • The new Remove Mesh By Blend Shape component removes mesh data based on blend shapes. #275
  • Option to process Make Children before modular avatar #296

Changed

  • Use UnityEditor api to compress texture #276
    • This also adds some supported texture formats.
  • Every component have AAO prefix in their name now #290
    • The official shorthand for this tools is AAO!
  • Automatic Configuration component has been renamed to Trace And Optimize #295

Fixed

  • UnusedBonesByReferenceTool error with SMR without mesh #280
  • MergeSkinnedMesh doesn't work well with eyelids #284
  • Animating Behaviour.m_Enabled not working #287
  • Error Report Window may not refreshed after build error #299
  • Apply On Play may not working well #305
  • Some components unexpectedly can be added multiple times #306

1.2.0 - 2023-07-26

Added

  • Automatic bounds computation in MergeSkinnedMesh #264
  • Automatic Configuration System #265
    • Currently FreezeBlendShape can be automatically configured.
  • Support for material swapping animation in MergeSkinnedMesh #274

Changed

  • Support newly activated avatars in play mode for apply on play #263

Fixed

  • Breaks mesh without tangent #271

1.1.1 - 2023-07-14

Changed

  • Avatar GameObject marked as EditorOnly no longer be removed #261
    • Previously, if avatar GameObject is marked as EditorOnly, whole avatar is removed and this confuses users.

Fixed

  • Name of failed ApplyOnPlayCallback is not included in error message #260
  • Entering play mode can be extremely slow if you have many avatar on the scene #262

1.1.0 - 2023-07-13

Added

  • Now we can choose texture format for Merge Toon Lit Material #251
    • This includes one tiny BREAKING CHANGES.
    • Previously MergeToonLit uses ARGB32 as texture format but for now, it use ASTC 6x6 or DXT5 by default based on platform.

Changed

  • Move Components into Avatar Optimizer folder #247
    • Previously they are Optimizer folder
  • Completely rewrite apply on play system #249
    • This will remove EditorOnly on play.
    • This enable UnusedBonesByReferencesTool component on play.
    • This replaces way to apply [modular-avatar by bdunderscore] on play.
      • modular avatar will be applied before AvatarOptimizer main logic and after removing EditorOnly.
    • This will remove enable/disable checkbox on components, which had no meaning.
    • The framework for this changes will be published as separated framework when ready.
  • Use binary form of asset file in avatar optimizer output #252

Fixed

  • Manual bake not working with avatars with invalid file name chars #253
  • Merge Toon Lit duplicates vertex too many #256
    • This could causes huge increase in avatar size. this is now fixed.

1.0.0 - 2023-06-27

If you're using v0.3.x or older, Please upgrade to v0.4.x before upgrading v1.x.x!

もし v0.3.x 以前を使用しているのであれば, v1.x.xに更新する前に v0.4.x に更新してください!

Removed

  • Save format migration system #199
    • We no longer see save data in format of v0.3.x or older.
    • Please migrate to v0.4.x format before installing v1.0.0.

0.4.12 - 2023-06-22

Added

  • MergePhysBone without ClearEndpointPosition #239
    • Instead of ClearEndpointPosition, you can use original value, or override Endpoint Position.

0.4.11 - 2023-06-19

Changed

  • Show error with user friendly message if blendshape for eyelids are removed / frozen. #253

Fixed

  • eyelids BlendShape settings are mapped even if it's disabled #235
    • This fixes error if internally eyelids BlendShape are frozen.

0.4.10 - 2023-06-17

Fixed

  • PrefabSafesSet's prefab modifications on latest layer are invisible on inspector #229

0.4.9 - 2023-06-16

Fixed

  • NullReferenceException if window is in background #226

0.4.8 - 2023-06-16

0.4.7 - 2023-06-13

Fixed

  • Dropping PhysBone to MergePhysBone is not working #221
  • First box will be size of zero #223

0.4.6 - 2023-06-10

Changed

  • Improve ErrorReport window on build error #216

0.4.5 - 2023-06-06

Fixed

  • Error in MergeSkinnedMeshProcessor with RecordMoveProperty #214

0.4.4 - 2023-06-04

Changed

  • Make Remove Empty Renderer Object enabled by default #208

0.4.3 - 2023-06-02

Added

  • Adding multiple values to PrefabSafeSet #200
  • Overriden PrefabSafeSet properties are now highlighted as blue and bold #200

Fixed

  • Error when we removed some modification in PrefabSafeSet #201
    • There are several situations for this problem:
      • When we removed value in original component
      • When we removed new value in overrides
      • When we reverted added twice in overrides
      • When we reverted deletion in overrides
      • When we reverted fake deletion in overrides
  • Error when we reverted whole PrefabSafeSet with modifications #201

0.4.2 - 2023-05-30

Fixed

  • MergeSkinnedMesh depends on other EditSkinnedMesh components does not working #195
  • Error with removed modified property in PrefabSafeSet Editor #196
  • Apply on Play may not work #198

0.4.1 - 2023-05-23

Changed

  • Reimplemented Animation Mapping System Completely #168
    • This should fixes problem with objects/components at same place.
  • Improve Animation Mapping System #172
    • This should reduce build time
  • Disable animating m_Enabled of source SkinnedMeshRenderer #190
    • Animating m_Enabled of source SkinnedMeshRenderer now doesn't affects merged SkinnedMeshRenderer
    • If you actually want to enable/disable merged SkinnedMeshRenderer, animate m_Enabled of merged SkinnedMeshRenderer instead.

Fixed

  • Error is not cleared on build #170
  • Merge PhysBone is not working #177
    • Previously, values are not copied correctly
  • The help box for description of components without description were shown #178
  • Name of Is Animated and Parameter field are not correct #183
  • We cannot set override setting of Colliders to Copy #183
  • Error with MergeToonLit #185
  • Poor word choice in Japanese Translation #174
  • Localization is not applied for some fields #186

0.4.0 - 2023-05-20

Added

  • Japanese Translation: 日本語化 #152

Changed

  • Save format for MergePhysBone #166
    • Previously used backed PhysBone component for override values are removed.
    • There are no changes in behaviour. Just migrate your assets.

Removed

  • Delete GameObject feature #153
    • Use EditorOnly tag instead

Fixed

  • Error with Animator at non-root GameObject #164
  • Error with copied MergePhysBone component #165

0.3.5 - 2023-05-15

Changed

  • Internal Errors not relates to any Object are now reported #160

Fixed

  • Error if there are multiple GameObjects with same path #159

0.3.4 - 2023-05-15

Fixed

  • Reference to Component will become None #156
  • BlendShapes for Eyelids can be broken with FreezeBlendShape #154

0.3.3 - 2023-05-14

0.3.2 - 2023-05-14

Added

  • Error Reporting System #124
    • This adds window shows errors on build
    • This is based on Modular Avatar's Error Reporting Window. thanks @bdunderscore
  • Website for AvatarOptimizer #139
  • Manual Bake Avatar #147
    • Left click the avatar and click [AvatarOptimizer] Manual Bake Avatar

Changed

  • Improved & reimplemented Animation (re)generation system #137
    • This is completely internal changes. Should not break your project
    • In previous implementation, animations for GameObjects moved by MergeBone, MergePhysBone or else doesn't work well
    • This reimplementation should fix this problem

Fixed

  • Migration fails with scenes/prefabs in read-only packages #136
    • Now, migration process doesn't see any scenes/prefabs in read-only packages.

0.3.1 - 2023-05-05

Fixed

  • Can't remove SkinnedMeshRenderer error #133
    • This error should do nothing bad but it confuses everyone
  • Bad behaviour with VRCFury on build #134

0.3.0 - 2023-05-04

Added

  • Make Children of Me #100
    • As a alternative of feature removal in same pull request
  • UnusedBonesByReferencesTool #112
  • Support for VRCSDK 3.2.0! #117
    • This includes support for PhysBone Versions and PhysBone 1.1

Changed

  • Use IEditorOnly instead of mokeypatching VRCSDK #102
  • Move the toggle for Override and the setting of the value after Override closer together. #105
    • With this changes, the merged PhysBone is now hidden.
    • The merged PhysBone will be shown in Play mode.
  • Now we can Copy (instead of Override) Pull, Gravity, Immobile properties even if Integration Type is overriden. #105
    • During migration, if Integration Type (previously called Force) is configured to be Override, Pull, Gravity, Immobile will be configured to be Override.
    • This is BREAKING changes.
  • Now we can Copy / Override Immobile Type and Immobile (strength) separately. #105
    • Previously, if you override Immobile Type, you also required to override Immobile but no longer required.
    • This is BREAKING changes in the semantics of immobile property.
  • Upgrade CL4EE to 1.0.0 #121

Removed

  • BREAKING Removed Prefab Safe List #95
  • BREAKING Removed RootTransform feature from MergePhysBone #100
  • Removed support for VRCSDK 3.1.x. #117
    • Dropping VRCSDK support is a BREAKING changes.
    • However, we may drop old VRCSDK support in the minor releases of AvatarOptimizer in the feature.
    • In the other hand, we promise we'll never drop old VRCSDK support in the patch releases.
    • Notice: in the 0.x.y release, y is a minor releases in this project.

Fixed

  • ShouldIgnoreComponentPatch cases compilation error #108
  • Merge PhysBone is working even if parents are differ #129

0.2.8 - 2023-04-19

Fixed

  • NullReferenceException with prefabs in editor for PrefabSafeSet #92

0.2.7 - 2023-04-01

Added

  • Support for VRCSDK 3.1.12 and 3.1.13

0.2.6 - 2023-03-31

Added

  • Internationalization support #77
    • This adds way to translate editor elements.
    • However, no other language translation than English is not added yet.
    • Please feel free to make PullRequest if you can maintain the translation.

Fixed

  • Remove Empty Renderer Object is not shown on the inspector #76
  • normal vector and tangent vector might not be unit length #81
    • This can be problem with FreezeBlendShape.
  • Assertion does not work well #85
    • This can make invalid mesh
  • Mesh is broken if more than 65536 vertices are exists #87
    • Because we didn't check for vertices count and index format, vertex index can be overflow before.
  • Generated assets are invisible for a while #88

0.2.5 - 2023-03-24

Added

  • Show SaveVersion internal property on editor. #71
    • This makes it easier to make it easier to see prefab overrides

Changed

  • reduce unnecessary modification in PrefabSafeSet/List #64
    • Previously PrefabSafeSet/List will always generates array size change modification.
    • Now, array size change will be generated when added/removed elements from the collection.
  • use ExecuteAlways instead of ExecuteInEditMode #72

Fixed

  • save version is not saved again #69
  • None is added/removed on the prefab modifications #73

0.2.4 - 2023-03-22

Changed

  • make Accessing v1 error #61
    • This reduces future mistakes like #59

Fixed

  • RemoveMeshInBox refers old v1 configuration #60

0.2.3 - 2023-03-20

Fixed

  • instantiating material occurs #58

0.2.2 - 2023-03-20

Added

  • Make Children #53

Changed

  • Do not use cache on applying components now #56

Fixed

  • NullReferenceException if some component is removed #54
  • save version is not saved. this may break future migration #55

0.2.1 - 2023-03-20

Fixed

  • Migration failed if some renderer is None #49

0.2.0 - 2023-03-19

Added

  • Support for Prerelease in publish system #19
  • Changelogs (including ones for traditional releases) #19
  • Auto Test #23
  • Prefab support #11

Changed

  • BREAKING Save format for many components #11
    • Even if you added more elements than before on prefab, added elements on prefab instance will be kept.
    • In previous implementation (unity default array prefab overrides implementation), can be broken easily.
  • BREAKING All materials are merged by default #11
    • Due to save format migration, every materials will be marked as merged.
    • If you have some materials not to be merged, please re-reconfigure that.

Fixed

  • Fixed IndexOutOfError if there are more bones than bindposes #30
  • SkinnedMeshRenderers without bones will break mesh #35
  • We may forget checking components on disable objects #46

Added

  • Support for feature Migration be0147b

Changed

  • Box editor of RemoveMeshInBox 15fc931
  • Installer unitypackage name b32167f
  • Warn if MergeSkinnedMesh is with SkinnedMeshRenderer with Mesh 1016aa6

Fixed

  • MergeToonLit is always marked as dirty 82ba212
  • RemoveMeshInBox does not handle bone correctly b2fea4f

Fixed

Fixed

  • FreezeBlendShape behaviour 0cebf27

Added

  • (internal) MeshInfo2 system for speed up 36716dd
  • RemoveMeshInBox component 96f3526

Changed

  • Make VPAI installer unitypackage install 0.1.x 6615991
  • Editor of FreezeBlendShape cdd2031

Fixed

  • Several bugs

0.1.0 - 2023-01-16

Changed

  • Move components from Anatawa12/ to Optimizer/ 949d267

Fixed

  • Several bugs

0.0.2 - 2023-01-15

Added

Fixed

0.0.1 - 2023-01-13

Added

  • Merge Skinned Mesh
  • Merge PhysBone
  • Freeze BlendShape
  • Merge Bone
  • Clear Endpoint Position