Decoupling & Utilities Framework
Documentation (English only): CHM - HTML/ZIP - PDF - DOCX
Buy: Unity Asset Store
The Decoupling & Utilities Framework is an extension for the Unity Game Engine.
It helps game programmers to focus on core game functionality instead of writing glue logic and boilerplate code.
Decoupling is the separation of code into logical units and the reduction of their dependencies to make it more maintainable, extensible, and portable as well as increase its conciseness and clarity.
This framework supports you with decoupling your game code by providing the following features:
- Dependency Injection (DI) and Inversion-of-Control (IoC)
- Service locator and Singleton management
- Module infrastructure
- Messaging system
- Job dispatching
Furthermore, this framework provides numerous utilities to save you the time of writing commonly used functionality.
Some of the more prominent utilities features are:
- LINQ replacement; AOT-compatible subset of LINQ with immediate execution
- Collection types; pools, priority queues, trees, etc.
- Collection extensions; for enumerables, collections, lists, etc.
- ThreadMover; allows switching between threads and dispatchers in a coroutine
- Hierarchical state machines
- Platform-independent file/directory path handling and manipulation
- INI file processing; reading, writing, in-memory representation, conversion to/from dictionaries
- Mathematical functions; running values, statistics, etc.
- Mathematical extensions; for numerical types such as int, float, double, etc.
- PID controllers
- Roman numbers
- String and text processing
- Unity object extensions