The code that actually calculates and runs each of these different effects is quite complex, and they all sit together in even more complex chains. Certain effects can only be calculated after others have been done, and so on.
When you fire up a game, it will *generally* only load the code for the effects it needs, and chain them together in the most efficient order, based on what you’ve got set in the settings. Having the ability to change which effects are loaded once they’re loaded, and which order they go in, isn’t a simple thing – so some game engines can’t do it.
Thus, if you go into the settings and change which effects you want, and the game’s underlying code isn’t smart enough, it’ll have to save those settings, and load itself fresh from the start. Other engines are more sophisticated, and the developers have taken the time to allow these chains to be modified after being loaded.