   Restart needed after settings change in games
  Hi,Please bear with me a little, this might not be a silly question.I was wondering why exactly do some games need to be restartedafter the user makes some settings change. I mean, high profilegames like Doom 3, in teory and following Mr. Carmack'sidea about "1-2-3 steps and play the game", shouldn't inconveniencethe user that much.So, I smell something hidden in here, perhaps some optimisations madeat load-time? Like rearranging stuff to make better use of memory pages?What do you think?   
  which settings?   ;  You mean when you change resolution or somthing like that?I think it's because certian objects for the graphics API's are only created once and lots of other stuff can be dependant on it, so if you make a change that affects the base object, everything else that depended on it has to be recreated. Sorry for the lack of details, but that's the general idea, you break the foundations, you have to fix it all.   ;  Basically altering some settings requires reloading or recreating resources and objects.  You could write your game in such a way that this can be done without needing to restart everything but it's generally easier to just write a setting in the config file and then restart the entire thing.   ;Quote:Original post by MonderYou could write your game in such a way that this can be done without needing to restart everything but it's generally easier to just write a setting in the config file and then restart the entire thing.You could just force a restart, but it's sloppy. [razz] "You must restart before this will take effect" type options are just plain annoying.   ;  Indeed forcing a restart is sloppy, you should write your game in such a way that you can reload all resources, recreate all objects etc if needed without a restart and without interupting a game (as in the player won't have to start from their last save, or the beginning of the level or something if they change some settings).   ;  Well, look at the time it takes you to save your game, exit, restart and reload your game. Very little of that is double clicking the little icon. They could do that automatically for you but it is still going to take just as long. So what they have really done is give you the option of continuing to play with the option taking effect next time you start the game or spend the next several minutes waiting for the option to take effect.You seem to be thinking if you didn't have to restart it wouldn't take you 2-3 minutes and would instead be instant. If that's true then certainly they shouldn't force you to restart to have it take effect. If it takes 2-3 minutes either way then it makes little differance if they restart automatically for you or make you double click the little icon.   ;  It's not a case of speed, its a case of proffesionalism.Besides that, it can be much faster - quiting means that windows starts swapping itself back into ram again, only for it to have to swap back out again when you restart the game. Not everyone has a bajillion megs of ram.   ;  I was thinking that perhaps, just perhaps,there is a solid reason beyond the reinitialisationof certain objects. I mean, high profile gamesshould spare the user of the wasted time, if possible, isn't it?Something like loading separate executables after a major settings changelike the shadow type, or whether to use the true form option of the ATI boards.;  Think of a trivial example: say you change the colour depth from 32 to 16 bit. Every texture you have is probably going to be in the wrong format internally. If a game has a property page for its settings, I think it would be far easier for a developer just to have a change flag and then reload everything if anything is changed. I'd rather they spend their time on the gameplay than working out which settings require a full reload.And besides, it's not like you are changing the settings that often, maybe once or twice to fine tune the game and that's it. If you are doing it more than once per gaming session you might have a different problem entirely ;)   