opencj-dev / server-gsc

OpenCJ serverside GSC files
GNU Affero General Public License v3.0
3 stars 1 forks source link

Graphics Menu Options - High Level View #208

Open fnkcj opened 1 year ago

fnkcj commented 1 year ago

We should have a comprehensive graphics menu with a lot of options. These options are in regards to visual non HUD-effects. HUD related 2D graphics options are in a separate HUD menu. I should say that the following breakdown of what the menu could be is a very long-term vision, and it's not likely that we can have everything I've pitched here in the first release. For the initial version the menu can be much more stripped back, but it should be built in such a way where it is easily expandable, so some of the features listed here won't be a total nightmare to add later on.

So, to start: Eventually, it would be great if we had 4 graphics presets such as these:

The player would select a graphics preset and then the individual settings would change below as he cycled through the presets. Once a desired preset is selected, the player could then enable/disable specific options within that preset. For the initial release I think it's fine if we only have the individual options, and even from those we don't need everything I've listed here.

We can discuss later which settings should belong to which preset, but ideally the most FPS heavy options that bring a relatively small amount of visual difference should be turned off first as you go down the quality level. The idea here is that a new player could easily boost FPS or increase visual quality with just a few clicks since not everyone is fully aware of what every graphic option does and how (if at all) it affects performance. Some people just directly resort to fullbright when experiencing performance problems, sacrificing a ton of visual quality when all that would have been enough was toggling effects off for example.

Many players also run very customized configs when it comes to graphics options, so would be great if you could save and load graphics presets you've created:

!graphicspreset save <name> !graphicspreset load <name> (Maybe some buttons for the same actions in the graphics menu?)

Some settings should also have a Map option, because maps might either have a specific setting that has to be enabled for the map to look right and some other map might have a broken feature where enabling something could cause visual problems. Some examples:

Individual settings:

Yocairo commented 11 months ago

Need a(n initial) sketch for this @fnkcj