272 Commits

Author SHA1 Message Date
antonmic 6388277cd1 Fixed ImGui Pass as well as how exposure pass enables itself 2021-05-21 21:20:08 -07:00
jiaweig 13893e77f3 merge main 2021-05-21 13:08:10 -07:00
jiaweig c3794ca96c Addressed review comments. 2021-05-20 19:11:31 -07:00
Chris Santora 8799d1ab54 Merge branch 'main' into Atom/santorac/NewLayeringWorkflow 2021-05-20 09:07:08 -07:00
galibzon 256df54575 [ATOM-15276] Shader Build Pipeline: Add Shader Supervariant System (#749)
* [ATOM-15276] Shader Build Pipeline: Add Shader Supervariant System.

Added ShaderAssetBuilder2 & ShaderVariantAssetBuilder2.

Added ShaderAsset2, ShaderVariantAsset2.

Eventually they will be the only builders. AzslBuilder &
SrgLayoutBuilder will be removed.
ShaderResourceGroupAsset will be removed. ShaderAssetBuilder &
ShaderVariantAssetBuilder will be replaced.

Signed-off-by: garrieta <garrieta@amazon.com>
2021-05-20 04:53:16 -05:00
Chris Santora f3099aa7d5 Merge remote-tracking branch 'origin/main' into Atom/santorac/NewLayeringWorkflow 2021-05-19 16:57:49 -07:00
pruiksma 5802c4e1dc Merge branch 'main' into pruiksma/ATOM-15561 2021-05-19 14:26:30 -05:00
jiaweig 775b7d048b Add support for tangent stream pairing with the first UV from the model. 2021-05-19 00:36:24 -07:00
antonmic a4e1b40e88 Merge branch 'main' into Atom/antonmic/lowEnd 2021-05-18 13:04:25 -07:00
pruiksma dff3efbfca [ATOM-15561] Adding AZ_Error for unhandled pass binding failure case. 2021-05-18 14:01:18 -05:00
antonmic 242a10dd10 addressed PR feedback 2021-05-17 23:57:01 -07:00
Nicholas Van Sickle 46c0c35c26 Merge pull request #734 from aws-lumberyard-dev/nvsickle/DebugInfoDisplay
Restore debug rendering to the viewport
2021-05-14 15:20:05 -07:00
Vicky 1c575763c7 ATOM-4661 Improvement with pass templates registration from data (#735)
* ATOM-4661 Improvement with pass templates registration from data
- Update PassLibrary so it can load pass templates from more than one files and report duplicate pass templates.
- Added load templates events to pass system so the handlers from any gems can load their own pass templates.
- Added PassSystemInterface::OnReadyLoadTemplatesEvent::Handler in FeatureCommon gem's CommonSystemeComponet to load the PassTemplates.azasset in featureCommon gem.
- Misc: moved BindlessPrototypeSrg.asli from RPI to ASV project; fixed an assert issue when exit ASV
2021-05-14 13:45:26 -07:00
Chris Santora 37a1b77d50 Merge branch 'main' into Atom/santorac/NewLayeringWorkflow 2021-05-12 17:45:28 -07:00
Chris Santora 53188a12da Made StandardMultilayerPBR hide a layer's property groups when that layer is disabled.
ATOM-14688 Disable Individual Layers

- Added new SetMaterialPropertyGroupVisibility functions to the material functors.
- Updated the MaterialFunctor::EditorContext to include parameters for handling material property group metadata.
- Updated the material inspector(s) to apply the property group visiblity changes from the material functor, to hide or show the property groups.
- Moved some code from MaterialPropertyDescriptor.h/cpp to a new MaterialDynamicMetadata.h/cpp, since these aren't really related to the MaterialPropertyDescriptor code. It's more for material functors to use.
- Also fixed the casing for the "GetMaterialPropertyValue_Image" lua function, since I was already in this code (ATOM-14793 "Fix Inconsistent Casing For LuaMaterialFunctorRuntimeContext")

Tested in MaterialEditor and in in the main Editor's MaterialComponent property override inspector.
2021-05-12 17:06:57 -07:00
nvsickle 559798251d Merge remote-tracking branch 'upstream/main' into nvsickle/DebugInfoDisplay 2021-05-12 11:55:51 -07:00
Tom Hulton-Harrop f9fb61cc5d Fix issue with viewport interaction ordering and viewport matrix changed handler (#695)
* fix for ctrl+mouse-wheel to cycle transform modes in the viewport

* ensure correct callback function is invoked

* remove redundant check in CameraInput
2021-05-12 09:40:37 +01:00
dmcdiarmid-ly a0cb4714c0 Merge pull request #659 from aws-lumberyard-dev/Atom/dmcdiar/ATOM-15511
[ATOM-15511] Change AtomSampleViewer BindlessPrototype sample to use an unbounded array
2021-05-11 11:58:31 -07:00
Tom Hulton-Harrop b5e5a3bfee More camera fixes for the new CameraInput system (#667)
* use new ViewportContext interface to set camera transform on load

* WIP fixes for camera viewport handler callbacks

* disable synchonization with old camera when new camera system is enabled

* further updates to camera-input

* ensure event is signalled when camera transform is set

* updates to ModernViewportCameraController

* fix for right click menu appearing with camera

* updates following review feedback

* convert std:: usage to AZStd::
2021-05-11 13:38:09 +01:00
antonmic 8e4d0d73dc Good working state, but material always emmits low end draw item 2021-05-11 01:29:53 -07:00
Vicky 01b2798fe1 Integrate from 1.0 to main: LYN-3436 AutomatedTesting.GameLauncher crashes at launch if assets are not all processed (#612)
* Atom/qingtao/lyn 3436 (#558)

* LYN-3436 AutomatedTesting.GameLauncher crashes at launch if assets are not all processed

Change RPISystem so that the application would exit if the RPI system couldn't load critical assets.
Added code to avoid the GetLayout crash when layout for each platforms were not ready.
Added LoadCriticalAsset function to force compile and load critical assets.
Added default value to viewport size for ViewportContext.

* Change RPISystem asset initialization order so it returns earlier when those critical assets are not ready
2021-05-10 16:46:25 -07:00
nvsickle 64d53d1fab Fix View::GetCameraTransform 2021-05-10 15:53:11 -07:00
nvsickle dca2294b36 Move GetCameraTransform into RPI::View. 2021-05-10 15:08:47 -07:00
dmcdiar 1e860e7c82 Change BindlessPrototype to use an unbounded array 2021-05-08 19:56:40 -07:00
Vicky 1681e97a0c ATOM-15369 LYN-3352 Expose sorting paramers to DynamicDrawContext's draw functions (#451) (#463)
* ATOM-15369 Expose sorting paramers to DynamicDrawContext's draw functions
 LYN-3352 LyShine: First element in Hierarchy does not properly draw in UI Editor

Add function to DynamicDrawContext to support set sort key for followed draw calls.
Use different sort key for background draw and top layer draw in UI canvas.
2021-04-30 11:19:13 -07:00
AMZN-koppersr 5e4094b258 Revamped AzFramework::Scene (#332)
Updated AzFramework::Scene to allow it to serve as the one-stop location for localized singletons. Localized singletons in this case are instance that can only occur once in an environment but multiple times within an application. As an example, this allows settings up a single camera per viewport for instance.

Highlights of changes:

Replaced the original ebuses with interfaces and events for easy of use and performance.
Removed the Entity Context specific code and moved that to new locations within the Entity Context itself.
Allowed basic inheritance. If a subsystem isn't found in a scene the parent can optionally be searched.
Scenes can enter a zombie state and avoid immediately being deleted. This is needed for situations where subsystems can't be destroyed until async calls have been completed.
2021-04-29 08:50:48 -07:00
Mike Balfour 18c2069b64 Merge pull request #359 from aws-lumberyard-dev/mbalfour/misc-viewport-fixes
ViewportContext - fix ebus connections
2021-04-28 15:43:30 -05:00
Vicky e4509dbe68 Merge pull request #322 from aws-lumberyard-dev/Atom/qingtao/ATOM-6088
ATOM-6088 Unified approach to send draws to a single viewport

    Created a template class TagRegistery which implements the previous DrawListTagRegistry. The template is used for both DrawListTagRegistry and DrawFilterTagRegistry
    Added DrawFilterTag to DrawItemKeyPair
    Added DrawFilterMask support in DrawPacket and DrawPacketBuilder
    Added CreateDynamicContext for render pipeline which allows draw to selected render pipeline.
    Updated RasterPass's BuildCommandListInternal function to filter draw items for its owner RenderPipeline.
2021-04-27 14:34:27 -07:00
qingtao 60db6b55d0 Address feedback of PR for ATOM-6088.
* Rename DrawItemKeyPair to DrawItemProperties.
* Switch back to use Ptr<DrawListTagRegistry> instead of DrawListTagRegistry
* Updated some comment.
2021-04-27 13:26:43 -07:00
mbalfour 251929d071 Two misc bugfixes:
1) RayTracing will sometimes crash by dereferencing a null ptr.  This guards against it.
2) ViewportContext was missing some BusConnect / BusDisconnect calls.
2021-04-27 12:54:20 -05:00
qingtao 12f528d744 ATOM-6088 Unified approach to send draws to a single viewport
- Created a template class TagRegistery which implements the previous DrawListTagRegistry. The template is used for both DrawListTagRegistry and DrawFilterTagRegistry
- Added DrawFilterTag to DrawItemKeyPair
- Added DrawFilterMask support in DrawPacket and DrawPacketBuilder
- Added CreateDynamicContext for render pipeline which allows draw to selected render pipeline.
- Updated RasterPass's BuildCommandListInternal function to filter draw items for its owner RenderPipeline.
- Updated RHI unit tests.
2021-04-26 13:52:30 -07:00
Chris Burel 61fe298319 Merge pull request #197 from aws-lumberyard-dev/filesEndInNewlines
Add newlines to the end of all files
2021-04-23 12:11:40 -07:00
Chris Burel 28170ffe41 Add newlines to the end of all files 2021-04-23 09:43:40 -07:00
nvsickle 12468fd81a Fix spacing from merge 2021-04-23 02:08:50 -07:00
nvsickle f835372c0f Fix capitalization... 2021-04-23 00:27:39 -07:00
nvsickle 228fa7ff6b Fix search and replace fail 2021-04-23 00:27:37 -07:00
nvsickle e6cfe36a03 Fix typo 2021-04-23 00:27:34 -07:00
nvsickle 9e6244dc99 Fix game mode camera components not working in-Editor
Ensures RPI::View updates always make it back to the ViewportContext, even if you talk directly to the View
2021-04-23 00:26:53 -07:00
rgba16f ca1a684c95 Merge pull request #266 from aws-lumberyard-dev/FixGameLauncherConsole
Fix GameLauncher Imgui DebugConsole so that it renders
2021-04-22 23:40:13 -05:00
rgba16f 0bf7c29506 Fix GameLauncher Imgui DebugConsole so that it renders 2021-04-22 19:11:27 -05:00
greerdv 62a3b7635b Merge branch 'main' into non-uniform-scale-mesh 2021-04-21 10:56:36 +01:00
greerdv 496891b4c0 feedback from PR 2021-04-21 10:55:05 +01:00
Tommy Walton b95865b2d8 Simple Motion component doesn't animate actors (#179)
Buffers that have InputAssembly bind flags but also have ShaderRead flags should create buffer views
2021-04-21 08:37:51 +01:00
nvsickle ba5e0170a2 Fix ImGui rendering in-Editor
-Ensure ViewportContext rendertick notifications always fire
-Use viewport size to determine ImGui resolution, ensure OnViewportSizeChanged is always up-to-date for the default viewport context
2021-04-20 15:27:36 -07:00
greerdv fd8b42c45e Merge branch 'main' into non-uniform-scale-mesh 2021-04-20 10:29:55 +01:00
qingtao c9153b0353 ATOM-15272 Running game with Actor spams asserts in the log resulting in low framerate
The condition was setup wrongly when introducing DynamicInputAssembly.
2021-04-19 11:47:57 -07:00
greerdv e497b7ac33 Merge branch 'main' into non-uniform-scale-mesh 2021-04-19 11:05:10 +01:00
dmcdiar 46b9f1934d Removed commented line 2021-04-18 23:15:02 -07:00
dmcdiar 456bcb3bf9 Updated the EnvironmentCubeMapPipeline to match recent changes to the MainPipeline.
Set the multisample state on the EnvironmentCubeMapPipeline render settings.
2021-04-18 14:57:52 -07:00
hershey5045 8378f52ba6 Fix bug in ShaderVariantAssetBuilder. Add cvar in MeshDrawPacket class. (#61)
Fix bug in ShaderVariantAssetBuilder. Add a console variable to force root shader variant usage.
2021-04-16 12:06:05 -07:00