• 5.2.3.2 5c8f67cb66

    5.2.3.2 (Blender 5.2 LTS and 5.1)
    All checks were successful
    Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (push) Successful in 2m23s
    Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (push) Successful in 2m23s
    Package Add-on / package (push) Successful in 17s
    Static Tests / static (push) Successful in 21s
    Blender Tests / blender (true, alpha, 5.3) (push) Successful in 2m20s
    Blender Tests / blender (https://download.blender.org/release/Blender5.1/, 5.1) (pull_request) Successful in 2m22s
    Blender Tests / blender (https://download.blender.org/release/Blender5.2/, 5.2) (pull_request) Successful in 2m27s
    Static Tests / static (pull_request) Successful in 21s
    Blender Tests / blender (true, alpha, 5.3) (pull_request) Successful in 2m25s
    Stable

    Yusarina released this 2026-08-12 15:49:41 +00:00 | 2 commits to main since this release

    CATS Blender Plugin 5.2.3.2

    This is another smaller maintenance release focused on improving Fix Model performance, cleaning up some old internal code, and fixing a handful of issues affecting rigidbodies, visemes, and eye tracking.

    Fixed

    • Fixed Fix Model failing to remove rigidbody and joint groups when their names used different capitalisation, such as Rigidbodies or Joints.
    • Fixed the rigidbody/joint detection condition so the duplicate guard is applied correctly.
    • Fixed Auto Visemes silently skipping viseme creation on a second run.
      • The old VisemeCache stored generated vertex data but never applied it, so cache hits skipped mix_shapekey and created no new keys.
      • The unused cache has now been removed.
    • Fixed eye positioning crashing when the centre of an eye vertex group could not be calculated.
      • fix_eye_position now reports failure cleanly instead of allowing a None value to reach the coordinate logic.
      • Both callers now clean up stray eye bones, restore state, and report the problem instead of crashing.

    Improved

    • Improved bone lookup performance during Fix Model.

      • Replaced the unused BoneCache with a working EditBoneIndex.
      • The three bone rename passes now use indexed lookups instead of repeatedly scanning every edit bone.
      • This reduces Fix Model time by around 26% on a 1000-bone armature, with identical output.
    • Improved vertex-group lookup performance during Fix Model's weight merge passes.

      • Vertex groups are now indexed instead of scanning the entire collection for every candidate name.
      • The index rebuilds only when groups are added or removed.
      • In testing on a 1019-bone model, this reduced the relevant Fix Model time from around 1.19s to 0.56s, with identical weights.

    Changed

    • Updated the repository URL to the new repository location.
    • Moved rigidbody and joint detection into the shared Common.is_rigidbody_or_joint helper instead of duplicating the logic.

    Tests

    • Added tests covering the removed VisemeCache behaviour.
    • Added regression coverage for eye-position failure handling.

    Internal Cleanup

    • Removed the old unused BoneCache implementation.
    • Removed the dead VisemeCache.
    • Centralised rigidbody and joint name detection into the shared Common.is_rigidbody_or_joint helper.
    Downloads