The OSK Framework is a modular, high-performance Unity framework designed to streamline game development. It provides a robust suite of tools to manage core game systems like events, pooling, sound, and UI, ensuring scalability and maintainability for professional projects.
Source Link: OSK Framework Core
- [Centralized Tick System]: High-performance replacement for Unity's
Update/FixedUpdateloops viaIUpdateableinterfaces. - [PoolManager]: Optimized O(1) object pooling with smart despawn (supports GO, Transform, and Components).
- [EventBusManager]: Decoupled event broadcasting and subscription system.
- [InputDeviceManager]: Unified input handling integrated into the centralized tick system.
- [SoundManager]: Comprehensive control for BGM, SFX, and audio events with SO-based configuration.
- [UIManager]: Advanced UI management with screen transitions, pooling, and auto-binding refs.
- [BlackboardManager]: Shared data storage for AI, state machines, and gameplay logic.
- [ProcedureManager]: Structured FSM-based workflow for game states and initialization.
- [ResourceManager]: Efficient loading, caching, and unloading of Unity assets.
- [DataManager]: Handles both runtime data and persistent encrypted storage.
- [LocalizationManager]: Robust multi-language support.
- [EntityManager]: Lightweight management for game entity lifecycles.
- [WebRequestManager]: Simplified HTTP request handling.
- [SheetDataManager]: Automatic loading of SO-based data sheets from Resources.
- [ObserverManager]: Traditional observer pattern for direct event communication.
- [CommandManager]: Supports the Command pattern for undo/redo and input recording.
- [DirectorManager]: Scene management and smooth transition control.
- Odin Inspector: [Required for Editor UI] (https://assetstore.unity.com/packages/tools/utilities/odin-inspector-and-serializer-89041)
- DoTween: [O-S-K Fork] (https://github.com/O-S-K/DOTween)
- Newtonsoft.json:
com.unity.nuget.newtonsoft-json - UniTask: [High-perf Async] (https://github.com/Cysharp/UniTask)
- Navigate to Window → OSK-Framework → CreateFramework to initialize the
Mainsingleton in your scene. - In the
MainInspector, go to Main Modules and activate the features your project needs. - Click the "Sync Modules (Hierarchy)" button to automatically generate and configure module GameObjects in your scene hierarchy.
- Use
IUpdateable: Instead ofvoid Update(), implementIUpdateableand register viaMain.RegisterTick(this). This avoids Unity's native message overhead. - Pooling: Use
Main.Pool.Spawn<T>()andMain.Pool.Despawn(this)for high-frequency objects to eliminate GC Alloc.
// Example Usage
Main.Pool.Spawn(prefab); // Pooling
Main.UI.Open<HomeView>(); // UI
Main.Sound.Play("Click"); // Sound
Main.Event.Publish(new ScoreChangedEvent()); // Events- Ultra-Fast: Designed for 60/120 FPS games with zero GC spikes in core loops.
- Modular: Only pay for the features you use.
- Workflow-First: Deep integration with Odin Inspector for a premium developer experience.
- Email: gamecoding1999@gmail.com
- Facebook: OSK Framework Community