Is there anyway to have an advanced graphics option in my game?

I’ve just started making the menus for my game, and I want to have advanced graphics settings in my game, I don’t like the idea of having the pre-set graphics option you get by default, because I don’t know exactly what changed between the settings, I like to have texture and model quality full, but anything post-processing off, but with Unity, I don’t see any option to do this in-game, only in the editor.

I want to give the players the option to manually change texture settings, anti-aliasing, or toggle fog on/off.

The solutions I’ve seen are the option to change between the pre-set graphics setting in code, I don’t even see a way to display what exactly changed in the settings.

So is there anyway I can have an “advanced graphics” option where players can edit everything to their liking?

1 Answer

1

You know you can set the individual quality settings directly, right?

I see most of the options I'm looking for, I don't see anyway to turn shadow off, though. Is there a way to that? Also, is there anyway to toggle a motion blur or bloom option?

You can toggle the scripts on the camera to disable/enable post effects. You can toggle shadows on lights individually.

Is there a way to access the camera's script, if for example, the player turns depth of field on, how can I have it apply to all cameras?

bool inWindow = false; Screen.SetResolution(newWidth, newHeight, inWindow); That's how to change resolution while the game is running. Camera.main.GetComponent(DepthOfField).enabled = true; That's how to turn on and off the DoF.

I take it it's a similar process with motion blur and bloom?