Nicholas Brown
Unity Developer
Dynamic UI Theme
I created an editor system that allows a developer or a user to easily change the colours and fonts of images and text elements via scriptable objects that hold the theme.
​
The Themes would use following settings, primary, secondary, tertiary, highlight primary, highlight secondary and disabled. These values could of course be changed in code for more or less flexibility.
A component must be added to each UI GameObject that you want to change with the theme, and then via an enum dropdown assign it to one of the settings listed above.
​
After all this has been set up designers can create different themes in the scriptable object and they are assigned to the controller script that then changes the UI elements.
​
The entire system has an editor window to help create new themes and edit existing ones. The system works both in editor and at runtime.
Animation & Fading

