Commit Graph

10655 Commits

Author SHA1 Message Date
serge bernier
621a24af3b -Change r.Shaders.ForceDXC cvar to a FShaderPlatformCachedIniValue to be able to read it per platform when cooking.
-Enable DXC shader compiler for console

#jira UE-80252
#rb [at]jason.nadro

[CL 28343345 by serge bernier in ue5-main branch]
2023-09-29 11:17:10 -04:00
aleksander netzel
c05ce7ab40 GPULM: Fix GPULM hit group shaders not compiling when Substrate is disabled.
#rb chris.kulla
#jira UE-196774

[CL 28343248 by aleksander netzel in ue5-main branch]
2023-09-29 11:11:02 -04:00
jeremy moore
8c351d1356 Enable ShaderPrint and GPUScene debugger on mobile renderer.
[CL 28341511 by jeremy moore in ue5-main branch]
2023-09-29 10:11:11 -04:00
graham wihlidal
30371764cf Refactored out CS materials into new NaniteShading .h/.cpp, and left old legacy code in NaniteMaterials .h/.cpp (to be removed later)
[FYI] brian.karis, rune.stubbe, jamie.hayes
#jira UE-187341

[CL 28336462 by graham wihlidal in ue5-main branch]
2023-09-29 00:35:47 -04:00
graham wihlidal
871e7cebda Refactored out depth/stencil/masking/custom depth/etc.. functionality into new NaniteComposition .h/.cpp
[FYI] rune.stubbe, brian.karis, jamie.hayes
#jira UE-187341

[CL 28336449 by graham wihlidal in ue5-main branch]
2023-09-29 00:35:11 -04:00
graham wihlidal
7d341bba30 Compile fix in LoadShadingPipelines
[CL 28336445 by graham wihlidal in ue5-main branch]
2023-09-29 00:35:04 -04:00
graham wihlidal
263e7929b2 Moved Nanite material visibility system into new NaniteVisibility .h/.cpp as part of ongoing cleanup, and also fixed shader reload crashing for CS materials in editor
#rb rune.stubbe
[FYI] brian.karis, jamie.hayes
#jira UE-187341

[CL 28336441 by graham wihlidal in ue5-main branch]
2023-09-29 00:34:59 -04:00
zach bethel
e6b20f9c77 Optimized cached shadow map size access (i.e. only iterate once through shadow linked list) and modified shadow render targets to take a non-immediate command list.
[CL 28324055 by zach bethel in ue5-main branch]
2023-09-28 14:11:06 -04:00
zach bethel
db3f576de1 Moved GPU scene to happen prior to GDME to increase overlap with visibility tasks.
[CL 28322728 by zach bethel in ue5-main branch]
2023-09-28 13:16:26 -04:00
zach bethel
1782bd5e03 MeshDrawCommands - cvar to set batch size for cached mesh draw commands processing
It allows to adjust dynamically work for static mesh batches based on requirements

#rb zach.bethel
#ushell-cherrypick of 28288972 by jaroslaw.bronisz

[CL 28322544 by zach bethel in ue5-main branch]
2023-09-28 13:11:49 -04:00
sebastien hillaire
3fb53f3dff Fixed mobile directional light selection to really be the first one in the list.
#rb none
#prelfight none

[CL 28321351 by sebastien hillaire in ue5-main branch]
2023-09-28 12:43:58 -04:00
tiago costa
7b6c125e5f Implemented cvars to override contact shadow parameters
- also fixing incorrect shadow length in standalone pass when it is specified in world space units

#rb kenzo.terelst

[CL 28317722 by tiago costa in ue5-main branch]
2023-09-28 10:22:32 -04:00
jamie hayes
5e78cade8e Fix a bug where Nanite materials would get mixed up when enabling/disabling sky lights in the scene.
#rb graham.wihlidal
#jira UE-193435

[CL 28316522 by jamie hayes in ue5-main branch]
2023-09-28 09:34:13 -04:00
graham wihlidal
ca5a52b62d Massive CPU optimizations to Nanite CS materials (add to scene, and also per-frame dispatch). Also includes optimizations to cache coherency, memory reductions, much more maintainable code, and also includes an important fix to hash the shader bindings (dynamic instancing hash) instead of explicitly hashing things like the FLightCacheInterface* and lighting policy. The previous logic would explode the # of shading bins (2-3x) when features like static lighting were enabled, even when most of the LCI's ended up pointing to the same light map resources/constants. This change also parallelizes the bulk of BuildShadingCommands, and removes the front loaded TPimplPtr from FNaniteShadingCommand and instead put it around the pass specific members to keep the important data on contiguous cache lines.
#rb rune.stubbe
[FYI] brian.karis, jamie.hayes, zach.bethel, luke.thatcher, ben.woodhouse
#jira UE-187341

[CL 28313537 by graham wihlidal in ue5-main branch]
2023-09-28 07:08:38 -04:00
krzysztof narkowicz
bcbac84c6b Lumen - filled CVar description for r.LumenScene.Lighting.ForceLightingUpdate
[CL 28313522 by krzysztof narkowicz in ue5-main branch]
2023-09-28 07:08:20 -04:00
sebastien hillaire
492410dc39 Added support for directional light in scattering for mobile volumetricfog.
#rb Florin.Pascu
#jira UE-196356

[CL 28313505 by sebastien hillaire in ue5-main branch]
2023-09-28 07:07:58 -04:00
sebastien hillaire
1b66608f1d LFV - using 4x3 matrices instead of 4x4 to read less data (reducing instance bytes from 176 to 144 bytes)
#rb none
#prelfight https://horde.devtools.epicgames.com/job/6513fbbb196f1bf3bc01e683

[CL 28313495 by sebastien hillaire in ue5-main branch]
2023-09-28 07:07:53 -04:00
charles derousiers
954e55f92c Fix missing SpecularProfile in Lumen reflection.
#rb none
[FYI] sebastien.hillare, krzysztof.narkowicz

[CL 28313479 by charles derousiers in ue5-main branch]
2023-09-28 07:07:40 -04:00
sebastien hillaire
1cd9811922 LFV - fixed LFV rendering in real time capture views when culling is not executed for each face/view. LFV are not in real time sky light capture for now.
#rb none
#prelfight none

[CL 28313468 by sebastien hillaire in ue5-main branch]
2023-09-28 07:07:31 -04:00
charles derousiers
0e56d714f7 Fix validation error when using Substrate and path tracer in the editor cased by unproduced resources.
#rb none
[FYI] sebastien.hillaire, chris.kulla

[CL 28313457 by charles derousiers in ue5-main branch]
2023-09-28 07:07:20 -04:00
Daniel Wright
52ace89a65 Revert back to no BRDF importance sampling for ScreenProbeGather Radiance Cache
[CL 28285535 by Daniel Wright in ue5-main branch]
2023-09-27 14:56:26 -04:00
tiago costa
b9259e7c77 Screen Space Shadows as a standalone pass.
- calculated at half-res + bilaterial upsample (similar to distance field and capsule shadows)
- only supports directional lights at the moment.
- configuration is similar to existing Contact Shadows except it doesn't read GBuffer so it doesn't support per-material overides.
- only used on mobile renderer.

#rb Yuriy.ODonnell, Kenzo.Terelst

[CL 28282063 by tiago costa in ue5-main branch]
2023-09-27 13:55:14 -04:00
benjamin rouveyrol
df133b7a3a Backing out 28029160 and 28029540 now that we have transient allocator on the appropriate platform with 28266454
#rb kenzo.terelst
#rnx
[FYI] dmitriy.dyomin

[CL 28269972 by benjamin rouveyrol in ue5-main branch]
2023-09-27 07:47:57 -04:00
florin pascu
f188054e10 Only Destroy/Add Light Primitive Interactions when needed on light transform update
On mobile this means we only invalidate MDC's when needed
#rb Dmitriy.Dyomin
#tests win64, mobile, PIE

[CL 28267461 by florin pascu in ue5-main branch]
2023-09-27 05:34:43 -04:00
graham wihlidal
1ce471e496 Hooked up Nanite CS materials to CPU visibility culling results, and also significantly optimized CS material PSO retrieval.
#rb jamie.hayes
[FYI] brian.karis, rune.stubbe, zach.bethel, luke.thatcher, ben.woodhouse
#jira UE-187341

[CL 28266584 by graham wihlidal in ue5-main branch]
2023-09-27 04:27:13 -04:00