Commit Graph

18 Commits

Author SHA1 Message Date
eric mcdaniel
4d98aaa4fe Fix for potential deadlock in shader preloads
FPreloadShaderTask takes the ShaderPreloadLock in FShaderCodeArchive::OnShaderPreloadFinished() and then issues an async read.  Another task can be picked up by the thread while waiting on that read.  If that new task is also a FPreloadShaderTask it will try to aquire the ShaderPreloadLock again and deadlock.

Introduce an EnsureReadNonBlocking method to IMemoryReadStream which can be called outside the lock to ensure the data is ready.  We can then lock and copy out the data without incuring a wait and the potential for another FPreloadShaderTask being run while we hold the lock.

#rb Ben.Ingram, Michal.Valient

#ROBOMERGE-SOURCE: CL 16917416 via CL 16924675
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16925027 by eric mcdaniel in ue5-release-engine-test branch]
2021-07-22 11:57:21 -04:00
carlmagnus nordin
0293546296 Added support for storing shaders in iostore.
Opt-In with core setting AllowShadersInIoStore
#review-16450322

#ROBOMERGE-OWNER: carlmagnus.nordin
#ROBOMERGE-AUTHOR: carlmagnus.nordin
#ROBOMERGE-SOURCE: CL 16622428 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v830-16605563)
#ROBOMERGE-CONFLICT from-shelf

[CL 16622474 by carlmagnus nordin in ue5-release-engine-test branch]
2021-06-10 09:36:47 -04:00
christopher waters
83f70197d3 Tessellation Removal: Removing RHI Hull/Domain shader types and enums.
#rb lukas.hermanns
#jira UE-94564
#preflight 607f2e11eb4f050001d4655e

[CL 16066223 by christopher waters in ue5-main branch]
2021-04-20 17:00:25 -04:00
arciel rekman
93e19dd06e Fix crashes when dumping shaderlib debug info (UE-106302).
#rb none
#jira UE-106302
#rnx

#ROBOMERGE-SOURCE: CL 15890197 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15890468 by arciel rekman in ue5-main branch]
2021-04-01 12:16:46 -04:00
christopher waters
1d0b1d44eb Initial support for Mesh and Amplification Shaders. These new shader types are an optional feature of the RHIs and are only enabled on PC D3D12 with Feature Level SM6.
#jira none
#rb emil.persson, graham.wihlidal, lukas.hermanns

[CL 15742432 by christopher waters in ue5-main branch]
2021-03-18 18:42:49 -04:00
Arciel Rekman
d3250fc6f9 Make shader compression a project setting and move to SCWs (UE-73155).
#rb Jason.Nadro, Lukas.Hermanns
[at]Jason.Nadro, [at]Ben.Ingram, [at]Arne.Schober, [at]Rolando.Caloca, [at]Lukas.Hermanns, [at]Danny.Couture
#jira UE-73155
#preflight 604a640053f17f0001953558

#ROBOMERGE-OWNER: Arciel.Rekman
#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 15680314 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v781-15675533)
#ROBOMERGE-CONFLICT from-shelf

[CL 15683639 by Arciel Rekman in ue5-main branch]
2021-03-11 21:19:35 -04:00
Marc Audy
bc88b73a29 Merge Release-Engine-Staging to Main @ CL# 15151250
Represents UE4/Main @ 15133763

[CL 15158774 by Marc Audy in ue5-main branch]
2021-01-21 16:22:06 -04:00
Marc Audy
bf80889353 UE5/Release-Engine-Staging to UE5/Main
This represents UE4/Main up to CL# 14958402

[CL 15028197 by Marc Audy in ue5-main branch]
2021-01-08 19:56:07 -04:00
Marc Audy
ada7c144fa Merge //UE5/Release-Engine-Staging @14903491 to //UE5/Main
[CL 14906022 by Marc Audy in ue5-main branch]
2020-12-11 14:21:20 -04:00
Marc Audy
4c1bb11c29 Merge UE5/Release-Engine-Staging to UE5/Main @ 14548662
This represents UE4/Main @ 14525125 + cherrypicked fixes
#skipundocheck

[CL 14551026 by Marc Audy in ue5-main branch]
2020-10-22 19:19:16 -04:00
Michal Valient
95d19f95b1 [REVERB] Merging //UE4/Private-Reverb-Development@13832732
#rb graham.wihlidal, rune.stubbe, brian.karis, andrew.lauritzen, jeff.farris

[CL 13834854 by Michal Valient in ue5-main branch]
2020-07-06 18:58:26 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
yuriy odonnell
029d71eed6 Fixed a crash on startup when attempting to load a ray tracing shader while run-time RT support is compiled out.
#rb Luke.Thatcher
#jira none

#ROBOMERGE-SOURCE: CL 13008889 in //UE4/Release-4.25Plus/... via CL 13008895
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v682-12900288)

[CL 13008899 by yuriy odonnell in Main branch]
2020-04-23 12:55:20 -04:00
ben ingram
73961fa70d Updates to FileCache to work better with shader preloading
- FileCache can dynamically allocate/release memory as needed
- Preloaded lines are locked in the cache.  One the preloaded memory has been read, the line is unlocked.  This prevents preloaded lines from being evicted before they're needed.
- Cache line size changed from 64k to 16k, reduce fragmentation due to locked preloaded lines
#rb none

#ROBOMERGE-SOURCE: CL 12491121 via CL 12491126 via CL 12491130
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v673-12478461)

[CL 12491133 by ben ingram in Main branch]
2020-03-30 17:41:29 -04:00
ben ingram
4faa331af6 #jira UE-89879
Add extra logging to try to get more information about crash
#rb none

#ROBOMERGE-SOURCE: CL 11964426 in //UE4/Release-4.25/... via CL 11964431
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 11964452 by ben ingram in Main branch]
2020-03-05 16:37:51 -05:00
arciel rekman
65b2d3c88a Vulkan: prevent crash on exit due to SCL (UE-89478).
#rb Ben.Ingram
[FYI] Dmitriy.Dyomin
#jira UE-89478

#ROBOMERGE-SOURCE: CL 11619652 in //UE4/Release-4.25/... via CL 11619657
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11619677 by arciel rekman in Main branch]
2020-02-25 16:56:18 -05:00
Josh Adams
5032cf8753 - Fixed copyright notices
#rb trivial
#jira UE-88281

[CL 11291818 by Josh Adams in Main branch]
2020-02-07 11:01:05 -05:00
Josh Adams
aa9705149b Copying Private-LoadTimes-4.24 stream to Main. Biggest changes are in Materials/Shader memory freezing.
#rb none

[CL 11282608 by Josh Adams in Main branch]
2020-02-06 13:13:41 -05:00