All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- Support for Multi Frame BlendShapes
#333
- 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
1.3.4 - 2023-08-22
1.3.3 - 2023-08-21
- 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.
- ClearEndpointPosition is not applied for non-first PhysBones on the GameObject
#357
- Incompatbile with Reload Scene disabaled
#358
1.3.2 - 2023-08-20
- 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
- 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
- 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
- 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
!
- The official shorthand for this tools is
Automatic Configuration
component has been renamed toTrace And Optimize
#295
- 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
- Automatic bounds computation in MergeSkinnedMesh
#264
- Automatic Configuration System
#265
- Currently FreezeBlendShape can be automatically configured.
- Support for material swapping animation in MergeSkinnedMesh
#274
- Support newly activated avatars in play mode for apply on play
#263
- Breaks mesh without tangent
#271
1.1.1 - 2023-07-14
- 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.
- 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
- 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.
- Move Components into
Avatar Optimizer
folder#247
- Previously they are
Optimizer
folder
- Previously they are
- 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
- 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 に更新してください!
- 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
- MergePhysBone without ClearEndpointPosition
#239
- Instead of ClearEndpointPosition, you can use original value, or override Endpoint Position.
0.4.11 - 2023-06-19
- Show error with user friendly message if blendshape for eyelids are removed / frozen.
#253
- 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
- PrefabSafesSet's prefab modifications on latest layer are invisible on inspector
#229
0.4.9 - 2023-06-16
- NullReferenceException if window is in background
#226
0.4.8 - 2023-06-16
0.4.7 - 2023-06-13
0.4.6 - 2023-06-10
- Improve ErrorReport window on build error
#216
0.4.5 - 2023-06-06
- Error in MergeSkinnedMeshProcessor with RecordMoveProperty
#214
0.4.4 - 2023-06-04
- Make
Remove Empty Renderer Object
enabled by default#208
0.4.3 - 2023-06-02
- Adding multiple values to PrefabSafeSet
#200
- See this video for more details.
- Overriden PrefabSafeSet properties are now highlighted as blue and bold
#200
- 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
- There are several situations for this problem:
- Error when we reverted whole PrefabSafeSet with modifications
#201
0.4.2 - 2023-05-30
- 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
- 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.
- Animating
- 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
- Japanese Translation: 日本語化
#152
- 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.
- Delete GameObject feature
#153
- Use
EditorOnly
tag instead
- Use
0.3.5 - 2023-05-15
- Internal Errors not relates to any Object are now reported
#160
- Error if there are multiple GameObjects with same path
#159
0.3.4 - 2023-05-15
- 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
- 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
- Available at https://vpm.anatawa12.com/avatar-optimizer/
- Manual Bake Avatar
#147
- Left click the avatar and click
[AvatarOptimizer] Manual Bake Avatar
- Left click the avatar and click
- 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
- 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
- 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
- Make Children of Me
#100
- As a alternative of feature removal in same pull request
- UnusedBonesByReferencesTool
#112
- This is port of UnusedBonesByReferencesTool by Narazaka
- Support for VRCSDK 3.2.0!
#117
- This includes support for PhysBone Versions and PhysBone 1.1
- 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 ifIntegration Type
is overriden.#105
- During migration, if
Integration Type
(previously calledForce
) is configured to be Override,Pull
,Gravity
,Immobile
will be configured to be Override. - This is BREAKING changes.
- During migration, if
- Now we can Copy / Override
Immobile Type
andImmobile
(strength) separately.#105
- Previously, if you override
Immobile Type
, you also required to overrideImmobile
but no longer required. - This is BREAKING changes in the semantics of
immobile
property.
- Previously, if you override
- Upgrade CL4EE to 1.0.0
#121
- BREAKING Removed Prefab Safe List
#95
- BREAKING Removed RootTransform feature from MergePhysBone
#100
- See this issue comment for more datails.
- 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.
- ShouldIgnoreComponentPatch cases compilation error
#108
- Merge PhysBone is working even if parents are differ
#129
0.2.8 - 2023-04-19
- NullReferenceException with prefabs in editor for PrefabSafeSet
#92
0.2.7 - 2023-04-01
- Support for VRCSDK 3.1.12 and 3.1.13
0.2.6 - 2023-03-31
- 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.
- 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
- Show SaveVersion internal property on editor.
#71
- This makes it easier to make it easier to see prefab overrides
- 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
0.2.4 - 2023-03-22
- make Accessing v1 error
#61
- This reduces future mistakes like #59
- RemoveMeshInBox refers old v1 configuration
#60
0.2.3 - 2023-03-20
- instantiating material occurs
#58
0.2.2 - 2023-03-20
- Make Children
#53
- Do not use cache on applying components now
#56
- NullReferenceException if some component is removed
#54
- save version is not saved. this may break future migration
#55
0.2.1 - 2023-03-20
- Migration failed if some renderer is None
#49
0.2.0 - 2023-03-19
- Support for Prerelease in publish system
#19
- Changelogs (including ones for traditional releases)
#19
- Auto Test
#23
- Prefab support
#11
- 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 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
- Support for feature Migration
be0147b
- Box editor of RemoveMeshInBox
15fc931
- Installer unitypackage name
b32167f
- Warn if MergeSkinnedMesh is with SkinnedMeshRenderer with Mesh
1016aa6
- MergeToonLit is always marked as dirty
82ba212
- RemoveMeshInBox does not handle bone correctly
b2fea4f
- FreezeBlendShape behaviour
0cebf27
- Several bugs
0.1.0 - 2023-01-16
- Move components from
Anatawa12/
toOptimizer/
949d267
- Several bugs
0.0.2 - 2023-01-15
- FreezeBlendShape remains
95c0d43
0.0.1 - 2023-01-13
- Merge Skinned Mesh
- Merge PhysBone
- Freeze BlendShape
- Merge Bone
- Clear Endpoint Position