# Material Preview ## Overview Material preview is a UI feature which displays a lit spherical preview of a PBR material. It can be found in the following UIs: - The material picker swatch - In the build floater, in the Texture tab, when applying a PBR material - (If the feature is enabled) In the Region/Estate floater, in the Terrain tab, when applying PBR materials to terrain - In the floater to select a material from inventory, which can be opened by clicking the material picker swatch ## Known Issues These are known issues that the current implementation of this feature does not address: - Material swatch preview is a preview of the base material ID only, and ignores other properties on the prim face like material overrides - Alpha mask previews as alpha blend - Double-sided previews as single-sided - Material swatch preview inherits some of its lighting from the current environment, and reflections from the default reflection probe ## General Regression Testing - Check that the material preview swatch looks OK with different materials selected - Check that the material preview swatch runs reasonably well on different systems, especially when the select material from inventory floater is also open - In particular: AMD, MacOS, minimum spec machines - Watch out for regressions in rendering caused by opening a floater with a material preview swatch ## Bug Fixes ### Disappearing Objects Fix Test This test is recommended for verifying that secondlife/viewer-issues#72 is fixed. #### Symptoms The following types of objects could randomly disappear until relog in the main view when the bug occured: - Objects - Water level in current region - Adjacent region/void water Note: Disappearing objects in reflections have a different root cause and are not covered by the fix. #### Bug Reproduction Steps Verify the disappearing objects bug does not reproduce, given the following steps: - Runtime prerequisites: Material preview swatch is enabled ("UIPreviewMaterial") by visiting a test region with the feature enabled, or by manually enabling "UIPreviewMaterial" in the advanced settings for the current session - Region prerequisites: Unknown, but a region with lots of stuff in it (like Rumpus Room 2048 on Aditi) seems to increase repro rate - Right click an object and select, "Edit item" - Go to texture tab, select PBR Metallic Roughness from dropdown, and click the button to select material from inventory - Ensure "Apply now" is checked in the inventory selection floater - Alternate between different materials from the inventory selection floater - Look around the world and check for permanently disappeared objects. ### Dynamic Exposure Influence Fix Test This test is recommended for verifying that secondlife/viewer-issues#72 is fixed. #### Symptoms Dynamic exposure in the world could be influenced by the material preview being displayed. If a material preview was being generated in a given frame, then, depending on the current environment, the user would observe an unpleasant flashing effect in the environment: - The world view could suddenly get darker and then fade back to normal exposure levels - The world view could suddenly get brighter and then fade back to normal exposure levels #### Bug Reproduction Steps Verify the dynamic exposure influence bug does not reproduce. Test using a few environment presets such as Default Midday, Sunset, and Midnight. - Right click an object and select, "Edit item" - Go to texture tab, select PBR Metallic Roughness from dropdown, and click the button to select material from inventory - Alternate between different materials from the inventory selection floater #### Regression Testing Dynamic exposure in the world should continue to work correctly. In particular: - Exposure should fade gradually from high exposure to low exposure and back as needed - Exposure should decrease in brighter environments - Exposure should increase in darker environments