Smoothing Groups
v1.0.4 — Changelog
Performance
- Batch auto-group creation — Eliminated per-group edit↔object mode switches in Phase 3; sharp edges, UV seams, and smooth/flat shading are now collected across all groups and applied in single batched passes
- Direct BMesh writes — Replaced bpy.ops.mesh.mark_sharp() / bpy.ops.mesh.mark_seam() operator calls with direct edge.smooth / edge.seam assignments, removing selection save/restore overhead
- Bypassed update callbacks during batch creation — CREASE, BEVEL, SMOOTHING_GROUP, and UV_SEAMS properties use id-property syntax (group["prop"]) to skip expensive per-group callbacks
- Suppressed per-group color updates — Added batch_color_suppress flag to defer update_vertex_colors() during batch creation (was firing ~40 times for 20 groups), with a single finalization pass at the end
- GPU batch caching for color overlays — _rebuild_overlay_cache() now pre-computes world-space triangles and builds GPU batches once on dirty flag; draw_colored_elements() no longer creates a BMesh or recomputes geometry every frame
Features
- Max groups per auto-run — Added max_groups property (default: 20) to cap group creation; when exceeded, islands are sorted by size (largest first) and only the top N are processed
Bug Fixes
- Fixed crash: TypeError: unsubscriptable object — mesh.smart_groups.add() inside create_new_group()
Smoothing Groups v1.0.2 — Changelog
Bug Fixes
- Fixed a crash when adding a new selection to an existing Bevel Weight group
- Fixed bevel weights not updating on the mesh after internal changes
- Fixed errors on startup with Blender 5.0
Readable Layer Names
- Group data in Blender's attribute browser now shows the group name instead of a long random ID
- Example: sg_Bevel_Weight_01_a8f3b2c1 instead of smart_group_40b4a7c6-7a87-4177-...
- Renaming a group automatically updates its attribute names
- Existing projects are migrated automatically — no manual steps needed
Per-Group Bevel Modifiers (New)
- You can now give each bevel group its own independent Bevel modifier
- Enable the checkbox next to any bevel group in the Modifier Manager panel
- Each modifier has fully independent settings: width, segments, profile, miter, normals — everything
- Groups with individual modifiers are completely isolated from each other
- Disabling the toggle removes the modifier cleanly
Modifier Manager Improvements
- The panel now shows a Global Bevel section (shared by all groups without individual modifiers) and separate sections for each bevel group
- All Bevel modifier properties are now exposed in the UI, including:
- Custom profile curves
- Miter inner/outer settings
- Face strength mode
- Material offset
- Intersection method
- Edit mode & On Cage visibility toggles
Bug Fixes
- Fixed crash (EXCEPTION_ACCESS_VIOLATION) when toggling edit mode with color overlay enabled — stale BMesh reference stored in overlay cache caused use-after-free during draw callback
Discover more products like this
auto selection tools modeling bevel groups subdivision smoothing 3d_hard_surface addon blender sharp edges shading Edge Control Workflow