Welcome to this test project!
The goal of this assignment is to evaluate how you approach the creation of Unity UI interfaces and the scalability of your implementation for future extensions by other team members.
Please before moving forward, fork this repo and proceed from there, you are expected to commit your changes there and share the repo when you are done.
For this task, you will design and implement a Settings Menu. The configuration and content of the settings menu should be controlled via Scriptable Objects.
The menu must include the following customizable features:
- Sound and SFX Volume Sliders.
- Int and Float Configuration Fields for the SFX functionality.
- A Toggle Option to disable the SFX button.
The settings widget should also have an effect on the game. For example, when you adjust the volume sliders, the game's audio should respond to those changes in real time.
Settings must persist when exiting and entering play mode.
Bonus points for keeping your code clean, organized, scalable, and adhering to the SOLID and KISS principles.
Bonus points for Animating the Settings widget when it opens.
Bonus points for adding Localization to every text and adding a Localization dropdown at the settings menu (english and spanish is enough)
Bonus points for adding a different settings tab with video settings (resolution, fps limit, etc)
There is no need to upgrade the visual quality of this project.
You can modify all of this project contents including the base scripts and scene.
You can also add any Unity package you desire, but its usage will be evaluated based on how it was used.
This project uses Unity 2022.3.24f1