Flexy.AssetRefs is a lightweight, open-source solution for loading assets on demand in Unity. It provides an efficient way to indirectly reference assets and scenes, offering a cleaner alternative to Unity Addressables. Designed for flexibility, it's easy to use from the prototyping stage and can be easily expanded to more complex systems later.
Key features include:
- Fast and efficient loading
- ECS-Compatible and customizable
- GDD Friendly, with asset references stored directly in GameDesignData
- Editor-Friendly, with seamless integration and minimal inspector clutter
- Production-Proven, used in released games since 2019
Flexy.AssetRefs is modular and simple to use, separating the reference system from complex asset bundles bundling and downloading. It's easily extendable, with asset loading methods implemented as C# extension methods, and the asset loader can be replaced with a custom implementation.
Already used in games like Sniper League, Animals Happy Run, Cyberstrike, and Combat Master, and in production on multiple platforms, including iOS, Android, Windows, Linux, and Mac.
Key technical details include:
- Ref is a struct with 2 fields: Hash128 & Int64
- C# Extensions based load methods
- AssetLoader interface is 5 virtual methods
- Sync loading and UniTask based async loading
- Native C# Nullability annotations
- C# 10
- Fast Enter Play Mode support
Flexy.AssetRefs: On-Demand Asset Loading for Unity - Asset Store





