* The Build Time Stamp of ShaderAsset And
ShaderVariantAsset Should Be Based On
GetTimeUTCMilliSecond()
GetTimeNowMicroseconds() is useful to measure time stamp differences.
GetTimeUTCMilliSecond() is for time stamps based on absolute clock/wall time.
* Updated DiffuseGlobalIllumination precompiled shaders
Co-authored-by: dmcdiar <dmcdiar@amazon.com>
Signed-off-by: galibzon <66021303+galibzon@users.noreply.github.com>
* Add a default fallback image when a StreamingImageAsset fails to load
Signed-off-by: Tommy Walton <waltont@amazon.com>
* Don't release a missing/invalid texture reference in the skybox component. Hold on to the reference so that it can hot-reload
Signed-off-by: Tommy Walton <waltont@amazon.com>
* Don't release a missing/invalid texture reference in the ibl component. Hold on to the reference so that it can hot-reload
Signed-off-by: Tommy Walton <waltont@amazon.com>
* Use a different fallback image depending on the status of the asset. Including a setting to use a friendly image that is less obnoxious for anything that might have been missed in a release build
Signed-off-by: Tommy Walton <waltont@amazon.com>
* Adding the stubbed in fallback textures
Signed-off-by: Tommy Walton <waltont@amazon.com>
* Updated the seedlist for the RPI to include the fallback images. It only needs the default and the missing asset images, since the AP doesn't run in release builds, the asset status will always be unknown, not processing or failed to process, so if an asset is not bundled, it is just missing.
Signed-off-by: Tommy Walton <waltont@amazon.com>
* Switched to GetAssetIdByPath and removed some tabs
Signed-off-by: Tommy Walton <waltont@amazon.com>
* fix brute force mesh intersection function
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* add test for brute force ray intersection fix
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* refactor tests to remove as much duplication and provide API for future tests if required
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* small updates after review feedback
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* update following review feedback
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
* fix for pointer offset
Signed-off-by: Tom Hulton-Harrop <82228511+hultonha@users.noreply.github.com>
Material Editor also warns the user when saving a material that is populated with fallback image references.
Factored out the path strings for the default images to ImateSystemInterface.h.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
This RenderStates is used to override the values in the final draw packet, if the values are valid; it's supposed to be initialized to invalid values, but it wasn't. So the depth compare function was getting set to Less instead of GreaterEqual. This wasn't a problem when using serialized assets from disk, because the deserialization uses the default constructor which did initialize m_renderStatesOverlay. No all Item constructors initialize m_renderStatesOverlay.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
Signed-off-by: Guthrie Adams <guthadam@amazon.com>
* Shaders changes require two or more change cycles before updating
This fixes the problem described in the title.
Consolidated the responsibility to update the root shader variant
asset into the Shader() class. It was unnecessarily spread across
Shader(), ShaderVariant() and ShaderAsset().
In particular OnAssetReloaded now makes a temporary copy of the root
ShaderVariantAsset and updates the ShaderAsset with such reference
only when OnAssetReloaded() is called on behalf of the ShaderAsset.
Signed-off-by: galibzon <66021303+galibzon@users.noreply.github.com>
Made ShaderReloadDebugTracker store its static data in Environment system variables, so they are shared across dlls. This fixes issues with inconsistent indenting when debug operations are performed in different libraries.
New ShaderReloadDebugTracker operations in FullscreenTrianglePass.
Added a ShaderReloadDebugTracker message to Shader::GetVariant that includes asset built timestamp infromation, which I think will be really helpful in sorting out reload issues.
Renamed some functions and variables to remove a redundant "ShaderAsset" term.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
* Added some structs for detail materials
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Added some template functions for looking up materials. Added lookups for all the relevant detail material fields in StandardPBR.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Added some structs for detail materials
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Added some template functions for looking up materials. Added lookups for all the relevant detail material fields in StandardPBR.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Added support for generating a detail material texture with IDs populated from surface weights.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Updated TerrainAreaMaterailRequestBus to have separate calls for region vs materials instead of the awkward out parameter
Update MaterialPropertyDescriptor so that you can retrieve enum names by ID
Several bug fixes / updates to the terrain feature processor dealing with detail materials.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Updating detail material texture based on offsets. Not quite working yet but close. Added visualization for detail material in shader (currently on, will be turned off before final commit)
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Small bugfixes
* Fix compile error in non-unity builds
* Fixed backwards x/y loops causing the wrong pixels to update
* Fixed selection of surface type with multiple surface weights
Signed-off-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
* Adding seam to detail texture debug display. Offseting edges by a half-pixel to avoid bleed. Disabling debugging detail textures by default.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Missing file from last commit for detail material change.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Cleanups
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* bug fix
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Bug fix in the terrain fp for TerrainAreaMaterialRequestBus returning incomplete materials on GetSurfaceMaterialMappings
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Some PR updates. Exposing detail material id debugging through a cvar.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Various updates from review.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* PR updates dealing with debug texture boundary line.
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Hiding some fields from the terrain material
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
* Fixing type in generic lambda for linux / android
Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
Co-authored-by: Mike Balfour <82224783+mbalfour-amzn@users.noreply.github.com>
I added an ApplyPropertyRenames function to MaterialTypeAsset very similar to the one in MaterialTypeSourceData.
Updated the MaterialAssignment class to apply any property renames when it discovers the old name doesn't work. This will be written to disk when the level or prefab is saved.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
Also improved the MaterialAssetTests UpgradeMaterialAsset() to focus on testing the inputs and outputs of the class rather than the private internal data.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
Also rearranged some logic to simplify the code that loops over rename actions, avoiding making unnecessary additional maps.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
* adding Windows/release to PR-validation builds
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* changing trace back to expand to nothing for release
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* typo
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* more fixes
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* fixing some more unused variable cases
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* renaming file in ScriptCanvas that causes a msbuild warning
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* reverting a previous change
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>