A production-ready, modular UI system using Unreal Engine 5's Common UI and C++. Designed with gamepad support, widget stacks, settings menus, and dynamic input remapping.
Table of Contents
This project was developed through a comprehensive course focused on building a fully modular, AAA-quality UI system using Unreal Engine 5’s Common UI framework and C++. It was structured with scalability, gamepad support, and real-world usability in mind.
We started by laying the UI foundation with a primary layout, gameplay-tagged widget stacks, and async widget loading. From there, we added a "Press Any Key" screen, a dynamic main menu, and a responsive options screen with multiple categories (audio, graphics, gameplay, input).
A custom Game User Settings system was created to persist player preferences, alongside a full input remapping feature using preprocessors. Finally, the project was wrapped with startup and in-game loading screens for a polished experience.
All systems are fully data-driven using Unreal's Data Registry system and designed with modularity and reuse in mind — perfect for Blueprint/C++ hybrid projects.
- 🎮 Modular UI framework using Common UI
- 🧩 Gameplay tag-driven widget stack management
- 🎛️ Dynamic Options Menu (Graphics, Audio, Gameplay, Input)
- 🔧 Input remapping system using Input Preprocessors
- 💾 Custom Game User Settings system with config persistence
- ⏳ Seamless startup & in-game loading screens
- 🧠 Data-driven UI with Data Registries and custom data objects
- 🕹️ Full gamepad navigation support
Copyright © 2025, Fillipe Romero. All rights reserved.
Assets rights are reserved to Vince Petrelli