Releases: JonasReich/OpenUnrealUtilities
v1.5.0
Supported Targets
Unreal Engine Versions: 5.7
Platforms: Win64, PS5, XSX, Linux
What's Changed
- Upgraded to support UE 5.7. The ue5.2 and ue5.3 branches still received 90% of the changes, but aren't supported anymore.
- Added a new editor utility to create "reference viewer" widgets to visualize simple parent/child node graphs with clickable nodes
- Added new asset validator that asserts assets don't have hard references to any assets marked as "NotHardReferencable"
- Added more sophisticated text handling functions that allow exporting and importing string tables to/from CSV
- Added ON_RECURSION_LIMIT_REACHED utility macro
- Added Blueprint support to Frame Scheduler
- Added level editor toolbar button for game entitlement selection
- Various bugfixes
Full Changelog: v1.4.0...v1.5.0
v1.4.0
Supported Targets
Unreal Engine Versions: 5.2, 5.3, 5.4
Platforms: Win64, PS5, Linux
What's Changed
General Code Changes
- Added support for UE 5.4
- Added dependency to MVVM plugin
- Turned on WarningsAsErrors policy
New Gameplay Tag Plugin Depdenency
All gameplay tag functionality was extracted into a separate OUUTags plugin. If you used gameplay tag functionality from this plugin, you will need to add an explicit dependency to that plugin module in the future. Redirects for all struct types were added, so migration should be as simple as updating this plugin and adding the tag plugin to your project.
Some of the functionality in this plugin still depends on those core tag extensions, so it is a new required dependency for all plugin users.
New Runtime Utilities
- Added localized text import from CSV for runtime localization text patching from CSV files. Recommended to be used in conjunction with GenerateTranslationCSV.py
- Added a generic scrolling credits widget and text parser
- Added synced game time actor e.g. for time-of-day implementation in multiplayer games
- Added game entitlements system to manage access to game features and content. This is not meant as a replacement for platform entitlements, but more geared towards versions updates / managing what is accessible in content updates, DLC, etc.
- Added console command
ouu.Slate.ApplicationScaleto allow quick and dirty testing of a different global Slate/UMG scale
Asset Validation
- Added global asset validator that checks for localized text in assets that are not linked from string tables (can be configured in project settings)
- Added ValidateAssetList commandlet as a tool for CI pipelines to validate core files or recent check-ins instead as an alternative to UE asset validation commandlet
Other Changes
- Added "scoped locks" to shared lock type for simplified locking code in C++
Full Changelog: v1.3.0...v1.4.0
v1.3.0
Supported Targets
Unreal Engine Versions: 5.2, 5.3
Platforms: Win64, PS5, Linux
What's Changed
General Code Changes
- Added support for Linux cross-compilation
- Added support for UE 5.3 and C++20
Gameplay Tags
- Implemented typed gameplay tag containers for blueprints in 7e2b1fb
- Added gameplay tag dependencies interface to propagate and track gameplay tags between objects in b44a6cc
Other New Utilities
- Added a first draft of a generic actor pool in 900367f
- Implemented first draft of multiplayer functional tests in 86780fc
Other Fixes
- Fixed the majority of static analysis issues reported by ReSharper for Unreal Engine
- Fixed all cook warnings caused by code or assets in this plugin
- Other miscellaneous fixes
Full Changelog: v1.2.1...v1.3.0
v1.2.1
Supported Targets
Unreal Engine Version: 5.2
Platforms: Win64, PS5
What's Changed
- Fixed compilation for PS5 Development Build Configuration
Full Changelog: v1.2.0...v1.2.1
v1.2.0
Supported Engine Versions
- 5.2
What's Changed
- Upgrade to UE 5.2
- Runtime
- Literal gameplay tags can now be extended from other modules
- Utility functions for gameplay tag manipulation in Blueprint
- Moved JSON serialization code to OUUJsonDataAssets (see below for more details)
- Editor
- Added an extensible validator for gameplay tags
- Improved configurability / extensibility of typed gameplay tags
- Added "simple class picker dialog" utility functions
- Other
- Added "ForEach (Set)" blueprint macro
- Added LatentAutomationPIEWorldLoader for launching PIE worlds in automation specs
- Various bug fixes
JSON Serialization & Data Assets
The ue5.2 branch was used for a while to develop functionality for JSON serializable data assets. This functionality was since moved to OUUJsonDataAssets, as a dedicated plugin.
I moved it out to its own plugin before this release, because it adds lots of complexity that not everyone will want, especially because it influences the behavior of the content browser, asset validation and cook and can't be fully de-activated.
Some related JSON serialization helpers were moved to that plugin as well.
Full Changelog: v1.1.0...v1.2.0
v1.1.0
Supported Engine Versions
- 5.0
What's Changed
- Editor Tools
- All Editor Utility Widget Blueprints are auto-discovered on Editor startup
- New Editor Widget (Blueprint): ValidationHUB
- New Editor Widget (Blueprint): Layout Cheat Sheet
- New Editor Widget (C++): Material Analyzer
- Actor Map is now registered as tab widget in developer tools (it can still be opened via console command in dev builds)
- Added OUUMapsToCook developer settings that expose UI for Unreal's cook map list via MapIniSections in DefaultEditor.ini
- Gameplay Debugger
- New base class for gameplay debugger extensions and categories for simplified key binding and debug drawing
- Improved animation gameplay debugger
- New "View Modes" gameplay debugger. Similar functionality to DebugCamera, but in the regular game camera.
- New shortcuts for selecting local player, closest NPC, other players in Gameplay Debugger
- Commandlets
- Added a world partition builder that allows exporting a maps Minimap to PNG files
- Miscalaneous
- New animation utility libraries
- New template: TScopedAssign allows a scoped assignment to fields and restoration of previous value
- Literal gameplay tags can now be linked to gameplay tag subclasses for blueprint exposed typesafe gameplay tags
- New Actor Action Utility that draws selected actor bounding boxes
- Exposed OUU log to Blueprint, so you can log with controlled verbosity as alternative to Blueprint print messages
- Maintenance
- Reorganized plugin editor Blueprints
- Consistent styling of parameter docs that ensures UE picks up more reflection information
New Contributors
- @freezernick made their first contribution in #3
Full Changelog: v1.0.0...v1.1.0
v1.0.0
This is the official 1.0 release of the Open Unreal Utilities plugin! 🥳
Supported Engine Versions
- 5.0
What's Changed
- Upgrade to UE 5.0
- Updated code for new engine API
- Deprecated all OUUUMG utilities besides the
UOUUWindowuser widget class.
Please use UE5's CommonUI plugin instead for managing widget layer stacks and input routing.
Check out Epic's LYRA sample project for reference.
- Runtime
- Added a string parser for gameplay tag queries - not very optimized, don't use at runtime (yet)
- Added a template for read-write-locked variables to simplify access management
- Added text library for dynamic list concatenation of FTexts
- Added macro that enables bitmask operator support
- Added Json library that allows serializing object properties from json
- Blueprint
- Added generic platform process library (allows launching external applications from Blueprint code)
- Added property path helpers to get and set arbitrary property values from strings
- Exposed object, class and property flags to Blueprint
- Added new flow control Blueprint macros (also available for AnimInstances now)
- Added clipboard library to read and write OS clipboard
- Debugging utilities
- Canvas graph plotting (used e.g. in sequential frame scheduler gameplay debugger)
- Added animation gameplay debugger
- Editor utilities
- Added some generic editor asset actions
- Added ouu.CompileAllBlueprints console command (same syntax as CompileAllBlueprints commandlet)
- Code style/quality
- Introduced clang-format file and unified/fixed formatting accordingly
- Renamed namespaces to comply with implicit UE5 naming conventions
- Other
- Added texel checker materials
- Added material functions for sRGB/linear conversion of entire vectors
- Various bug fixes
Contributions
Full Changelog: v0.8.0...v1.0.0
v0.8.0
Supported Engine Versions
- 4.26
- 4.27
What's Changed
- Upgrade to UE 4.27
- Added lexical operators for Blueprint
- Simplified message log functions and added UE_LOG-like macros
- Reworked bitmask utilty functions to work with both engine enums and custom enums that implement OUU bitmask traits
- Debugging tools
- Added gameplay debugger category type list which simplifies registering of debugger categories
- Added enhanced ability system gameplay debugger category
- Added actor map window
- Moved all debugging tools into new module OUUDeveloper
Full Changelog: v0.7.0...v0.8.0
v0.7.0
Supported UE Versions
- 4.26
What's Changed
- Added plugin logo (matching to Open Unreal Conventions)
- Improved clang compatibility for PS4/Linux targets (still not guaranteed to run on those platforms)
Full Changelog: v0.6.0...v0.7.0
v0.6.0
Supported UE Versions
- 4.26
What's Changed
- New Utilities: Spiral IDs, GarbageCollectionListener
- Various smaller bug fixes, improvements and cleanups
Full Changelog: v0.5.1...v0.6.0