Commit Graph

18 Commits

Author SHA1 Message Date
yuriy odonnell
7f82e90db3 Add separate RHI capability properties for full ray tracing shaders and inline ray tracing. While most RHIs may support both features, some may only support one.
#preflight 619ce604f934c1a291f81cfe
#rb aleksander.netzel

#ROBOMERGE-AUTHOR: yuriy.odonnell
#ROBOMERGE-SOURCE: CL 18270186 in //UE5/Release-5.0/... via CL 18270194
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18270205 by yuriy odonnell in ue5-release-engine-test branch]
2021-11-23 10:25:31 -05:00
aurel cordonnier
69fe095547 Merge from Release-Engine-Staging @ 17636544 to Release-Engine-Test
This represents UE4/Main @17638339 and Dev-PerfTest @17636504

[CL 17638842 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-27 19:54:25 -04:00
christopher waters
1c21a5489c Shader symbol terminology changes
- Splitting symbol generation and shader "debug info" generation into two different cvars. This should now allow us to generate symbols post-packaging without generating different shader variants. This should also enable us to always generate symbols and still have the final deduplicated shader sizes.
- r.Shaders.Symbols is now the primary way to enable shader symbols for debugging.
- r.Shaders.GenerateSymbols can be enabled to always generate symbols without writing them to disk.
- r.Shaders.WriteSymbols can be used to force write symbols if they were previously generated.
- r.Shaders.ExtraData can be used to generate shader names for engine runtime systems to use.
- NotifyShaderCooked replaced with NotifyShaderCompiled, prep for upcoming non-cook symbol writing.
- PC DXC shader compiles should only generate debug info when requested, not all the time.
- PC FXC shader compiles should generate debug info when requested, not just when r.Shaders.Optimize is 0.

#jira none
#rb arciel.rekman, lukas.hermanns
#preflight 611ad9035e737200015992db

#ROBOMERGE-SOURCE: CL 17186155 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17186162 by christopher waters in ue5-release-engine-test branch]
2021-08-16 23:18:23 -04:00
ionut matasaru
74bf2e67b9 Fixed errors re format string / parameter list for various UE_LOGs:
- number of supplied parameters less or more than the number of specifiers used in format string
  - invalid format string specifiers used

#rb Matt.Peters

#ROBOMERGE-SOURCE: CL 16315056 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v804-16311228)

[CL 16315068 by ionut matasaru in ue5-release-engine-test branch]
2021-05-13 13:22:48 -04:00
Jason Nadro
789defec99 Fix memory leak of shader code during shader compilation (during cooks, deployments, or editor). Depending on settings and project this can save a considerable amount. For example, this saved ~39GB on the test project I was cooking.
- FShaderMapResourceCode derives from FThreadSafeRefCountedObject which has a member that keeps track of the number of references to the object.  We were doing deep copies using the Copy Constructor of FShaderMapResourceCode which resulted in a member wise copy of the num refs.  This is not the behavior you'd expect.
- The offending line of code that caused the memory leak was in FShaderMapBase::AssignCopy:
    - Code = new FShaderMapResourceCode(*Source.Code);
- Like FRefCountBase I've deleted the copy constructor and assignment operator for FRefCountedObject and FThreadSafeRefCountedObject to catch issues at compile time where we are copying across NumRefs incorrectly.
- To fix the issue I've manually created copy constructors for FGPUProfilerEventNodeStats and FShaderMapResourceCode.

#rb Devin.Doucette, Dave.Jones, Arciel.Rekman, Ben.Ingram
#review-16115628 @Devin.Doucette, @Dave.Jones, @Arciel.Rekman, @Ben.Ingram
#jira UE-108598, UE-113736

[CL 16116577 by Jason Nadro in ue5-main branch]
2021-04-26 14:03:07 -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
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
christopher waters
0082ff4b08 Fixing issues preventing previewing of lower shader models when launching with SM6.
#jira none
#rb zach.bethel, yuriy.odonnell

[CL 15682514 by christopher waters in ue5-main branch]
2021-03-11 19:26:01 -04:00
danny couture
0d5a80e2ee Another batch of meaningful Insight trace
#rb Francis.Hurteau

[CL 15178476 by danny couture in ue5-main branch]
2021-01-25 12:06:02 -04:00
Marc Audy
7379fa99c5 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14229157
[CL 14233282 by Marc Audy in ue5-main branch]
2020-09-01 14:07:48 -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
ben ingram
68fbb75271 #jira UE-92139
Fix issues causing material DDC values to be non-determinisic
- Shader code within resources sorted by hash
- Debug source code values sorted by type
Also add mechanism to serialize any MemoryLayout described type to string
- Makes it easier to inspect material data to find sources of non-determinism
#rb none

#ROBOMERGE-OWNER: ben.ingram
#ROBOMERGE-AUTHOR: ben.ingram
#ROBOMERGE-SOURCE: CL 12944988 in //UE4/Release-4.25/... via CL 12944998 via CL 12957822
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v682-12900288)

[CL 12957827 by ben ingram in Main branch]
2020-04-21 13:46:17 -04:00
ben ingram
6e9b509d08 #jira none
Fix generation of shader debug data
#rb none

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

[CL 11850701 by ben ingram in Main branch]
2020-03-02 21:52:09 -05:00
zabir hoque
fa6a81f114 Fix unity build break.
#rb: none
#jira: none

#ROBOMERGE-SOURCE: CL 11531896 in //UE4/Release-4.25/...
#ROBOMERGE-BOT: RELEASE (Release-4.25 -> Release-4.25Plus) (v654-11333218)

[CL 11531915 by zabir hoque in 4.25-Plus branch]
2020-02-18 19:11:42 -05:00
zabir hoque
74cc74f350 Fix another merge issue where previous change was dropped.
[FYI] Rolando.Caloca; Josh.Adams
#rb: none
#Jira: none

#ROBOMERGE-SOURCE: CL 11531721 in //UE4/Release-4.25/...
#ROBOMERGE-BOT: RELEASE (Release-4.25 -> Release-4.25Plus) (v654-11333218)

[CL 11531802 by zabir hoque in 4.25-Plus branch]
2020-02-18 19:10:35 -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