Commit Graph

550 Commits

Author SHA1 Message Date
Chris Galvan f8ac3071a3 Merge pull request #6671 from tjmgd/bug-anim-lod-91
Fix: LOD stops animation
2022-01-24 13:26:03 -06:00
Chris Galvan 8d0dce2613 Merge pull request #7101 from siretty/fix_build_linux_clang_13
Fix Build on Linux with Clang 13 with Debug, Profile and Release Configuration
2022-01-24 12:24:33 -06:00
mrieggeramzn c7d1c4603f Removing lux core (whats left of it) (#7089)
* Removing lux core (whats left of it)

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* Removing files recommended by NLawson and EPapp

Signed-off-by: mrieggeramzn <mriegger@amazon.com>
2022-01-24 11:24:20 -06:00
Daniel Edwards 0a5f472f43 Clang 13: Fix build errors ...
... due to local variables only being written to (but never read).

Signed-off-by: Daniel Edwards <dev@danieledwards.de>
2022-01-23 22:29:03 +01:00
dmcdiarmid-ly 5ed7e91a62 Merge pull request #7022 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-17127
NumRaysPerProbe DiffuseProbeGrid setting
2022-01-20 16:14:53 -07:00
Steve Pham 59e43813f0 GCC Support for Linux
Updates and fixes to support GCC for Linux

Signed-off-by: Steve Pham <82231385+spham-amzn@users.noreply.github.com>

Co-authored-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2022-01-20 13:00:02 -08:00
dmcdiarmid-ly c27f73c66b Added a NumRaysPerProbe DiffuseProbeGrid setting
Added supervariants to the precompiled DiffuseProbeGrid shaders for the NumRaysPerProbe values

Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
2022-01-19 20:17:15 -07:00
T.J. McGrath-Daly 0f9741da95 Merge branch 'development' into bug-anim-lod-91 2022-01-19 09:50:15 +00:00
santorac 5b19de2876 Merge remote-tracking branch 'origin/development' into Atom/santorac/MaterialAssetDeferredBaking_Recovery2 2022-01-18 17:44:23 -08:00
santorac 45429872d6 Switched back to making MaterialAsset::GetPropertyValues automatically finalize the material asset. I realized that it's too burdensome to expect client code to call Finalize on the MaterialAsset; every code that calls GetPropertyValues would have to call Finalize(). Instead of using const_cast in GetPropertyValues like I was doing before, I just changed GetPropertyValues to be a non-const function. There were a few places in Decal code I had to update to pass non-const MaterialAsset pointers. This isn't ideal, but I think it's better than the alternatives.
Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2022-01-18 17:39:44 -08:00
Chris Galvan f2b1970e8f Merge pull request #6818 from windbagjacket/development
Adding ray tracing toggle to mesh component UI
2022-01-18 14:33:01 -06:00
santorac c5b128bec4 First pass at reworking and formalizing the way deferred material asset baking works. The feature basically works but needs more testing.
Before, the material builder was loading the MaterialTypeAsset and doing some processing with it, but was avoiding declaring job dependencies that would cause reprocessing lots of assets when a shader or .materialtype file changes. Reading the asset data isn't safe when not declaring a job dependency (or when declaring a weak job dependency like OrderOnce which is the case here). This caused to several known bugs.

The main change here is it no longer loads the MaterialTypeAsset at all; all other changes flow from there.

The biggest changes (when deferred material processing is enabled) are ...
1) MaterialSourceData no longer loads MaterialTypeAsset. All it really needs is to determine whether a string is an image file reference or an enum value, which is easy to do by just looking for the "." for the extension.
2) MaterialAssetCreator no longer produces a finalized material asset. It no longer uses MaterialAssetCreatorCommon because that only produces a non-finalized MaterialAsset, which has very different needs for the SetPropertyValue function. (We could consider merging MaterialAssetCreatorCommon into MaterialTypeAssetCreator since that's the only subclass at this point). And it doesn't do any validation against the properties layout since that can be done at runtime.
3) Moved processing of enum property values from MaterialSourceData to MaterialAsset::Finalize (this was the only thing being done in the builder that actually needed to read the material type asset data).

Also...
- Updated the MaterialAsset class mostly to clarify and formalize the two different modes it can be in: whether it is finalized or not.
- Merged the separate "IncludeMaterialPropertyNames" registry settings from MaterialConverterSystemComponent and MaterialBuilder into one "FinalizeMaterialAssets" setting used for both.
- Removed MaterialSourceData::ApplyVersionUpdates. Now the flow of data is the same regardless of whether the materials are finalized by the AP or at runtime. Version updates are always applied on the MaterialAsset.
- Added a validation check to MaterialTypeAssetCreator ensuring that once a property is renamed, the old name can never be used again for a new property. This assumption was already made previously, but not formalized, in that Material::FindPropertyIndex does not expect every caller to provide a version number for the material property name, also the material asset's list of raw property names was never versioned. The only way for this to be a safe assumption is to prevent reuse of old names.

Signed-off-by: santorac <55155825+santorac@users.noreply.github.com>
2022-01-18 10:29:36 -08:00
AMZN-byrcolin c778606c89 Templates restricted (#6498)
* Templates/Restricted upgrade/fixes:
Fixed template storage format: templates now only store true relative paths and no longer save "origin" paths and "optional" has been removed, it was never used.
Upgraded all templates to new standard
Template system now correctly handles child objects: Child objects no longer have to specify restricted they inherit from parent
Restricted now operates at the object level and makes no assumptions about parent
Restricted templates can now be combined and seperated on creation
ly_get_list_relative_filename has been deprecated for o3de_pal_dir
All Gems/Projects/Templates updated to use new code

Signed-off-by: byrcolin <byrcolin@amazon.com>
2022-01-14 10:27:20 -08:00
windbagjacket 7474c5480e Adding ray tracing toggle to behavior context so it can be used with scripting.
Signed-off-by: windbagjacket <nibor@ntlworld.com>
2022-01-14 17:07:13 +00:00
sphrose 0e0ca7585c change default input color space to SRGB
Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2022-01-11 11:32:17 +00:00
dmcdiarmid-ly a365e15729 Merge pull request #6717 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-16989
Improved DiffuseProbeGrid blending
2022-01-06 16:30:21 -07:00
dmcdiarmid-ly 23293a13c1 Improved DiffuseProbeGrid blending around the edges of the volume
Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
2022-01-05 21:51:42 -07:00
rgba16f 641037e30c Revert "added pass class (#6244)"
This reverts commit 515e363151.

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
2022-01-04 15:40:55 -06:00
mrieggeramzn 03f6ba55fd Adding cascade blending for pcf (#6181)
* Adding cascade blending for pcf

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* tabs to spaces

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* tabs to spaces

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* tabs 2 spaces

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* Feedback using min3

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* Only enable flag if > 1 cascade

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* no blending if last cascade

Signed-off-by: mrieggeramzn <mriegger@amazon.com>

* Remove unused

Signed-off-by: mrieggeramzn <mriegger@amazon.com>
2022-01-04 11:29:34 -05:00
T.J. McGrath-Daly 6643b4b53c Fix: LOD stops animation
Signed-off-by: T.J. McGrath-Daly <tj.mcgrath.daly@huawei.com>
2022-01-04 15:45:38 +00:00
amzn-sj 1d819e2591 Fix crash caused by trying to dereference a nullptr
Early return if input attachment is null (#6590)

Signed-off-by: amzn-sj <srikkant@amazon.com>
2022-01-03 11:50:49 -08:00
Ken Pruiksma 2f1346c719 Terrain Feature Processor separated into several classes. Macro materials abstracted from meshes. (#6350)
* Breaking up terrain FP wip - macro materials decoupled from meshes. Mesh creation and rendering pulled out from MeshFeatureProcessor into TerrainMeshManager. Stubs added for macro and detail material managers.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Separated macro material management from the terrain feature processor. Also separated bindless image array handling from terrain feature processor.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Detail materials separated from terrain feature processor. Also pulled out Aabb2i and Vector2i into their own simple classes

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Changed some classes so that when the SRG changes the classes don't need to be completely reinitialized and can instead just update their indices and push data to the new srg. Fixed an issue where MacroMaterialData wasn't being exposed to ScriptCanvas. Terrain shader reloads should now work correctly. Also added some debug logging to help catch an issue where sometimes detail materials don't seem to load.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Terrain PR reveiw updates

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Some small PR review fixes. More comments in TerrainDetailMaterialManager.h

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixing unused variable causing clang failure

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixing unused variable in release.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixing a forward declare that oddly didn't work on linux.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixing linux missing include... not sure why only linux failed on this.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Adding missing include

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
2021-12-29 16:38:28 -06:00
tjmgd 515e363151 added pass class (#6244)
Signed-off-by: T.J. McGrath-Daly <tj.mcgrath.daly@huawei.com>
2021-12-22 11:50:14 -08:00
Esteban Papp 74f0cb5b98 Removes LuxCore (#6491)
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-12-22 09:06:28 -08:00
bosnichd d5b9cf10cf Collection of miscellaneous PAL changes required for restricted platforms. (#6482)
Signed-off-by: bosnichd <bosnichd@amazon.com>
2021-12-20 08:15:10 -07:00
dmcdiarmid-ly a08881cdf8 Merge branch 'development' into Atom/dmcdiar/ATOM-16956 2021-12-16 13:27:27 -07:00
antonmic ad5f3f0e53 Merge pull request #6439 from aws-lumberyard-dev/Atom/antonmic/ClearPass
Atom/antonmic/clear pass
2021-12-16 12:12:36 -08:00
dmcdiarmid-ly a1be8f832e Build BLAS objects from the BLAS instance list instead of the mesh list
Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
2021-12-15 19:38:39 -07:00
antonmic 0a8ba35738 Added ClearPass and automatic instantiation from ParentPass for slots specifying a clear action
Signed-off-by: antonmic <56370189+antonmic@users.noreply.github.com>
2021-12-15 18:32:59 -08:00
dmcdiarmid-ly 797af76f0e Minor changes to DiffuseProbeGridDownsamplePass
Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
2021-12-15 12:08:11 -07:00
dmcdiarmid-ly 087081f449 Added DiffuseProbeGridDownsamplePass, which will disable when there are no DiffuseProbeGrids in the scene.
Moved the IrradianceImage to the DiffuseGlobalIllumination parent pass.

Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
2021-12-13 23:26:39 -07:00
rgba16f be0b034c43 Fix editor hang on level load (#6323)
Make View::SortFinalizedDrawLists use child jobs so they don't block the worker thread from doing other work while waiting.
Implement a TaskGraph version of the view draw list sort.
Fix a misc bug where the scene was waiting on a task graph event twice and so hanging.
Enable MeshFeatureProcessor::Simulate to be able to use jobs when no parent job is specified because the parent job is a task.

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
2021-12-10 15:03:06 -06:00
dmcdiarmid-ly c58a742296 Switched to a single merged ProbeData texture instead of separate textures for Relocation and Classification.
Switched to HDR irradiance.
SDK Update.
Fixed a Vulkan validation error on RayTracingSceneSrg::MeshInfo.
Improvements to DiffuseProbeGrid blending.

Signed-off-by: dmcdiarmid-ly <63674186+dmcdiarmid-ly@users.noreply.github.com>
2021-12-08 18:35:45 -07:00
Esteban Papp 5cca52e73c Merge branch 'development' into redcode/driller_removal
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Code/Framework/AzCore/AzCore/azcore_files.cmake
#	Gems/Atom/Feature/Common/Assets/Materials/Presets/MacBeth/15_red_sRGB.tif
2021-12-07 13:31:55 -08:00
rgba16f aad16acf1f Jobify the draw item list sort in View::FinalizeDrawLists (#6176)
Jobification of the sort saves 0.7ms/frame on the HighInstanceTest on my pc.
Make MeshFeatureProcessor update of the mesh cull bounds part of the job work rather than part of the simulate work. This saves 0.1ms/frame on the HighInstanceTest

Signed-off-by: rgba16f <82187279+rgba16f@users.noreply.github.com>
2021-12-07 10:44:12 -06:00
Esteban Papp bb685ee40b Merge branch 'development' into redcode/driller_removal
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-12-02 18:12:48 -08:00
Esteban Papp 0b9497cd45 Changes call from AZ_TRACE to AZ_PROFILE. AZ_TRACE uses a driller bus that is going to be removed
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-12-02 17:12:25 -08:00
bosnichd 7a0282a534 Fix debug ImGui asserts I introduced in [b2c13b2]. (#6104)
Also allow different D3D12_ROOT_SIGNATURE flags to be set for each platform.

Signed-off-by: bosnichd <bosnichd@amazon.com>
2021-12-02 14:17:12 -07:00
bosnichd b2c13b24ff Fix ImGui Gamepad Input (#6055)
This fixes gamepad input for both of our ImGui integrations (which should probably be combined at some point).

Signed-off-by: bosnichd <bosnichd@amazon.com>
2021-12-01 07:49:22 -07:00
moudgils 1294cd0d7f Various Vulkan fixes (#5880)
* Various Vulkan fixes
- Swapchain related fix for UI editor
  -  Object of type VkQueue is simultaneously used in the main thread and the queue thread. Pushed the swapchain invalidation to the presentation queue thread

- Added padding for DepthOfFieldData to ensure it is 16 byte aligned
- Added aspect flag for SMAAEdgeDetectionTemplate pass
- Reduced MaxUnboundedArrayDescriptors so that it is under the maxDescriptorSetSampledImages limit
- Added CopyRead flag for ReflectionScreenSpaceBlurPass related transient resources.

Signed-off-by: moudgils <47460854+moudgils@users.noreply.github.com>

* Missed file

Signed-off-by: moudgils <47460854+moudgils@users.noreply.github.com>
2021-11-29 13:33:48 -08:00
puvvadar 6eec6c8f8e Merge pull request #5752 from aws-lumberyard-dev/puvvadar/gitflow_211118_o3de
Merge stabilization/2110
2021-11-19 15:46:16 -08:00
Ken Pruiksma 8705b57f71 Adding unit tests for IndexedDataVector (#5724)
* Rename IndexedDataVectorTests -> MultiIndexedDataVectorTests

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Adding unit tests for IndexedDataVector. Updated fixture for MultiIndexedDataVector.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Fixed a bug in the test. Updated IndexedDataVector with more/better comments and removed a non-const function that wasn't necessary.

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>

* Further updates to some comments

Signed-off-by: Ken Pruiksma <pruiksma@amazon.com>
2021-11-19 12:08:35 -06:00
puvvadar 3e35640dc6 Merge commit '2321afecfba5c1d83158cc22f0da7f1285d2199c' into puvvadar/gitflow_211118_o3de 2021-11-19 09:16:26 -08:00
puvvadar 8b5a322d67 Merge commit '9cbd323a3b799c3cc7fb285a96ba7ed2cace896b' into puvvadar/gitflow_211118_o3de 2021-11-19 09:16:20 -08:00
puvvadar c677fbff18 Merge commit '12e3a652d72865cc4a70c54487f5424abf6c9b81' into puvvadar/gitflow_211118_o3de 2021-11-19 09:15:43 -08:00
dmcdiarmid-ly 2321afecfb Merge pull request #5760 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-16762
Fix for SSR initialization and visual quality improvements
2021-11-18 17:31:27 -07:00
antonmic cf4ef5e73b Addressed feedback from previous PR plus some cleanup
Signed-off-by: antonmic <56370189+antonmic@users.noreply.github.com>
2021-11-18 13:37:06 -08:00
dmcdiar 7f4ab7a1c2 Added a frame delay before activating SSR, several visual quality improvements
Signed-off-by: dmcdiar <dmcdiar@amazon.com>
2021-11-18 13:10:07 -07:00
antonmic 12e3a652d7 Merge pull request #5737 from aws-lumberyard-dev/Atom/antonmic/FixForCapsuleAuxGeom
Fixed capsule auxgeom draw for lights and other aux geom issues
2021-11-18 10:16:31 -08:00
puvvadar b37f75f060 Merge commit '713a3916f5c101c324f8e2f2e06b49bf521da783' into puvvadar/gitflow_211118_o3de 2021-11-18 09:42:23 -08:00