1.7.0
CSG Toolkit - Release Notes
Version 1.7.0
๐จ New Pattern System
Complete rewrite of the repeater system with modular pattern support
- Grid Pattern: Traditional XYZ grid layout with automatic template size detection
- Circular Pattern: Arrange objects in circles with optional vertical layering
- Spiral Pattern: Create dynamic spiral formations with configurable pitch and rotation
- Noise Pattern: NEW - Procedural distribution using FastNoiseLite for organic, natural-looking patterns
- Multiple noise types: Simplex, Perlin, Cellular, Value, and more
- Customizable fractal settings (FBM, Ridged, Ping-Pong)
- Adjustable noise frequency and threshold for density control
โ๏ธ Settings & Configuration Improvements
- ProjectSettings Integration: Configuration migrated from custom
.cfgfile to Godot's native ProjectSettings- Settings now stored in
project.godot - Accessible via Project โ Project Settings โ Addons โ CSG Toolkit
- Better version control and project portability
- Settings now stored in
- Config Window Enhancements:
- Auto-close window after saving settings
- Improved UI layout and responsiveness
๐ฎ Runtime & Gameplay Features
- In-Game Instance Generation: CSGRepeater3D and CSGSpreader3D now generate instances during gameplay, not just in editor
- Enables dynamic level generation at runtime
- Perfect for procedural content generation systems
- Template Visibility Control: New
hide_templateoption- Automatically hides template node while keeping repeated instances visible
- Duplicate instances are always visible regardless of template state
- No more workarounds needed for scene-based templates
๐ง Repeater & Spreader Improvements
- Automatic Template Sizing: New
use_template_sizeoption- Automatically calculates spacing based on template's AABB
- No more manual spacing calculations for different sized objects
- Works seamlessly with CSG shapes of any dimensions
- Enhanced Variation Controls:
- Per-axis rotation randomization with individual variance settings
- Per-axis scale randomization with configurable ranges
- Position jitter for organic placement
- All variations are seed-based and reproducible
- Improved Default Values:
- GridPattern now defaults to 2ร1ร1 for immediate visual feedback
- Better initial configurations for all pattern types
โจ๏ธ Keyboard Shortcuts & UX
- CSG Shortcut Manager: Comprehensive keyboard shortcut system
- SHIFT + B/S/C/T/M/P: Quick shape creation (Box, Sphere, Cylinder, Torus, Mesh, Polygon)
- SHIFT + 1/2/3: Cycle CSG operations (Union, Intersection, Subtraction)
- SHIFT + ` or TAB: Cycle through operations
- Context-aware shortcuts only active when CSG nodes are selected
- Smart Insertion: ALT key for behavior inversion (sibling โ child placement)
๐ Code Organization
- Pattern Architecture:
- New
CSGPatternbase class with extensible pattern system - Patterns are now separate resource files in
scripts/patterns/ - Easy to create custom patterns by extending
CSGPattern
- New
- Improved Code Structure:
- Better separation of concerns
- Enhanced documentation and comments
- Cleaner property management with custom property lists
๐ Documentation
- New SETTINGS.md: Comprehensive documentation of ProjectSettings integration
- Migration guide from old config system
- Detailed setting descriptions
- Access instructions for both UI and direct editing
- Updated README:
- Complete feature coverage
- Expanded Quick Start Guide
- Pattern-specific documentation
๐ Bug Fixes
- Fixed behavior toggle button variable naming in config window
- Corrected in-game instance generation for both Repeater and Spreader
- Improved template node visibility handling
- Fixed config window not closing after save
๐ Breaking Changes
- Configuration Migration: Old
csg_toolkit_config.cfgis no longer used- Settings will reset to defaults on first run
- Reconfigure preferences in new ProjectSettings location
- Pattern System: Removed direct
repeatandspacingproperties from CSGRepeater3D- Now configured through pattern resources
- Existing scenes will need pattern resources assigned
๐ฆ Internal Changes
- Unified demo scenes into single
demo.tscn - Updated plugin metadata and compatibility
- Enhanced resource preloading for pattern classes
- Improved property hints and editor integration
Migration Guide
From 1.6.x to 1.7.0
-
Settings:
- Open CSG Toolkit config window and reconfigure your preferences
- Settings now in Project Settings โ Addons โ CSG Toolkit
-
CSGRepeater3D Nodes:
- Select your repeater node
- Create a new pattern resource (Grid/Circular/Spiral/Noise)
- Configure pattern-specific settings
- Adjust
use_template_sizeif needed
-
Runtime Features:
- If using repeaters in-game, they now work automatically on
_ready() - Use
hide_templateoption to manage template visibility
- If using repeaters in-game, they now work automatically on
Full Changelog: https://github.com/yourusername/CSG_Toolkit/compare/1.6.1...1.7.0