Commit Graph

1278 Commits

Author SHA1 Message Date
Andriy Tylychko
ffb81c7e09 removed check(!IsInRHIThread()) as with "task retraction" globally enabled, the task that executes FRHICommandListBase::HandleRTThreadTaskCompletion is still "any thread" task but as RHIT waits for its completion, if the task hasn't started execution yet, RHIT can "retract" it and execute locally
#preflight trivial
#rb Zachary.Bethel

[CL 20361293 by Andriy Tylychko in ue5-main branch]
2022-05-25 04:14:02 -04:00
benjamin rouveyrol
7a21ea463f hdr multi window/display support
This improves how the editor deals with displays that have different capabilities (some with HDR, others without).
Centralize where the CVars are accessed
Have the swapchain created in SDR when shown on a SDR display
Make sure color gamut matches the one supported by the platform/swapchain.
Allow Movie scene capture to override the gamut/output format to keep existing behaviour (MovieSceneCapture relies on swapchain data)

#preflight 628baef5183c1e13462a504d
#jira UE-150952
#rb luke.thatcher

[CL 20347067 by benjamin rouveyrol in ue5-main branch]
2022-05-24 09:04:39 -04:00
zach bethel
b63add4854 Fixed incorrect resolve target state in RHI validation.
#preflight trivial

[CL 20341746 by zach bethel in ue5-main branch]
2022-05-23 19:46:45 -04:00
tiago costa
30c8264346 Implemented ShouldCompileRayTracingCallableShadersForProject(ShaderPlatform)
- added bSupportsRayTracingCallableShaders to DDPI.
- only Windows D3D12 RHI supports callable shaders at the moment.

#rb yuriy.odonnell
#preflight 628bb493693c5e1de282983f

[CL 20331097 by tiago costa in ue5-main branch]
2022-05-23 12:52:55 -04:00
Marc Audy
e5a303d119 Fix CIS issues
#codereview ahmed.rizwan, yujiang.wang, graham.wihlidal, Aidan.Possemiers, luke.thatcher, zach.bethel
#rnx
#preflight

[CL 20306971 by Marc Audy in ue5-main branch]
2022-05-20 20:25:42 -04:00
zach bethel
29d075c4c8 Deprecated GRHISupportsResolveCubemapFaces.
#preflight 62880985192a338d864ba496

[CL 20304268 by zach bethel in ue5-main branch]
2022-05-20 18:14:00 -04:00
zach bethel
c176b233da Renamed CopyTextureWithTransitions to TransitionAndCopyTexture.
#preflight 6287ddfe8828ea88c8701eea

[CL 20303093 by zach bethel in ue5-main branch]
2022-05-20 17:14:41 -04:00
Sebastien Hillaire
ff9a2e30f6 Strata - PDO now relies on in shader depth test to avoid UAV write or material data when the depth buffer does not match.
(we cannot rely on LateZ to cull UAV writes)

#rb luke.thatcher
#preflight 628797c78828ea88c85302dc
#fyi charles.derousiers

[CL 20301945 by Sebastien Hillaire in ue5-main branch]
2022-05-20 16:08:18 -04:00
christopher waters
8d8c05f497 Reworking shader platform settings on Windows to be per-RHI. This removes the ill-fated "min/max feature level" configs that were just causing confusion.
On Windows, "TargetedRHIs" is now split into "D3D11TargetedShaderFormats", "D3D12TargetedShaderFormats" and "VulkanTargetedShaderFormats". "TargetedRHIs" is still parsed for backwards compatibility.
Using this, projects can now be more easily configured for D3D12-only or even Vulkan-only.
Updated FShaderFormatsPropertyDetails to use FName instead of FString for shader platforms. Also added a filtering method for mixed RHI platforms like Windows.

#jira none
#rb mihnea.balta, josh.adams
#preflight 6287cbf46c7692ac8cc8805f

[CL 20300786 by christopher waters in ue5-main branch]
2022-05-20 15:09:09 -04:00
zach bethel
eb44e62e5a Fixed CIS build error.
#preflight trivial

[CL 20297130 by zach bethel in ue5-main branch]
2022-05-20 12:47:34 -04:00
zach bethel
82d63db23d Fixed dereference of deleted string pointer.
#jira UE-152955
#preflight none

[CL 20297092 by zach bethel in ue5-main branch]
2022-05-20 12:43:03 -04:00
zach bethel
04bdee2a04 Replaced cases where render target resolve path was being used as a simple copy with an explicit copy. Added checks to render target pass info to catch future cases in the constructor.
#preflight 6286d6b1cf5ac7317c49d195

[CL 20296148 by zach bethel in ue5-main branch]
2022-05-20 12:03:45 -04:00
tiago costa
e98ce47a3b Keep track of all callable shaders to build RTPSO
- GetRayTracingCallableLibrary() similar to how we handle hitgroups.
FindRayTracingCallableIndex(...) to query callable shader index in RTPSO.

#rb yuriy.odonnell
#preflight 628620c99016c6dd8974b510

[CL 20278150 by tiago costa in ue5-main branch]
2022-05-19 07:03:30 -04:00
aleksander netzel
ea75809cb8 Add per-pass traversal statistics for inline ray tracing for supporting platforms:
* Added RaytracingTraversalStatistics to create, capture and print TraceRayInline traversal statistics.
* In inline raytracing shaders you only need to call TraceRayInlineAccumulateStatistics() which will gather the results of the most recent TraceRayInline call.
* New debug visualization mode 'Traversal Statistics' that will print to the screen the traversal statistics for primary rays.

#rb Yuriy.Odonnell
#preflight 62860caa2b53e2be4c8ceee2

[CL 20277869 by aleksander netzel in ue5-main branch]
2022-05-19 06:05:59 -04:00
mihnea balta
f1720c3e70 Fix double transition when CopyTextureWithTransitions is called with the same source and destination.
#rb trivial
#rnx
#jira none
#preflight skip
#fyi Zach.Bethel

[CL 20277288 by mihnea balta in ue5-main branch]
2022-05-19 04:29:34 -04:00
zach bethel
53be0355a9 Deprecated CopyToResolveTarget method.
#rb luke.thatcher
#preflight 6285632d660b4a15be67ef57

[CL 20269210 by zach bethel in ue5-main branch]
2022-05-18 17:55:32 -04:00
zach bethel
f6311d1011 Cleaned up FRHIRenderPassInfo cruft and forwarded resolve operations through a common RHI core method.
#preflight 62842b5982530182724612f6

[CL 20262457 by zach bethel in ue5-main branch]
2022-05-18 12:29:26 -04:00
zach bethel
9e0d91e21c Fix for GPU readback copy not using resolve rect.
#preflight 6283eb1f486700b561a1156c

[CL 20262432 by zach bethel in ue5-main branch]
2022-05-18 12:28:12 -04:00
zach bethel
7ad46381c5 Removed default RHICopyTexture implementation that forwarded to RHICopyToResolveTarget.
#preflight 6283e36b4106f5854a6ac8ea

[CL 20262344 by zach bethel in ue5-main branch]
2022-05-18 12:22:46 -04:00
David Harvey
9cc4146fbc move HoloLens runtime source to platform extension folder.
#jira UE-149794
#rnx
#rb Jeff.Fisher
#preflight 6284cd49614041edb76395dc

[CL 20258963 by David Harvey in ue5-main branch]
2022-05-18 06:59:59 -04:00
tiago costa
2ae5099eac Support batching bindings for callable and miss shaders
- Not supporting r.D3D12.RayTracing.CacheShaderRecords at the moment.

#rb yuriy.odonnell
#preflight 6283ce61114e08fa2f235ae8

[CL 20247470 by tiago costa in ue5-main branch]
2022-05-17 14:08:53 -04:00
mihnea balta
f86407d48c Fix RHI validation errors caused by texture references not using the correct tracker info.
Texture references need to use the tracker info of the underlying texture object, not their own tracker info, as the local info is never filled in.

#jira none
#rnx
#preflight https://horde.devtools.epicgames.com/job/6283b32aba3597a030918cf5
#rb Luke.Thatcher

[CL 20244725 by mihnea balta in ue5-main branch]
2022-05-17 12:00:07 -04:00
mihnea balta
30f9b3eccf Fix RHICopyTexture validation when copying to/from non-zero mips.
#rb Luke.Thatcher
#rnx
#jira none
#preflight https://horde.devtools.epicgames.com/job/628383f80039ea57a538087c

[CL 20240736 by mihnea balta in ue5-main branch]
2022-05-17 07:30:10 -04:00
zach bethel
3cc87760bd Removed cases of AddCopyToResolveTargetPass which either weren't necessary or weren't performing multisample resolves.
#preflight 628270aa046b81bf93c13e50

[CL 20226032 by zach bethel in ue5-main branch]
2022-05-16 12:09:51 -04:00
zach bethel
379ccdd136 Added RHICopyTexture unit tests and fixed up inconsistencies / bugs.
- A zero size now uses the source texture size adjusted to the source mip.
 - Source / dest offsets and size now properly scale with each successive mip level.
 - Fixed bug in reflection capture GPU copy due to inconsistent behavior.
 - Deprecated GRHISupportsCopyToTextureMultipleMips which is now always true.

#rb brian.white
#preflight 627fc1af3339713c4a9800da

[CL 20224824 by zach bethel in ue5-main branch]
2022-05-16 11:11:35 -04:00