Commit Graph

172 Commits

Author SHA1 Message Date
joe kirchoff
807f50b782 UnrealBuildTool: Update minimum clang to 16 in to match already enforced minimum from SDK config file
#rnx

[CL 33591573 by joe kirchoff in ue5-main branch]
2024-05-10 19:49:56 -04:00
chris kulla
a609f4caa8 Disable shader warnings as errors
These were not actually enabled at the moment as the cvar was also specified in ConsoleVariables.ini.

Comment the definition in ConsoleVariables.ini (the global default is already 0) which is more in line with how other variables are specified.

Remove the definition from the window ini file until we can resolve remaining issues with SM5 shaders.
#rnx

[CL 33499495 by chris kulla in ue5-main branch]
2024-05-07 18:22:54 -04:00
chris kulla
998ab85d43 Enable shader warnings as errors by default on Windows platforms
This only applies to global shaders for now and is done only for one platform to gauge the impact and minimize disruption for platforms which not everyone has installed or can test easily.

[CL 33306282 by chris kulla in ue5-main branch]
2024-04-29 13:30:10 -04:00
joe kirchoff
c47c46dcff Only ATL is needed, not MFC
#rnx

[CL 33211609 by joe kirchoff in ue5-main branch]
2024-04-24 16:15:20 -04:00
joe kirchoff
02dc2f38f8 Ban all 14.39.x toolchains due to codegen issue when compiling for AVX arch
#jira UE-213137
#rb danny.couture

[CL 33209982 by joe kirchoff in ue5-main branch]
2024-04-24 15:30:20 -04:00
joe kirchoff
1faf7bcd30 Add ATLMFC to suggested components
#rnx

[CL 33209119 by joe kirchoff in ue5-main branch]
2024-04-24 15:12:38 -04:00
Yuriy ODonnell
a0a0b78596 Allow UAV binding in Vertex Shaders in D3D11 and D3D12 RHIs
#jira none
#rb christopher.waters

[CL 33042755 by Yuriy ODonnell in ue5-main branch]
2024-04-17 14:06:14 -04:00
tiago costa
4b7fccdfac Enable r.RayTracing.EnableOnDemand by default on Windows.
[FYI] aleksander.netzel

[CL 32978039 by tiago costa in ue5-main branch]
2024-04-15 18:17:58 -04:00
joe kirchoff
86ec401ff5 Rollback preferred MSVC to 14.38
#rnx
#jira UE-210812

[CL 32674093 by joe kirchoff in ue5-main branch]
2024-04-02 14:02:01 -04:00
joe kirchoff
88811ab621 Fix or suppress Clang 18 issues, support Intel compiler 2024.1
#jira UE-210910
#rb christopher.waters

[CL 32618000 by joe kirchoff in ue5-main branch]
2024-03-29 13:13:48 -04:00
joe kirchoff
faebb95c91 Add msvc 14.39.x to preferred msvc toolchains
#jira UE-210669
#rb Josh.Adams

[CL 32547938 by joe kirchoff in ue5-main branch]
2024-03-27 12:48:51 -04:00
jeannoe morissette
c1689bc481 VulkanRHI: document the ini values necessary to enable experimental Vulkan ray tracing.
[CL 32547274 by jeannoe morissette in ue5-main branch]
2024-03-27 12:36:33 -04:00
ben hoffman
f94171a7dc Add WindowsApplication KBM hardware device definition. Move the XInput hardware defintiion out to its own plugin as it should be.
#rnx

#rb Phillip.Kavan

[CL 32507945 by ben hoffman in ue5-main branch]
2024-03-26 10:05:42 -04:00
kenzo terelst
a7e0d62c3d Enable PSO precaching for global compute shaders by default on Windows
[CL 32466188 by kenzo terelst in ue5-main branch]
2024-03-25 06:02:12 -04:00
joe kirchoff
6af42710c6 Disallow 14.39.33519 - 14.39.33522 toolchains
#rnx

[CL 32420339 by joe kirchoff in ue5-main branch]
2024-03-21 18:23:34 -04:00
calvin zheng
0126089bd4 Reorganize memory.MemoryPressureCriticalThresholdMB for memory pressure assessment
#rb Zousar.Shaker, Josh.Adams

[CL 32333617 by calvin zheng in ue5-main branch]
2024-03-19 14:33:18 -04:00
rune stubbe
79573f21b4 Enable r.Nanite.Streaming.ReservedResources on Windows
#rb yuriy.odonnell
[FYI] brian.karis, graham.wihlidal, jamie.hayes, ben.woodhouse

[CL 32297488 by rune stubbe in ue5-main branch]
2024-03-18 07:24:23 -04:00
jeremy moore
fc86b6e263 Enable Work Graph support in D3D12 SM6 now that we have updated DXC to support it.
#jira UE-206245
[FYI] graham.wihlidal

[CL 32259735 by jeremy moore in ue5-main branch]
2024-03-14 17:03:41 -04:00
jeremy moore
804418158d #jira UE-206245, UE-206247
Add basic DX12 Work Graph support.
For this first pass there is no exposed RHI functionality for directly dispatching a work graph. Instead shader bundles have been extended to support a work graph based implementation.
Nanite compute materials now can use work graph shader bundles on D3D12 when r.Nanite.AllowWorkGraphMaterials and r.Nanite.Bundle.Shading are both set. Both of these default to off at the moment.
Also DataDrivenPlatformInfo now expose bSupportsWorkGraphs. This is false everywhere, but will be enabled for D3D12_SM6 as soon as we have the latest DXC shader compiler with lib_6_8 support submitted.
#rb Kenzo.Terelst, Yuriy.ODonnell

[CL 32196717 by jeremy moore in ue5-main branch]
2024-03-12 18:42:09 -04:00
laura hermanns
29a6c72678 [Shaders] Move macro SUPPORTS_INDEPENDENT_SAMPLERS to DDSPI configuration.
While the mobile team wants to keep independent samples disbaled for PCD3D_ES3_1, it makes sense to move this as a platform dependent feature into the DDSPI configuration.

#rb brian.white, christopher.waters, Yuriy.ODonnell
[FYI] Dmitriy.Dyomin, Carl.Lloyd
#rnx

[CL 31764896 by laura hermanns in ue5-main branch]
2024-02-23 11:10:12 -05:00
joe kirchoff
78e0f030f2 UnrealBuildTool: Move recommended Visual Studio components to json sdk config
#rnx
#rb Josh.Adams

[CL 31667312 by joe kirchoff in ue5-main branch]
2024-02-20 20:27:45 -05:00
steve robb
8797380caa Reverting change to add MSVC 17.9 as a preferred toolchain.
[CL 31521874 by steve robb in ue5-main branch]
2024-02-15 11:28:56 -05:00
steve robb
0c6bbc6345 Support for MSVC 17.9.
#rb james.hopkin
#jira UE-206977

[CL 31516471 by steve robb in ue5-main branch]
2024-02-15 07:39:50 -05:00
josh adams
67d747d50a - Moved all versions from *SDK.Versions.cs files to *_SDK.json files
- Some static variables made it tricky, so added some support to make it simpler on users of the static variables
#rb David.Harvey

[CL 31431441 by josh adams in ue5-main branch]
2024-02-13 11:51:53 -05:00
christopher waters
565a78058a D3D12 Bindless Resources with CPU managed descriptor heap updates
- D3D12 PC Bindless needs descriptor heaps managed on the CPU; we cannot update them on the GPU timeline.
- Each context now has a FD3D12ContextBindlessState that contains the per-context GPU descriptor heap as well as descriptor rollbacks to apply to the heap before submission.
- We have to roll descriptors back to their values before the incoming view updates were applied so that we can leverage the CPU heap copy at all times. This isn't deferring the updates; it's storing the values before the updates and making sure the heap is used with those values.
- When a context encounters a draw/dispatch and there were any descriptor updates, the previously used heap is updated with the correct set of descriptors before a new heap is created for the subsequent draws/dispatches.

Additional changes
- Allowing RHIs to override FRHITextureReference for custom bindless implementations.
- Adding FRHIDescriptorAllocator::GetAllocatedRange to allow managers to find the smallest range of descriptors that need to be copied to new heaps.
- DescriptorCache now holds reference counted pointers to the bindless heaps to avoid potential use after free scenarios.
- Adding ED3D12DescriptorHeapFlags to mirror D3D12_DESCRIPTOR_HEAP_FLAGS while adding new flags.
- Adding ability to pool descriptor heaps to avoid high OS overhead when constantly allocating new ones.
- Pooling descriptor heaps required more descriptor heap managers to implement CleanupResources.

#jira UE-162014
#rb Luke.Thatcher

[CL 30183702 by christopher waters in ue5-main branch]
2023-12-07 12:30:21 -05:00