question: Why do some video game and computer program graphical options have to be "applied" manually while others change the instant you change the setting?
comment: That mostly depends on game engine's source code. Some are good, some are not so. Usually, resources need reloading when settings changed, and sometimes API requires recreating all objects. Usually when game requires restart to apply some options, that's because game engine need all resources to be reloaded under new settings and it's easier to do it just by restarting than by actual reloading.
passages: Section::::Examples.:Television or computer monitor.
  
  A TV or computer monitor typically comes with a button to "restore factory presets". This allows the settings for brightness, contrast, color, etc., to be returned to the defaults recommended by the manufacturer. This button may be used when the settings get badly adjusted (say by a toddler playing with the controls). Some "fine-tuning" of the settings may still be needed from the factory settings, but they will likely be closer to the desired settings than random settings.
  
  Section::::In application software.
  
  Using a default involves two goals which sometimes conflict:
   The second problem is the sequencing problem. Some functionality of the system may only be accomplished with a sequence of GUI events. For example, to open a file a user may have to first click on the File Menu, then select the Open operation, use a dialog box to specify the file name, and focus the application on the newly opened window. Increasing the number of possible operations increases the sequencing problem exponentially. This can become a serious issue when the tester is creating test cases manually.
   Other autocomplete techniques exist. For example, using the Eclipse IDE to code in Java, a developer can just type in the first letter if lowercase and the uppercase letters from a type/variable name then press Ctrl+space to be offered all the choices that match the entered letters that are valid for the current context (class name, interface name, variable or field names). 
  
  Section::::Code snippet / Code templates.
   BULLET::::2. Consider how a display works without a hardware overlay. When each application draws to the screen, the operating system's graphical subsystem must constantly check to ensure that the objects being drawn appear on the appropriate location on the screen, and that they don't collide with overlapping and neighboring windows. The graphical subsystem must clip objects while they are being drawn when a collision occurs. This constant checking and clipping ensures that different applications can cooperate with one another in sharing a display, but also consumes a significant proportion of computing power.
   Another problem that is experienced is activation region usage. When using activation regions, other parts of a game will not function if the view is out of those activation regions these objects take place in, which can be a disadvantage for large levels without using complex scripts to "blend in" with these effects.
  
  Section::::System requirements.
  
  These requirements are for the Mac, Linux and Windows development environments.
  
  BULLET::::- Windows 95/98/ME/2000/2003/XP/Vista/7/8/8.1/10, Linux, Mac OS X 10.5
  
  BULLET::::- 200Mhz+ x86 (Pentium and above) or compatible processor
   private Game game;
  
  private StringRenderer renderer;
  
  @Given("a $width by $height game")
  
  public void theGameIsRunning(int width, int height) {
  
  @When("I toggle the cell at ($column, $row)")
  
  public void iToggleTheCellAt(int column, int row) {
  
  @Then("the grid should look like $grid")
  
  public void theGridShouldLookLike(String grid) {
   If in game play two cars crash, and there's a hintbox actor which comments in-game events, and we want the hintbox to say: "2 cars crashed" when they did, then we create an activation event one of the cars, and make the triggering event a collision with another car actor, and then set the activation event receiver to Hintbox, and finally, create an action for the activation event on hintbox, which is a Set Text, then we can specify the color, and font of the displayed text.
  
  Section::::File extension.
   BULLET::::- On OS X, moving a textured window with the mouse can be done from any location (not just the title bar), unless on that location there's a view which handles dragging events, like slider controls. If no such view (or superview) is there, dragging events are sent up the chain to the window which does handle the dragging event.
   Programs may access a Win32 console either via high-level functions (such as codice_1 and codice_2) or via low-level functions (e.g. codice_3 and codice_4). These high-level functions are more limited than a Win32 GUI; for instance it is not possible for a program to change the color palette, nor is it possible to modify the font used by the console using these functions.
   A simple way to do this is to let the author completely specify the dialog structure. For example, a specification of a tutorial dialog structure may look like:
  
  BULLET::::- Computer: "What forces act on the electron?"
  
  BULLET::::- Human: "Electric force".
  
  BULLET::::- Computer: "Correct"
  
  BULLET::::- [go to next question]
  
  BULLET::::- Computer: "What forces act on the mass?"
  
  BULLET::::- Human: "Electric force".
  
  BULLET::::- Computer: "Incorrect, the mass has no charge".
  
  BULLET::::- [go to a tutorial about electricity]
  
  The DM keeps a pointer to our current position in the script. The position is updated according to the human input.
   Themes are often used to change the look and feel of a wide range of things at once, which makes them much less granular than allowing the user to set each option individually. For example, you might want the window-borders from a particular theme, but installing it would also alter your desktop background.
  
  One method for dealing with this is to allow the user to select which parts of the theme they want to load; for example in Windows 98, you could load the background and screensaver from a theme, but leave your icons and sounds untouched.
  
  Section::::Themed systems.
   In general, good software design calls for dialogs to be of this type where possible, since they do not force the user into a particular mode of operation. An example might be a dialog of settings for the current document, e.g. the background and text colors. The user can continue adding text to the main window whatever color it is, but can change it at any time using the dialog. (This isn't meant to be an example of the "best" possible interface for this; often the same functionality may be accomplished by toolbar buttons on the application's main window.)
   The final result depends on how many applications are working with on screen colors. The foreground window is always favored, so windows at background may behave in different ways: from become corrupted to quickly redraw themselves. When the system palette changes, the system triggers a specific event to inform every application. When received, a window can quickly redraw itself using a single Win32 API function. But this must be doing explicitly in the program code; hence the fact that many programs lack in manage this event, and their windows become corrupt in this situation.
   GUIs can be made quite hard when dialogs are buried deep in a system, or moved about to different places during redesigns. Also, icons and dialog boxes are usually harder for users to script.
  
  WIMPs extensively use modes, as the meaning of all keys and clicks on specific positions on the screen are redefined all the time. Command line interfaces use modes only in limited forms, such as for current directory and environment variables.
   Section::::Features.:Non-actor objects.
  
  Game Editor also allows you to create Paths, and activation events. Paths are marked as nodes in Game Editor interface, and can specify a route the actor will move on. The speed of the path can also be modified, and the path can be made up of Bézier curves and linear lines too.
  
  Activation events are another important aspect. When one actor receives an event, then if there's an activation event on that actor for that event, then it triggers an activation event on the specified actor. Example:
   The following groups of controls are defined in the standard:
  
  BULLET::::- Factory Preset - commands for restoring factory defaults, as well as specifically restoring color, geometry, brightness/contrast, and TV settings defaults, and storing/restoring presets.
  
  BULLET::::- Color Adjustment - commands that control color temperature, hue, and saturation.
  
  BULLET::::- Geometry Adjustment - commands for adjusting CRT display geometry, such as parallelogram, pincushion, etc.
  
  BULLET::::- Image Adjustment - various general commands such as display orientation, degauss, gamma, zoom, focus, brightness/contrast, backlight control, etc.
  
  Three categories of controls exist: 
  
  BULLET::::- Continuous (C) - allow values between zero and a maximum value.
   Using capture/playback worked quite well in the CLI world but there are significant problems when one tries to implement it on a GUI-based system. The most obvious problem one finds is that the screen in a GUI system may look different while the state of the underlying system is the same, making automated validation extremely difficult. This is because a GUI allows graphical objects to vary in appearance and placement on the screen. Fonts may be different, window colors or sizes may vary but the system output is basically the same. This would be obvious to a user, but not obvious to an automated validation system.
   In contrast, other programming languages either: 1) require a programmer to expressly declare an entire variable structure before using or referring to any part of it; or 2) require a programmer to declare a part of a variable structure before referring to any part of it; or 3) create an assignment to a part of a variable before referring, assigning to or composing an expression that refers to any part of it.
   BULLET::::- $20 - Enable Display list.
  
  Playfield display requires that Display List DMA is enabled, and a Playfield width specified. If either value is zero, then no Playfield display is generated.
  
  Section::::Registers.:CHACTL $D401 Write.
  
  SHADOW: CHART $02F3
  
  Character Control
  
  CHACTL controls character display.
  
  Character control bit values do the following actions:
  
  The CHACTL Video Inverse and Video Blank bits affect the display of characters in ANTIC Text Modes 2 and 3 which have the high bit set (characters $80 through $FF). Toggling the values of the CHACTL bits allow blinking or blanking these characters globally for the entire display.
   Section::::Resolution.:Situations/issues of cause.
  
  Often there are significant time constraints out of the developer's control right from the beginning of their involvement in a project. Common issues that might lead to this anti-pattern as a result:
   Some graphics systems let the software perform its memory accesses so that they stay at the same time point relative to the display hardware's refresh cycle, known as raster interrupt or racing the beam. In this case, the software writes to the areas of the display that have just been updated, staying "just" behind the monitor's active refresh point. This allows for copy routines or rendering engines with less predictable throughput, as long as the rendering engine can "catch up" with the monitor's active refresh point when it falls behind.
   Section::::Registers.:Miscellaneous Player/Missile and GTIA Controls.:VDELAY $D01C Write.
  
  Vertical Delay P/M Graphics
  
  This register is used to provide single scan line movement when Double Line Player/Missile resolution is enabled in ANTIC's DMACTL register. This works by masking ANTIC DMA updates to the GRAF* registers on even scan lines, causing the graphics pattern to shift down one scan line.
  
  Since Single Line resolution requires ANTIC DMA updates on each scan line and VDELAY masks the updates on even scan lines, then this bit reduces Single line Player/Missile resolution to Double line.
  
  Section::::Registers.:Miscellaneous Player/Missile and GTIA Controls.:GRACTL $D01D Write.
  
  Graphics Control
   BULLET::::- Out of Vision
  
  BULLET::::- Timer
  
  And here is a list of actions you can select to be done on any of those events:
  
  BULLET::::- Change Animation
  
  BULLET::::- Change Animation Direction
  
  BULLET::::- Change Cursor
  
  BULLET::::- Change Parent
  
  BULLET::::- Change Path
  
  BULLET::::- Change Transparency
  
  BULLET::::- Change Z-Depth
  
  BULLET::::- Collision State
  
  BULLET::::- Conditional Action
  
  BULLET::::- Create Actor
  
  BULLET::::- Create Timer
  
  BULLET::::- Destroy Actor
  
  BULLET::::- Destroy Timer
  
  BULLET::::- Event Disable
  
  BULLET::::- Event Enable
  
  BULLET::::- Follow Mouse
  
  BULLET::::- Move To (path-finding included.)
  
  BULLET::::- Physical Response
  
  BULLET::::- Play Music
  
  BULLET::::- Play Sound
  
  BULLET::::- Script Editor
  
  BULLET::::- Set Text
  
  BULLET::::- To Anterior Position
  
  BULLET::::- Visible State
   BULLET::::2. A planning system pays attention to order. Often to test a certain function, the test case must be complex and follow a path through the GUI where the operations are performed in a specific order. When done manually, this can lead to errors and also can be quite difficult and time-consuming to do.
  
  BULLET::::3. Finally, and most importantly, a planning system is goal oriented. The tester is focusing test suite generation on what is most important, testing the functionality of the system.
   BULLET::::- United 123 on August 8 from Los Angeles
  
  BULLET::::- What is your departure city?
  
  BULLET::::- I told you, Los Angeles, on August 8
  
  BULLET::::- I'm sorry, I didn't understand. What is your departure city?
  
  BULLET::::- Los Angeles leaving August 8th.
  
  BULLET::::- What is the day of departure?
  
  BULLET::::- You don't listen! August 8!
  
  BULLET::::- Please say the day of departure?
  
  BULLET::::- August 8
  
  BULLET::::- Flight United 123 confirmed to depart Los Angeles for London at 2pm on August 8.
  
  The opposite of system-initiative is user-initiative, where the user takes lead, and the system respond to whatever the user directs.
  