Files
blender-portable-repo/extensions/rainys_extensions/rainclouds_bulk_scene_tools/changelog.md
T
2026-03-17 15:39:39 -06:00

10 KiB

v0.17.0 2026-03-13

  • Remove Action FU: new operator in Animation Data section—clears fake users from all actions so only used animations are kept

v0.16.0 2026-01-15

  • Delete Single Keyframe Actions: Blender 5.0 compatible (action layers/strips/channelbags); skip actions from linked libraries
  • Find Material Users: removed (issue #14; use Atomic or DBU)
  • White World: new operator in Scene General (#13)—white background world, film transparent, orphans purge

v0.15.1 2026-01-12

  • Fixed AutoMatExtractor MSMNAO Pack texture handling: preserve texture type suffixes (MSMNAO Pack, SSTM Pack, etc.) when sanitizing filenames
  • Fixed issue #12: corrected duplicated prefix in RBST_ViewDisp_MaterialStatus enum definition
  • Added Props subcollection under Char in SpawnSceneStructure operator

v0.15.0 2026-01-07

  • Refactored all class, function, and constant names to use consistent RBST_ prefix system with module-specific sub-prefixes
  • Added Data-Block Utils integration: Merge Duplicates button in Bulk Data Remap panel that automates finding and merging duplicates across Node Groups, Materials, Lights, Images, and Meshes

v0.14.1

  • Fixed crash in Blender 5.0 when refreshing material previews (#11)
    • Removed problematic batch preview operators and unsafe icon_id access that caused crashes
    • Added version-specific optimizations for 4.2/4.5 vs 5.0+ compatibility
    • Improved cleanup and reduced CPU usage

v0.14.0

  • Added operator to select all images with absolute paths (#3)
  • Added search functionality to filter datablocks in PathMan and Data Remapper panels (#4)

v0.13.1

  • Fix github workflow to include new utils folder

v0.13.0

  • Set up compat for #9, still needs bugchecking, but the main setup is complete.
  • Fixed #10

v0.12.0

  • Integrate Rainy's Extension Repo bootstrapper
  • Set minimum Blender version to 4.2 for #9

v0.11.0

  • Ported to blender extension type
  • Removed CGCookie autoupdater

v 0.10.0

  • AutoMat Extractor
    • Added UDIM/tiled image detection so multi-tile textures are organized alongside standard images without errors. #8
      • Path builder now emits UDIM filename templates (e.g., name.[UDIM].png) plus per-tile targets (e.g., name.1001.png), preventing collisions during relocation.
    • Remapping helper sets tile-level filepath values and ensures directories exist before saving.
    • Saving routine attempts whole-image writes first, then falls back to per-tile saves via the Image Editor context, with summary logs noting UDIM sets processed.
  • Viewport Colors
    • Added a Refresh Material Previews button that clears thumbnails, assigns each material to a temporary preview mesh, and forces preview_ensure() so stubborn viewport colors now reliably pick up thumbnail data. #7

v 0.9.1

  • Convert Relations to Constraint
    • Bugfix: Now converts bone parenting as intended

v 0.9.0

  • Convert Relations to Constraint: Operator in Animation Data section that converts regular parenting relationships to Child Of constraints for selected objects, maintaining world position and transform hierarchy
    • Bugfix: Adapted old operator that wasn't drawing due to using the wrong icon string name.

v 0.8.1

  • Delete Single Keyframe Actions: fixed bug caused by not ignoring linked files

v 0.8.0

New Features

  • Delete Single Keyframe Actions: New operator to remove unwanted animation actions (no keyframes, single keyframe, or all keyframes on same frame)
  • Find Material Users: New operator with native material selector interface that displays detailed material usage analysis in a popup dialog, showing:
    • Object users with material slots
    • Node tree references
    • Material node tree usage
    • Blender's internal user count and fake user status
  • Remove Unused Material Slots: New operator to clean up unused material slots from all mesh objects in the scene
  • Enhanced Bulk Scene General Panel: Reorganized panel with new sections:
    • Materials section containing material analysis and cleanup tools
    • Animation Data section for keyframe/action management
    • All new operators integrated with consistent UI and project formatting standards

Fixes

  • PathMan
    • Automat summary no longer gives invoke error
    • Fixed timing/cancellation error when cancelling Rename Flat Colors operation
    • Pack files operator no longer throws AttributeError for is_generated (now uses img.source != 'GENERATED')
    • Pack files operator now properly skips special Blender images like "Render Result" and "Viewer Node" that can't be packed
  • General
    • Removed debug print statement that was showing "Subdivision Surface modifiers removed from all objects" on every addon load

v 0.7.1

Ghost Buster Enhancements

Added

  • Low Priority Ghost Detection: New option to delete objects not in scenes with no legitimate use and users < 2
  • Smart Instance Collection Detection: Ghost Buster now properly detects when objects are used by instance collections in scenes
  • Enhanced Legitimacy Checks: Improved detection of objects with valid uses outside scenes (constraints, modifiers, particle systems only count if the using object is in a scene)

Improved

  • More Accurate Ghost Detection: Eliminated false positives by checking if instance collection targets are actually being used by scene objects
  • Better Classification: Objects are now classified as "Legitimate", "Ghosts (users >= 2)", or "Low Priority (users < 2)" with clearer reasoning
  • Cleaned UI

Technical Changes

  • Added is_object_used_by_scene_instance_collections() function for precise instance collection detection
  • Enhanced is_object_legitimate_outside_scene() with scene-aware checks for modifiers, constraints, and particle systems
  • Updated ghost analysis and removal logic to use more precise categorization
  • Added scene property ghost_buster_delete_low_priority for user preference storage

v 0.7.0

New: Ghost Detection System

  • Universal Object Analysis: Expanded ghost detection from CC-objects only to all object types (meshes, empties, curves, etc.)
  • Enhanced Safety Framework: Added comprehensive protection for legitimate objects outside scenes:
    • WGT rig widgets (WGT-* objects)
    • Modifier targets (curve modifiers, constraints)
    • Constraint targets and references
    • Particle system objects
    • Collection instance objects (linked collection references)
  • Smart Classification: Objects not in scenes now categorized as:
    • LEGITIMATE: Has valid use outside scenes (protected)
    • LOW PRIORITY: Only collection reference (preserved)
    • GHOST: Multiple users but not in scenes (removed)
  • Conservative Cleanup Logic: Only removes objects with 2+ users that have no legitimate purpose
  • Updated UI: Ghost Detector popup now shows "Ghost Objects Analysis" with enhanced categorization and object type details
  • Improved Safety: All linked/library content automatically protected from ghost detection

v 0.6.1

Bug Fixes

  • Fixed flat color detection: Redesigned algorithm with exact pixel matching and smart sampling
  • Fixed AutoMat Extractor: Now properly organizes images by material instead of dumping everything to common folder
  • Fixed viewport color setting: Resolved context restriction errors with deferred color application
  • Fixed timer performance: Reduced timer frequency and improved cancellation reliability
  • Enhanced debugging: Added comprehensive console reporting for all bulk operations

Improvements

  • Better performance with optimized sampling
  • More reliable cancellation system
  • Context-safe operations that don't interfere with Blender's drawing state

v 0.6.0

  • Enhancement: Progress Reporting & Cancellation
    • Some of the PathMan's operators are pretty resource-intense. Due to Python's GIL, I haven't been able to figure out how to run some of these more efficiently. Without the console window, you're flying blind, so I've integrated a loading bar with progress reporting for the following operators:
      • Flat Color Texture Renamer
      • Remove Extensions
      • Save All to image Paths
      • Remap Selected
      • Rename by Material
      • AutoMat Extractor

v 0.5.1

  • Enhanced AutoMat Extractor:
    • Added a crucial safety check to prevent textures from overwriting each other if they resolve to the same filename (e.g., Image.001.png and Image.002.png both becoming Image.png).
    • The operator now correctly sanitizes names with numerical suffixes before saving.
    • A new summary dialog now appears after the operation, reporting how many files were extracted successfully and listing any files that were skipped due to naming conflicts.
    • Added a user preference to control the location of the common folder, allowing it to be placed either inside or outside the blend file's specific texture folder. A checkbox for this setting was added to the UI.
  • Improved Suffix Handling:
    • The "Rename by Material" tool now correctly preserves spaces in packed texture names (e.g., Flow Pack instead of FlowPack).
    • Added support for underscore-separated packed texture names (e.g., flow_pack).
  • Bug Fixes:
    • Resolved multiple AttributeError and TypeError exceptions that occurred due to incorrect addon name lookups and invalid icon names, making the UI and addon registration more robust.

v 0.5.0

  • Integrated Scene General: Free GPU VRAM
  • Integrated PathMan: Automatic Material Extractor
  • Integrated PathMan: Rename Image Textures by Material: Added comprehensive texture suffix recognition
    • Recognizes many Character Creator suffixes
    • Recognizes most standard material suffixes
    • Images with unrecognized suffixes are skipped instead of renamed, preventing unintended modifications
    • Enhanced logging: Unrecognized suffix images are listed separately for easy identification
  • UI Improvements:
    • Rearranged workflow layout: Make Paths Relative/Absolute moved to main workflow section
    • Remap Selected moved under path preview for better workflow progression
    • Rename by Material and AutoMat Extractor repositioned after Remap Selected
    • Added Autopack toggle at beginning of workflow sections (both Node Editor and 3D Viewport)
    • Consolidated draw functions: Node Editor panel now serves as master template for both panels

v 0.4.1

  • Fixed traceback error causing remap to fail to draw buttons

v 0.4.0

Overhaul! Added new Scene General panel, major enhancements to all panels and functions.

v0.3.0

  • Added image path remapping for unpacked images, keeping them organized.