There are three parts to this change
1) Saving, loading, and deleting graphic presets
2) A new floater for advanced graphics preferences
3) A new control that causes avatars with draw weights over the specified value to render in a simplified fashion
Known issues, inherited from the base LL viewer:
In the graphics preference panel clicking on a dropdown and performing no other action causes the panel to be marked as "changed." Also, clicking on a round slider control and not moving it causes this to happen.
Part 1
Start the viewer
Push Ctrl-P and click on Graphics: three buttons "Load preset...", "Delete preset...", and "Save settings as a preset..." should be disabled.
Without closing preferences log in: a Known Issue is present which is not going to be fixed: these three buttons are still disabled
Close preferences
Open preferences
Click on the General tab
Close preferences
Mouse hover over the speaker icon in the top right, the the > icon, and finally over the new preset icon. Each pulldown should have its right edge almost abutting the right edge of the screen.
For a fresh install the only preset defined should be Default.
Click on the button Open Graphics Preferences: The preferences floater opens with the graphics tab selected and the pulldown closes.
A - Load Test
Move the Draw distance control to a new position
In the preset pulldown select Default: the Draw distance control returns to its previous position and the text for Preset in use changes to Default
Move the Draw distance control to a new position: the text for Preset in use changes to (none)
Note: This text will change to (none) after a preset has been loaded and any graphics setting is changed.
Click on the Load preset... button
Click on Cancel: the floater closes and nothing else happens
Click on the Load preset... button
Click on Ok: the Draw distance control returns to its previous position and the text for Preset in use changes to Default and the Load floater closes
Mouse hover over the pulldown: a green checkmark is next to the name of the preset you just loaded
B - Save test
Click on Save settings as a preset...
Click the Cancel button: the save floater closes
Change Draw distance
Click on Save settings as a preset...
Perform this step twice: First, overwrite the Default setting and verify (per part A) that you can load your change(s) and secondly, input a new preset name. This name should include spaces and foreign letter characters.
Verify that in the Load test the new name(s) appear correctly.
Once you have picked a name to save from the dropdown or entered text the Save button becomes enabled.
Note: picking an entry in the dropdown and then using the delete key to erase it leaves the Save button enabled.
C - Delete test
Click on Delete preset...
Click the Cancel button: the delete floater closes
Click on Delete preset...: note that the Default preset is not in this list
One at a time delete all the presets you have created
When you have deleted all the presets you have created the text Empty list appears in the combobox and the Delete button is disabled
D - Update test
Leave the delete floater open
Click on Load preset...; leave it open
Click on Save settings as a preset...
Save a new preset (input a new name): Empty list in the delete floater changes to the new name, the combobox in the Load floater will show the new name; the pulldown will show the new name
E - UI changes and dependencies
Move the Quality & speed slider to the middle so Atmospheric shaders and Advanced lightning model are both checked
Move the slider all the way to the left: both checkboxes become disabled and Advanced lighting model becomes greyed out
Click on Reset all to recommended settings: your settings are set to recommended values
Note: The Default preset can be modified
Note: The Default preset will start out with whatever settings you have things set to when you first start the test viewer.
F - Odd cases
1) Save a preset and then delete it: the text for Preset in use changes to (none)
2) In a file browser navigate to the folder where these presets are stored. They will be in the same directory tree where you find secondlife.log but under user_settings\presets\graphic
Manually delete a preset you have created
Open the Load floater and try to load it: nothing happens
Open the Delete floater, manually delete a preset, and try to delete it by picking its name in the combobox: a notification appears "Error deleting preset [name]"
Close the viewer
Manually delete the Default.xml preset
Start the viewer and log in: the Default preset has been recreated using your current settings
3) Load a preset
Log out
Log in
Open preferences: the Preset in use field should show what you had previously loaded
Mouse hover over the pulldown: the green checkmakr should should what you had previously loaded
G - Floater dependencies and buttons
1) Open the Load, Save, and Delete preset floaters
Click on the Ok button on the preferences floater: all four floaters close
2) Open the Load, Save, and Delete preset floaters
Click on the Cancel button on the preferences floater: all four floaters close
Part 2
Click on Advanced Settings...
A - Change, save, and load presets to make sure all these settings are being stored and loaded correctly
After you have loaded a preset manipulate each of the settings in turn, to verify that Preset in use changes from what you have previously loaded to (none)
Note: You will have to keep reloading a preset – use the pulldown to make this a speedy process
B - Move both floaters and close them
Reopen both floaters: they reopen in their previous positions
C - Perform a full regression test to verify that all dependencies still operate properly.
You will need to open this floater and check for disabled controls on some "weak" systems that do not support the more advanced graphics functions.
Note: The hardware floater has been eliminated; it has been merged into this new floater
Note: Some bugs were fixed where text that was supposed to be greyed out and wasn't is now correctly being greyed out
Note: Some controls are now sliders that used to be some other type of control
Note: The Impostors checkbox has been eliminated; this case is handled in Part 3.
Part 3
Open the Advanced settings floater
Move to a busy area, where there are many avatars
A - Move the Max. # of non-impostors slider all the way to the right: the text changes to No Limit and no impostors are displayed
Move the control slowly to the left: as you change this control from 65 to 1 you notice related changes to the avatars around you, with more and more of them becoming impostors
B - Test a Maximum complexity
Click on Advanced->Performance Tools->Show Draw Information for Avatars
Move the impostors control all the way to the right
Start with the Maximum complexity control all the way to the right: the text changes to No Limit
Slowly move it to the left: avatars whose draw value exceeds the setting of this control quickly change to render in a simplified format
When the control is all the way to the left, at 20,000, chances are very good that all avatars are being rendered in this simplified format
C - From a distance observe avatars as they teleport in
1) With Maximum complexity off
2) With the Maximum complexity set to a large enough value that they would never be rendered simplified
In these two cases arriving avatars should always render properly
3) With Maximum complexity set to a low value: an arriving avatar is quickly rendered simplified
D - Adjust Maximum complexity as well as the impostors control to see that both function together.
Test each control with the other one set to No Limit.
E - Buttons
1) Change the value of some setting and click on the Ok button: The advanced floater closes.
Reopen the advanced floater and verify that the change you just made is still in effect.
2) Change the value of some setting and click on the Cancel button: The advanced floater closes.
Reopen the advanced floater and verify that the change you just made has reverted to its original value.