Skip to content

Releases: PierreGac/Unity-ModelsLibrary

Bug Fixes and UX Improvements

19 Nov 12:00

Choose a tag to compare

Version 1.0.1 - Bug Fixes and UX Improvements

Release Date: 19th November 2025

This release focuses on critical bug fixes, improved user experience, and enhanced notification management. All changes maintain backward compatibility with v1.0.0.

🐛 Bug Fixes

Notification System

  • Fixed notification icons persisting after viewing model details
    • Notification badges now disappear immediately when model details are opened
    • Window title updates automatically without requiring manual refresh
    • Added NotificationStateManager to track read/unread state for notes and updates
    • Implemented automatic UI refresh when notifications are marked as read

Model Submission

  • Fixed RelativePath including Materials folder when submitting from Project view

    • Improved GetDefaultRelativePath() to detect model root folder correctly
    • Automatically walks up directory tree to find folder containing FBX/OBJ files
    • Excludes common subfolders (Materials, Textures, Prefabs, Scripts, Animations)
    • Prioritizes mesh files (FBX/OBJ) in selection for accurate path detection
  • Fixed version deletion errors preventing access to model details

    • Refreshes version list after deletion to get updated available versions
    • Improved error handling when opening next version after deletion
    • Handles edge case when last version is deleted gracefully
    • Better user feedback with informative error messages

First Run Wizard

  • Fixed configuration detection issues
    • Improved IsConfigured() to properly check for default values
    • Fixed detection of "anonymous" username as unconfigured state
    • Added validation in SaveConfiguration() with user feedback
    • Enhanced error handling and logging for configuration failures
    • Window now properly focuses when opened

Image Addition

  • Fixed image addition not working correctly
    • Improved path normalization for drag-and-drop operations
    • Fixed Texture2D asset drag-and-drop path conversion
    • Added case-insensitive duplicate detection
    • Better error messages for invalid files
    • Added user feedback for successful additions

✨ Improvements

Validation & User Feedback

  • Implemented comprehensive changelog validation

    • Real-time validation feedback in submission form
    • Uses ChangelogValidator for comprehensive checks
    • Shows validation errors and suggestions
    • Better guidance for update mode changelog requirements
  • Enhanced duplicate detection

    • Improved null checks and whitespace trimming
    • Better error messages for duplicate model/version detection
    • Validates semantic version ordering for updates
    • More informative validation feedback

User Interface

  • Added loading overlay during refresh operations

    • Full-screen overlay blocks UI interaction during loading
    • Shows progress indicator with animated dots
    • Prevents accidental clicks during refresh
    • Clear loading messages for different operations
  • Improved update icon visibility

    • Update badges now appear in all view modes (List, Grid, Image-only)
    • Respects read state for update notifications
    • Consistent badge display across all views
    • Update count in window title reflects unread updates only

Code Quality

  • Standardized error logging

    • Replaced Debug.Log* calls with centralized ErrorLogger
    • Added error categorization using ErrorHandler
    • Improved error context and debugging information
    • Consistent error handling patterns
  • Performance optimizations

    • Cached texture extensions array to avoid allocations
    • Cached mesh names array to reduce LINQ allocations
    • Used StringBuilder for tooltip construction
    • Replaced string.Concat with string interpolation

🔧 Technical Changes

New Utilities

  • NotificationStateManager (Assets/ModelLibrary/Editor/Infrastructure/Utils/NotificationStateManager.cs)
    • Manages notification read/unread state using EditorPrefs
    • Tracks notes and update notifications separately
    • Provides methods to mark notifications as read
    • Enables automatic UI updates when state changes

API Changes

  • Public Methods Added
    • ModelLibraryWindow.UpdateNotesCount() - Recalculates unread notes count
    • ModelLibraryWindow.UpdateUpdateCount() - Recalculates unread updates count
    • ModelLibraryWindow.UpdateWindowTitle() - Refreshes window title with current counts

Internal Improvements

  • Enhanced path validation and normalization
  • Improved async error handling
  • Better null safety checks throughout
  • More comprehensive XML documentation

📋 Migration Notes

No migration required. This release is fully backward compatible with v1.0.0.

Breaking Changes

None

Deprecations

None

🧪 Testing

All fixes have been validated with:

  • Manual testing of notification persistence
  • Path detection with various folder structures
  • Version deletion edge cases
  • Image addition with multiple formats
  • Loading overlay during refresh operations

📝 Known Issues

  • Metallic/Specular rendering in 3D Preview window (investigation ongoing)
  • Background notification checking without browser launch (planned for future release)
  • Version revert functionality (planned for future release)

🙏 Acknowledgments

Some issues might be present especially when the database is running on a server.


Full Changelog: See commit history for detailed changes

First release

09 Nov 21:42

Choose a tag to compare

Version 1.0.0 - Initial Release

The first stable release of Model Library for Unity, featuring a comprehensive set of tools for managing 3D models in team environments.

🚀 Core Features

Browser & Navigation
  • Full-featured browser window with grid and list views
  • Advanced search by name, tags, or description
  • Tag-based filtering with multi-select support
  • Favorites and recently used models tracking
  • Sort by name, date, or version
  • Visual installation status badges
  • Update available indicators
Model Management
  • One-click import with preserved Unity GUIDs
  • Automatic update detection and version comparison
  • Smart installation status detection (supports old and new manifest formats)
  • Version comparison window for side-by-side analysis
  • Model details window with comprehensive metadata view
  • Automatic window refresh after model submission
Model Submission
  • Submit new models or update existing ones
  • Smart name prefilling from FBX/OBJ files, folder names, or existing models
  • Comprehensive validation (paths, versions, changelog)
  • Drag-and-drop preview image upload
  • Draft saving and loading
  • Changelog entry management
  • Multi-tab interface (Basic Info, Assets, Images, Advanced)
Version Control
  • Semantic versioning (SemVer) support
  • Automatic version suggestion for updates
  • Changelog tracking with author and timestamp
  • Version history viewing
  • Version deletion (with safeguards)
Metadata Management
  • Rich metadata editing (description, tags)
  • Tag system with case-insensitive matching
  • Notes system with categorized feedback (remarks, bug, feature request)
  • Model structure visualization
  • Asset dependency tracking
User & Permissions
  • Role-based access control (Developer, Artist, Admin)
  • User identity management
  • Permission-based UI elements
  • Analytics access control
Repository Support
  • File System repository backend (fully tested)
  • HTTP repository backend (interface ready, needs testing)
  • Configurable repository locations
  • Local caching for offline access
Advanced Features
  • Bulk operations (import, update, tagging)
  • Batch upload from directory
  • Analytics and usage statistics
  • 3D interactive preview window
  • Performance profiler
  • Error log viewer
  • Hidden metadata files (.modelLibrary.meta.json)

✨ User Experience

  • First-run configuration wizard
  • Comprehensive help system
  • Keyboard shortcuts support
  • Progress indicators for long operations
  • Real-time validation feedback
  • Context menu integration (right-click to submit)
  • Automatic refresh after operations
  • Window auto-close after successful import

🏗️ Architecture

  • Clean separation of concerns (Repository, Services, UI layers)
  • Dependency injection ready
  • Extensible repository interface
  • Comprehensive error handling
  • Backward compatibility with old manifest files
  • Migration system for metadata schema changes

🧪 Testing

  • Comprehensive unit test suite
  • Coverage for critical workflows
  • Performance testing infrastructure
  • Backward compatibility tests

📚 Documentation

  • Comprehensive README with screenshots
  • Architecture documentation
  • Code documentation (XML comments)
  • Development guidelines (AGENTS.md)
  • Changelog tracking

🔧 Technical Details

  • .NET Standard 2.1 compatible
  • Unity 6.0.2+ required
  • Editor-only (no runtime dependencies)
  • Async/await throughout for non-blocking operations
  • File system enumeration for hidden files
  • GUID preservation for reliable update detection

🐛 Bug Fixes & Improvements

  • Fixed Unity freeze issues with async operations
  • Improved manifest file discovery (old and new formats)
  • Enhanced installation status detection
  • Fixed path validation and sanitization
  • Improved error handling and user feedback
  • Performance optimizations
  • Code quality improvements (explicit typing, no magic numbers)

📝 Known Limitations

  • HTTP repository backend needs additional testing
  • Performance optimization ongoing for very large datasets (1000+ models)
  • Bulk operations may need additional validation in production environments

v0.3.0

06 Nov 22:19

Choose a tag to compare

Full Changelog: v0.2.0...0.3.0

v0.2.0

14 Oct 21:09

Choose a tag to compare

Full Changelog: v0.1.0...v0.2.0

v0.1.0

21 Sep 20:49

Choose a tag to compare

First release