Unreal-style Singletons with Subsystems
Subsystems are a simple way to make modular, globally-accessible logic.
Welcome! This is a place where I write down what I learn, as I make user interfaces in Unreal Engine 4. 🌱
Subsystems are a simple way to make modular, globally-accessible logic.
Some self-indulgence
Cheat your way to success!
How to use GAverageFPS, GAverageMS
Want to pause the game, reduce FPS, mute audio when the game window loses focus?
Use C++ and Blueprints to create a solid foundation for your game UI.
How can I make a button with a non-rectangular hitbox?
TOptional<T>
is my new favourite tool
For optional parameters, and explictly marking undefined state.
It’s so satisfying when all the lights turn green!
How to set up widgets attached to actors.
A introductory tutorial on how to set up UIs using C++ and Blueprints.
Design at lowest resolution, scale with DPI Scaling and Custom Application Scaling
How to get help, and help yourself
Data Tables, Data Assets and others
When “strawberrys” won’t cut it.
A completely subjective list of things that I do.
Animate UMG widgets from C++
Gotchas and surprises I encountered
Store localizable strings in a CSV file and use them in the editor and C++.
One way to set up threads in Unreal.
How to make variables editable or not based on other variables
tldr; Wrap them in backticks
Avoid casting with this one weird trick.
I see this one being asked quite often in the Unreal Slackers #ui chat.
Using SynchronizeProperties() to show changes to Blueprint properties in the editor.
How to apply material effects to a group of child widgets.
How to apply shader effects to your UIs.
How to control logic from C++ and configure visuals in Blueprints.
Make Unreal go fast brrm.
After you have mastered UserWidgets and UMG, let’s get down to the nitty-gritty.
Common pitfalls to avoid as you implement user interfaces in Unreal.
Create your own custom re-usable widgets in pure C++. No Blueprints required!
What’s the deal with Slate, UMG and Blueprints?
How to call UMG animations defined in Blueprints from C++.
Unreal-style lambda functions that can be passed around to functions.
In both C++ and Blueprints.
tldr; Multiple of 4 is probably good enough.
How to start making user interfaces in Unreal using UMG, Slate and C++
UMG offers support for crafting animations within the editor.
How to build user widgets base classes in C++.