You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+28Lines changed: 28 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,34 @@ All notable changes to this package will be documented in this file.
4
4
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html)
6
6
7
+
## [1.0.0] - 2025-11-01
8
+
9
+
**New**:
10
+
- Added `IUiAnalytics` interface and `UiAnalytics` implementation for performance tracking
11
+
- Added three editor windows: `UiAnalyticsWindow`, `UiServiceHierarchyWindow`, `UiLayerVisualizerWindow`
12
+
- Added `UiPresenterSceneGizmos` for visual debugging in Scene view
13
+
- Added `UiPresenterEditor` custom inspector with quick open/close buttons
14
+
- Added comprehensive sample scenes with README for all major features
15
+
- Added Performance Optimization section to README with best practices
16
+
- Added Troubleshooting section to README with common issues and solutions
17
+
18
+
**Changed**:
19
+
- Replaced `Task.Delay` with `UniTask.Delay` throughout for better performance and WebGL compatibility
20
+
- Updated `CloseAllUi` to avoid modifying collection during iteration
21
+
- Enhanced `UiService.Dispose()` with proper cleanup of all presenters, layers, and asset loader
22
+
-`LoadUiAsync`, `OpenUiAsync` methods now accept optional `CancellationToken` parameter
23
+
- Updated the README with a complete information of the project
24
+
25
+
**Fixed**:
26
+
-**CRITICAL**: Fixed `PresenterDelayerBase.CloseWithDelay` using wrong delay property (was using `OpenDelayInSeconds` instead of `CloseDelayInSeconds`)
27
+
-**CRITICAL**: Fixed `AnimationDelayer` incorrect time unit conversion (removed `* 1000` multiplications)
28
+
-**CRITICAL**: Fixed `GetOrLoadUiAsync` returning null when loading new UI (now properly assigns return value)
29
+
-**CRITICAL**: Fixed `DelayUiPresenterData<T>` inheriting from wrong base class (now inherits from `UiPresenter<T>`)
30
+
- Fixed missing null checks in `AnimationDelayer` for animation clips
31
+
- Fixed exception handling in `UnloadUi` with proper `TryGetValue` checks
32
+
- Fixed exception handling in `RemoveUiSet` with proper `TryGetValue` checks
33
+
- Fixed redundant operations in `CloseAllUi` logic
A powerful and flexible UI management system for Unity that provides a robust abstraction layer for handling game UI with support for layers, async loading, and UI sets. This service streamlines UI development by managing the complete lifecycle of UI presenters, from loading and initialization to display and cleanup.
Copy file name to clipboardExpand all lines: package.json
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
"name": "com.gamelovers.uiservice",
3
3
"displayName": "UiService",
4
4
"author": "Miguel Tomas",
5
-
"version": "0.13.1",
5
+
"version": "1.0.0",
6
6
"unity": "6000.0",
7
7
"license": "MIT",
8
8
"description": "This package provides a service to help manage an Unity's, game UI.\nIt allows to open, close, load, unload and request any Ui Configured in the game.\nThe package provides a Ui Set that allows to group a set of Ui Presenters to help load, open and close multiple Uis at the same time.\n\nTo help configure the game's UI you need to create a UiConfigs Scriptable object by:\n- Right Click on the Project View > Create > ScriptableObjects > Configs > UiConfigs",
0 commit comments