Commit Graph

151 Commits

Author SHA1 Message Date
Esteban Papp 53dfb1a39e remove unnecessary ALIGN macros
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-08-20 20:36:11 -07:00
Esteban Papp cf6c7c4d8d some unused fixes
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-08-19 18:26:43 -07:00
Esteban Papp 2521ad2301 Merge branch 'development' into cmake/SPEC-2513_w4244
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Gems/Atom/RHI/DX12/Code/Source/RHI/Device.cpp
2021-08-19 10:12:22 -07:00
jiaweig 6766d10d1b ATOM-13883 [RHI][Core] - Moving RHI init settings to the new settings registry system (#3086)
* Moved PlatformLimits to setreg. Removed Device PostInit. Some clean up.

Signed-off-by: jiaweig <jiaweig@amazon.com>

* Move setreg loading the PlatformLimitsDescriptor super class.

Signed-off-by: jiaweig <jiaweig@amazon.com>

* Apply same implementation for fake device used in unit tests

Signed-off-by: jiaweig <jiaweig@amazon.com>

* Add implementation for Null renderer. Swap order for register RHI interface in initialization.

Signed-off-by: jiaweig <jiaweig@amazon.com>

* Move back setreg from PlatfromLimitsDescriptor to Device, due to Linux dependency issue.

Signed-off-by: jiaweig <jiaweig@amazon.com>

* Changed the function to take in RHI backend name

Signed-off-by: jiaweig <jiaweig@amazon.com>
2021-08-19 10:08:10 -07:00
Esteban Papp f8e99cd7dd Merge branch 'development' into cmake/SPEC-2513_w4244
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Code/Editor/CryEditDoc.cpp
#	Code/Framework/AzToolsFramework/AzToolsFramework/Input/QtEventToAzInputManager.cpp
#	Gems/Atom/Feature/Common/Code/Source/PostProcessing/BlendColorGradingLutsPass.cpp
#	Gems/PhysXDebug/Code/Source/SystemComponent.cpp
2021-08-19 08:53:41 -07:00
Jeremy Ong df9b4d4a2f Deprecate profiler categories based on global enum
(to be supplanted by registered budgets in the future)

Signed-off-by: Jeremy Ong <jcong@amazon.com>
2021-08-18 17:33:09 -06:00
pappeste dcab2751de Atom
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-08-16 16:39:57 -07:00
pappeste 38fd7f0013 fixing Atom
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-08-16 16:03:36 -07:00
AMZN-tpeng 288d366c2a [Atom][RHI][Vulkan][Android] - Add 2D image array null descriptors fo… (#2722)
* [Atom][RHI][Vulkan][Android] - Add 2D image array null descriptors for devices without the null descriptor extension.

Signed-off-by: Peng <tonypeng@amazon.com>

* [Atom][RHI][Vulkan][Android] - Fix spacing.

Signed-off-by: Peng <tonypeng@amazon.com>
2021-08-12 09:04:38 -07:00
dmcdiar 327477cace Merge branch 'development' into Atom/dmcdiar/ATOM-15995 2021-08-10 11:51:04 -07:00
dmcdiar a972cf6c96 Merge branch 'development' into Atom/dmcdiar/ATOM-15995 2021-08-04 16:58:16 -07:00
Esteban Papp b33a4db332 Merge branch 'development' into cmake/SPEC-2513_w4267 2021-08-02 18:03:04 -07:00
Steve Pham b46a80be2c Fix for Linux/Vulkan/Editor crash on startup
* Temporary fix for Linux/Vulkan/XCB where the swap chain is not ready to present until the resize is complete
* Fix invalid GUID from LinuxXcbConnectionManager

Signed-off-by: spham-amzn <spham@amazon.com>
2021-07-31 08:42:02 -07:00
pappeste 97f9ac870d Atom
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-27 19:29:20 -07:00
Steve Pham e81f59d1e1 Create XCB Connection mechanism for WSISurface implementation for Linux (#2400)
- Add new Linux Trait to determine which display driver client API to use (only xcb supported for now)
- Add support for xcb connections (initial) for Linux/Vulkan
- Fix minor assertion caused by wrong use of sizeof
- Fix casing issue in a couple of material files (Linux is case sensitive)
2021-07-26 13:41:28 -07:00
jiaweig 24db0c82eb fix the assert from incorrect size calculation (#2404)
Signed-off-by: jiaweig <jiaweig@amazon.com>
2021-07-26 10:17:35 -07:00
dmcdiar 9358428beb Added object release queue notification to the RHI Device and ObjectCollector.
Signed-off-by: dmcdiar <dmcdiar@amazon.com>
2021-07-25 22:39:22 -07:00
Steve Pham 4d5a985276 Enable AZSLc and Shader Compilation on Linux (#2338)
* Enable Shader Compilation support for Linux
* Add azslc package 3P definition for download
* Add AzslcGeader.azsli nad PlatformHeader.hlsli for Linux/Null and Linux/Vulkan (Copy of Android/Vulkan)
* Enable trait PAL_TRAIT_BUILD_ATOM_ASSET_SHADER_SUPPORTED for Linux
* Add platform builder file dependencies
* Updated AZ_TRAIT_ATOM_SHADERBUILDER_AZSLC to use new 3P linux version of azslc
* Add AtomShaderCapabilities.json, PlatformLimits.azasset for Linux (Copy from Android)
* Fix paths/values for Vulkan_Traits_Linux.h
* Enable trait PAL_TRAIT_BUILD_ATOM_ASSET_SHADER_SUPPORTED for Linux
* Enabled AZ_TRAIT_ATOM_VULKAN_LAYER_LUNARG_STD_VALIDATION_SUPPORT for Linux/Vulkan
* Added AzslcHeader.azsli, PlatformHeader.hlsli dependencies for Linux/Null and Linux/Vulkan in the platform builders for windows and mac for consistency

Signed-off-by: spham-amzn <spham@amazon.com>
2021-07-22 10:16:17 -07:00
Jacob Hilliard 5c0b6bf50f [GHI #2165] GPU Buffer/Image memory visualizer (#2242)
* GPU Memory: basic tree view of pools + heaps
* GPU Memory: pie charts of overall heap usage
* GPU Memory: Implement tabular view
* GPU Memory: final cleanup
* GPU Memory: use AZ_ENUM macro for string conversion

Signed-off-by: Jacob Hilliard <jhlliar@amazon.com>
2021-07-20 13:41:33 -07:00
AMZN-tpeng 216542c939 [ATOM][RHI][Vulkan][Android] - pick the correct share mode based on f… (#2166)
* [ATOM][RHI][Vulkan][Android] - pick the correct share mode based on flags and size of queue families

Signed-off-by: Peng <tonypeng@amazon.com>
2021-07-20 11:24:35 -07:00
Esteban Papp 0f019263b8 Fix for bad header after merge
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-16 17:54:56 -07:00
Esteban Papp 1f9b284de2 Merge branch 'development' into cmake/SPEC-7179
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Code/Editor/Plugins/ComponentEntityEditorPlugin/ComponentEntityEditorPlugin_precompiled.h
#	Code/Editor/Plugins/EditorCommon/EditorCommon_precompiled.h
#	Code/Editor/Plugins/EditorCommon/stdafx.cpp
#	Code/Editor/Plugins/FFMPEGPlugin/FFMPEGPlugin_precompiled.h
#	Code/Editor/Plugins/PerforcePlugin/PerforcePlugin_precompiled.h
#	Code/Editor/Plugins/ProjectSettingsTool/ProjectSettingsTool_precompiled.h
#	Code/Framework/AzToolsFramework/AzToolsFramework/AzToolsFramework_precompiled.h
#	Code/Tools/AssetProcessor/native/precompiled.h
#	Code/Tools/Standalone/StandaloneTools_precompiled.h
#	Gems/AssetMemoryAnalyzer/Code/Source/AssetMemoryAnalyzer_precompiled.h
#	Gems/Atom/Asset/ImageProcessingAtom/Code/Source/ImageProcessing_precompiled.h
#	Gems/Atom/RHI/DX12/Code/Source/RHI/Atom_RHI_DX12_precompiled.h
#	Gems/Atom/RHI/Metal/Code/Include/Platform/Mac/Atom_RHI_Metal_precompiled_Platform.h
#	Gems/Atom/RHI/Metal/Code/Include/Platform/iOS/Atom_RHI_Metal_precompiled_Platform.h
#	Gems/Atom/RHI/Metal/Code/Source/Atom_RHI_Metal_precompiled.h
#	Gems/Atom/RHI/Metal/Code/atom_rhi_metal_common_files.cmake
#	Gems/Atom/RHI/Null/Code/Source/Atom_RHI_Null_precompiled.h
#	Gems/Atom/RHI/Null/Code/atom_rhi_null_common_files.cmake
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Android/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Linux/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Mac/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Windows/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Source/Atom_RHI_Vulkan_precompiled.h
#	Gems/Atom/RHI/Vulkan/Code/Source/RHI/SwapChain.cpp
#	Gems/Atom/RHI/Vulkan/Code/atom_rhi_vulkan_common_files.cmake
#	Gems/AtomLyIntegration/AtomFont/Code/Include/AtomLyIntegration/AtomFont/AtomFont_precompiled.h
#	Gems/Blast/Code/Source/StdAfx.cpp
#	Gems/Camera/Code/Source/Camera_precompiled.h
#	Gems/EMotionFX/Code/Source/EMotionFX_precompiled.h
#	Gems/FastNoise/Code/Source/FastNoise_precompiled.h
#	Gems/Gestures/Code/Source/Gestures_precompiled.h
#	Gems/GradientSignal/Code/Source/GradientSignal_precompiled.h
#	Gems/GraphCanvas/Code/precompiled.h
#	Gems/ImGui/Code/Source/ImGui_precompiled.h
#	Gems/InAppPurchases/Code/Source/InAppPurchases_precompiled.h
#	Gems/LmbrCentral/Code/Source/LmbrCentral_precompiled.h
#	Gems/LmbrCentral/Code/Tests/ShapeGeometryUtilTest.cpp
#	Gems/LyShine/Code/Editor/UiCanvasEditor_precompiled.h
#	Gems/LyShine/Code/Source/Animation/LyShine_precompiled.h
#	Gems/LyShine/Code/Source/LyShine_precompiled.h
#	Gems/LyShineExamples/Code/Source/LyShineExamples_precompiled.h
#	Gems/Maestro/Code/Source/Cinematics/Maestro_precompiled.h
#	Gems/Maestro/Code/Source/Maestro_precompiled.h
#	Gems/MessagePopup/Code/Source/MessagePopup_precompiled.h
#	Gems/Metastream/Code/Source/Metastream_precompiled.h
#	Gems/Microphone/Code/Source/Microphone_precompiled.h
#	Gems/Multiplayer/Code/Source/Multiplayer_precompiled.h
#	Gems/PhysX/Code/NumericalMethods/Source/NumericalMethods_precompiled.h
#	Gems/PhysX/Code/Source/PhysXUnsupported_precompiled.h
#	Gems/PhysX/Code/Source/PhysX_precompiled.h
#	Gems/PhysX/Code/physx_unsupported_files.cmake
#	Gems/PhysXDebug/Code/Source/PhysXDebugUnsupported_precompiled.h
#	Gems/PhysXDebug/Code/Source/PhysXDebug_precompiled.h
#	Gems/ScriptCanvas/Code/Editor/precompiled.h
#	Gems/ScriptCanvas/Code/Source/precompiled.h
#	Gems/ScriptCanvasDeveloper/Code/Source/precompiled.h
#	Gems/ScriptCanvasPhysics/Code/Source/ScriptCanvasPhysics_precompiled.h
#	Gems/ScriptEvents/Code/Source/precompiled.h
#	Gems/ScriptEvents/Code/Tests/Editor/EditorTests.cpp
#	Gems/ScriptedEntityTweener/Code/Source/ScriptedEntityTweener_precompiled.h
#	Gems/SliceFavorites/Code/Source/SliceFavorites_precompiled.h
#	Gems/StartingPointCamera/Code/Source/StartingPointCamera_precompiled.h
#	Gems/StartingPointInput/Code/Source/StartingPointInput_precompiled.h
#	Gems/StartingPointMovement/Code/Source/StartingPointMovement_precompiled.h
#	Gems/SurfaceData/Code/Source/SurfaceData_precompiled.h
#	Gems/TextureAtlas/Code/Source/TextureAtlas_precompiled.h
#	Gems/TickBusOrderViewer/Code/Source/TickBusOrderViewer_precompiled.h
#	Gems/Twitch/Code/Source/Twitch_precompiled.h
#	Gems/VirtualGamepad/Code/Source/VirtualGamepad_precompiled.h
#	Gems/WhiteBox/Code/Source/WhiteBoxUnsupported_precompiled.h
#	Gems/WhiteBox/Code/Source/WhiteBox_precompiled.h
2021-07-16 15:42:37 -07:00
Steve Pham 38261d0800 Shorten copyright headers by splitting into 2 lines (#2213)
* Updated all copyright headers to split the longer original copyright line into 2 shorter lines

Signed-off-by: Steve Pham <spham@amazon.com>
2021-07-16 15:25:48 -07:00
Esteban Papp 83c5028af6 Fix windows release and a warning issued in Jenkins
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-16 14:24:55 -07:00
Fabio Anderegg 21cb3329fd atom: correctly initialize bufferDeviceAddressFeatures (#2211)
Signed-off-by: Fabio Anderegg <fabioa@kythera.ai>
2021-07-16 13:24:06 -07:00
jiaweig 57f5e6b2fb Apply maybe_unused to tracing only variable (#2217)
Signed-off-by: jiaweig <jiaweig@amazon.com>
2021-07-16 13:08:29 -07:00
Esteban Papp 074518454c Merge branch 'development' into cmake/SPEC-7179 2021-07-15 16:58:58 -07:00
AMZN-tpeng d6d644501a [ATOM][RHI][Vulkan][Android] - Fix sample count validation error for android. (#2145)
ATOM-15755

Signed-off-by: Tony Peng <tonypeng@amazon.com>
Signed-off-by: Peng <tonypeng@amazon.com>
2021-07-14 12:22:49 -05:00
Jeremy Ong 11327b59ea Expose vsync interval with new cvar rpi_vsync_interval and support Vulkan vsync (#2061)
* Expose vsync interval with new cvar rpi_vsync_interval

On change, the rpi_vsync_interval is broadcasted to a new event on
the WindowNotificationBus and all swapchains are recreated with the
new vsync value.

Signed-off-by: Jeremy Ong <jeremycong@gmail.com>

* Add vsync interval support to the Vulkan RHI

Vsync intervals are not intrinsically supported using the Vulkan
swapchain extension. Instead, extra presents are enqueued for each
extra vblank requested past 1. Swapchain recreation is triggered
when transitioning to and from the FIFO presentation mode (when
rpi_vsync_interval transitions from and to 0 respectively).

Signed-off-by: Jeremy Ong <jeremycong@gmail.com>

* Rollback vsync > 1 implementation on Vulkan and leverage *Internal pattern

Signed-off-by: Jeremy Ong <jeremycong@gmail.com>
2021-07-13 20:54:06 -07:00
Esteban Papp 37a17c8a3e Gems/Atom/RHI
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-13 19:11:07 -07:00
Esteban Papp f07d00df65 Atom/RHI/Vulkan
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-13 13:39:46 -07:00
jiaweig 18d490f059 SPEC-7601 windows monolithic_release_vs_2019 build failed (#1991)
* Ref assert only variable

Signed-off-by: jiaweig <jiaweig@amazon.com>

* Change to use macro instead

Signed-off-by: jiaweig <jiaweig@amazon.com>

* Change to use maybe_unused

Signed-off-by: jiaweig <jiaweig@amazon.com>
2021-07-08 16:46:11 -07:00
Chris Galvan d7574777a8 Resolved merge conflicts
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-07-02 12:42:44 -05:00
Steve Pham b4a2edec6a Final update copyright headers to reference license files at the repo root (#1693)
* Final update copyright headers to reference license files at the repo root

Signed-off-by: spham <spham@amazon.com>

* Fix copyright validator unit tests to support the stale O3DE header scenario

Signed-off-by: spham <spham@amazon.com>
2021-06-30 19:51:55 -07:00
Gene Walters 6fb2558e44 Merge branch 'upstream/development' into genewalt/gitflow_210628
Signed-off-by: Gene Walters <genewalt@amazon.com>
2021-06-29 15:40:46 -07:00
jiaweig 9a77eb2a53 Merge pull request #1542 from aws-lumberyard-dev/Atom/jiaweig/ValidationErrors1
ATOM-15744 ATOM-15745 [Atom][RHI][Vulkan][Android] Validation Error: Buffer usage flagFix validation errors
2021-06-28 17:37:07 -07:00
jiaweig d93e14d686 address comments 2021-06-25 14:17:17 -07:00
jiaweig a4a2b10dc6 Break long line 2021-06-23 17:40:27 -07:00
jiaweig f589ddef1e Fix validation errors 2021-06-23 17:26:52 -07:00
Steve Pham 70042fcdcd O3DE Copyright Updates for Linux Foundation (#1504) 2021-06-23 10:55:22 -07:00
Peng 2c7fc4e391 take out warning and un-used variable 2021-06-17 17:00:36 -07:00
Peng 609752b79e ATOM-15808 [RHI][Vulkan] Take out the early memory check exit to let the developers decide what to do if device memory is less than the requirement.
JIRA: https://jira.agscollab.com/browse/ATOM-15808
2021-06-17 14:55:13 -07:00
Peng 3ad141eb6a Merge branch 'stabilization/2106' of https://github.com/aws-lumberyard-dev/o3de into Atom/tonypeng/ATOM-15774 2021-06-11 17:15:05 -07:00
Peng 8089b6469b ATOM-15774 [RHI][Vulkan] Fix issue with null image that is released prior to creating image view.
JIRA: https://jira.agscollab.com/browse/ATOM-15774
2021-06-11 17:14:31 -07:00
moudgils f2db30c5d0 Merge pull request #1246 from aws-lumberyard-dev/UpdateIosPipeline
Fix many issues on Mac metal
2021-06-11 09:42:14 -07:00
moudgils 7dd98c4e2b Missed a change 2021-06-10 15:17:17 -07:00
moudgils c0cfe239fe Modify WritecolorMask 2021-06-10 15:03:08 -07:00
moudgils 963894c7e3 Modified the WriteColoorMask 2021-06-10 15:00:42 -07:00
moudgils b18b03b8fb Added comments and more format fixes 2021-06-10 14:40:52 -07:00
moudgils 5cf8d420ed Merge branch 'stabilization/2106' into UpdateIosPipeline 2021-06-08 22:47:47 -07:00