Colorblind settings
Captions
I could also show the controls
Brightness
Language
Could you see if people can make UI design for the Slider, Text Font, Button, and Drop Down? If not I can make something but I would rather have someone else do it that is helping with design so it can fit better.
thanks for your time
Hey, great project and idea to make this a community effort!
I would like to work on the Settings System. Are there any special plans on how it should work? Persistency over several sessions etc.
I can build a prototype UI to test the code. As for the persistency we could stick to PlayerPrefs for now or if you want we could use JSON serialization of a ScriptableObbject maybe.
My two cents is that this should actually be a separate GitHub project that is included via the Package Manager. That way anyone in the Unity community can easily use it.
Additionally, it would be smart to coordinate with the Saving / Loading system, especially if we were to use an external serialization solution such as Odin Serialization.
I think if the saving/loading system is using a generic JSON serializer that can serialize all classes we don’t need to think about saving/loading data in this settings system, you are right. It just would be to call the save/load methods from within the settings system.
As for the package manager idea, I think we should not make this too complex. If every feature would be a package it would be too hard to synch all systems together in my opinion.
Also, this settings system is nothing too complicated. It’s just a class that enables you to change the settings like resolution etc. (mentioned in the settings system card).
If this is going to be assigned to me, I’ll talk to the Saving/Loading system guy to make the save system a bit generic or I could tackle both in one go.
This is the official thread to discuss the Game Settings System (roadmap card).
Please start with simple implementations that generally stick to what the card on the roadmap is saying. There will be time to expand the functionality.
Hello, I want to join you and I have an idea to implement the architecture that “stivenUnity” referred to.
for example, a parent class that helps you to implement any settings later. I can commit diagrams if you start the Settings project.
Alright, folks. Here’s a list of what needs to be done taking what the roadmap card says:
Resolution (Drop down menu with a list of 16:9 aspect ratio resolutions)
Fullscreen toggle.
Shadow Quality
Anti-aliasing
Graphic settings preset (Drop down menu with Low, Mid, High)
Audio Volume (SFX and Music)
Language (We can have the placeholder and work on this later since it’s not priority right now.
Control Remapping Scheme (This is a whole new section that is related to this other roadmap card)
Save and Load Settings
In my opinion we could use player prefs to save the settings using JSON serialization to save the monobehaviour class. The control remapping scheme can be managed separately in its corresponding thread.
Are any of you working on doing something already? I think it would be better if we choose something small and start building from it, rather than try to do it all to prevent working double.
The only thing which blocks me from making a pull request atm is that unitys “SetQualityLevel” actually sets the quality level selected from the presets, but completely ignores all advanced graphics. This is nonsense as it has all presets configured inside the “Quality” project setting already.
Also calling QualitySettings.SetQualityLevel(index, true) with the second parameter set to true, which is used to apply expensive changes like anti-aliasing values, does not change said settings. It defaults them to 0, which seems to be a unity bug at this point.
I think I still will make a pull request and work on this later on to fix it. Maybe someone has an idea why it does not work as intended.