You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Merge pull request #4102 from aws-lumberyard-dev/Atom/santorac/WarnOnMaterialPsoChanges These changes make material system report warnings when gameplay scripts attempt to change PSO-impacting material properties at runtime. So far the material system has always allowed any properties to be changed at runtime, including those that affect Pipeline State Objects (PSOs), as this is supported on several platforms. But some platforms require that Pipeline State Objects be pre-compiled and shipped with the game. At some point we will need to add new restrictions that limit what material properties can be changed at runtime. In the meantime, these warnings should alert users to avoid this, as the functionality likely won't be supported in the future. - Made the Material and LuaMaterialFunctor classes configurable to report errors or warnings when material properties modify Pipeline State Objects. This is controlled by a new "MaterialPropertyPsoHandling" enum. - Made the EditorMaterialComponent override PSO handling as Enabled, to prevent warnings when the user is editing material instance property overrides. This requried a new MaterialComponentNotificationBus bus message "OnMaterialInstanceCreated". - Added a new ScopedValue utility class that simply sets a value when it goes out of scope. - Removed unnecessary GetMaterialPropertyDependencies member from material functor context classes, as this is already available as part of the functor itself. - Made Material::SetPropertyValue return early when the property value hadn't actually changed. Besides being more efficientn, this prevents unnecessary spamming of the new warning. - Made a couple imporvements to material_find_overrides_demo.lua: - Made the target material slot name configurable through an exposed component property. - Fixed a timing issue where the assignmentId was invalid if FindMaterialAssignmentId is called too early. |
5 years ago | |
|---|---|---|
| .. | ||
| Animation | 5 years ago | |
| CoreLights | 5 years ago | |
| Decals | 5 years ago | |
| DiffuseGlobalIllumination | 5 years ago | |
| Grid | 5 years ago | |
| ImageBasedLights | 5 years ago | |
| Material | 5 years ago | |
| Mesh | 5 years ago | |
| OcclusionCullingPlane | 5 years ago | |
| Platform | 5 years ago | |
| PostProcess | 5 years ago | |
| ReflectionProbe | 5 years ago | |
| ScreenSpace | 5 years ago | |
| Scripting | 5 years ago | |
| SkinnedMesh | 5 years ago | |
| SkyBox | 5 years ago | |
| SurfaceData | 5 years ago | |
| Thumbnails | 5 years ago | |
| CommonFeaturesSystemComponent.cpp | 5 years ago | |
| CommonFeaturesSystemComponent.h | 5 years ago | |
| EditorCommonFeaturesSystemComponent.cpp | 5 years ago | |
| EditorCommonFeaturesSystemComponent.h | 5 years ago | |
| Module.cpp | 5 years ago | |