Commit Graph

275 Commits

Author SHA1 Message Date
dan elksnitis
721a361177 [shaders] optimize AppendKeyStringShaderDependencies by caching FShaderParametersMetadata pointers in each shader/vf type instead of uniform buffer names; this eliminates a bunch of string hashing/comparison/fname construction that was previously needed every time this function is called and improves performance of GetMaterialShaderMapKeyString by approximately 20%
#rb christopher.waters

[CL 32085954 by dan elksnitis in ue5-main branch]
2024-03-07 10:17:38 -05:00
wouter dek
677a7d6665 Parallelize UpdateReferencedUniformBufferNames, which saves a second on startup
#rb dan.elksnitis, jason.hoerner

[CL 31649258 by wouter dek in ue5-main branch]
2024-02-20 12:37:39 -05:00
sebastien hillaire
6740e01230 Lumen - added render settings to remove all translucent surface for lumen scene when it is know trnaslucent refraction will not be used by a project.
#rb jamie.hayes, Krzysztof.Narkowicz

[CL 31519973 by sebastien hillaire in ue5-main branch]
2024-02-15 10:36:53 -05:00
laura hermanns
3e2c99ebce [Shaders] Remove Hlslcc form GL backend; Mobile renderer fully switched to DXC.
#rnx
#rb Carl.Lloyd, Dmitriy.Dyomin, Florin.Pascu
[FYI] Rolando.Caloca, Jason.Nadro

[CL 31258039 by laura hermanns in ue5-main branch]
2024-02-07 10:32:52 -05:00
charles derousiers
15b747649b Add project settings for hair tristrip geometry as not all project are compatible with this.
#rb charles.derousiers


#changelist validated
#virtualized

[CL 31249413 by charles derousiers in ue5-main branch]
2024-02-07 01:35:42 -05:00
bob tellez
bb4b933b0b [Backout] - CL30979008
#fyi bob.tellez
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL30976715
#fyi Luke.Thatcher
Original CL Desc
-----------------------------------------------------------------
Remove "r.RecompileRenderer", STORE_ONLY_ACTIVE_SHADERMAPS, and all associated dead code paths that are no longer used.
 - r.RecompileRenderer has been broken since at least August 2019 when CL 8231930 disabled the implementation of BackupGlobalShaderMap etc
 - STORE_ONLY_ACTIVE_SHADERMAPS was disabled in 14363137 (September 2020) to resolve FORT-312158 (enabling the new loader). Fortnite was the only user of this code path.
 - This is a delete-only change.

#jira UE-167133
#rb Arciel.Rekman, Jason.Nadro

[CL 30987478 by bob tellez in ue5-main branch]
2024-01-29 23:48:09 -05:00
bob tellez
9abacf237b [Backout] - CL30976715
#fyi Luke.Thatcher
Original CL Desc
-----------------------------------------------------------------
Remove "r.RecompileRenderer", STORE_ONLY_ACTIVE_SHADERMAPS, and all associated dead code paths that are no longer used.
 - r.RecompileRenderer has been broken since at least August 2019 when CL 8231930 disabled the implementation of BackupGlobalShaderMap etc
 - STORE_ONLY_ACTIVE_SHADERMAPS was disabled in 14363137 (September 2020) to resolve FORT-312158 (enabling the new loader). Fortnite was the only user of this code path.
 - This is a delete-only change.

#jira UE-167133
#rb Arciel.Rekman, Jason.Nadro

[CL 30979008 by bob tellez in ue5-main branch]
2024-01-29 17:22:09 -05:00
Luke Thatcher
4eb84944ad Remove "r.RecompileRenderer", STORE_ONLY_ACTIVE_SHADERMAPS, and all associated dead code paths that are no longer used.
- r.RecompileRenderer has been broken since at least August 2019 when CL 8231930 disabled the implementation of BackupGlobalShaderMap etc
 - STORE_ONLY_ACTIVE_SHADERMAPS was disabled in 14363137 (September 2020) to resolve FORT-312158 (enabling the new loader). Fortnite was the only user of this code path.
 - This is a delete-only change.

#jira UE-167133
#rb Arciel.Rekman, Jason.Nadro

[CL 30976715 by Luke Thatcher in ue5-main branch]
2024-01-29 15:42:08 -05:00
patrick kelly
36380c6163 Heterogeneous Volumes: Initial shadow-casting support and integration with translucency pass.
#rb stu.mckenna krzysztof.narkowicz
#jira UE-190041

[CL 30914925 by patrick kelly in ue5-main branch]
2024-01-26 00:33:50 -05:00
laura hermanns
fffc6b84e1 Enable DXC by default for remaining SPIR-V backends.
#jira UE-182488
#rb Jason.Nadro, serge.bernier

[CL 30784243 by laura hermanns in ue5-main branch]
2024-01-22 15:37:51 -05:00
jason nadro
7f1092758a [Shaders][Material Editor] - Add generic, data driven key, value shader statistics.
- Shader stats are simply key (FName) and value (POD types) that are stored per-shader.
- A Shader Statistic is a variant that can take on the following POD types: bool, float, int32, uint32
- Currently don't support strings since those weren't as trivial to implement (needed conversion and special case code to support serializing these to the memory images required by shader maps)
- Adds another shader statistics row in the Material Editor that will show the platform specific stats.
- The platform statistics are turned into a comma and newline separated string that is displayed to the user.
- Bump the shader output worker version since I'm changing the output file format (to contain the stats).
- The shader compiler output stores the stats as a `TMap<FString, FShaderStatVariant>`.  Serializing across FNames between Shader Compiler Worker and the main process wasn't working (different name tables).
- When storing and serializing the stats to the shader map we convert them to FNames. (see `FShader::FShader()`)

#rb dan.elksnitis

[CL 30394059 by jason nadro in ue5-main branch]
2023-12-19 09:36:35 -05:00
charles derousiers
821a52514b Add IES Atlas support for translucent surface.
#rb charles.derousiers
[FYI] sebastien.hillaire

[CL 30207129 by charles derousiers in ue5-main branch]
2023-12-08 03:03:42 -05:00
jamie hayes
08f564e582 Add some Nanite read-only CVars to the shader map DDC key to prevent caching issues.
#rb dan.elksnitis

[CL 30131788 by jamie hayes in ue5-main branch]
2023-12-05 15:29:09 -05:00
sebastien hillaire
732dded085 LFAtlas - added support for forward translucent and SLW light function sampling from atlas.
LFA parameter can are bound to base pass data. Project settings Cvars controls how to enable those settings.

[CL 30073379 by sebastien hillaire in ue5-main branch]
2023-12-04 03:09:15 -05:00
sebastien hillaire
06a770f20b LFAtlas - added color atlas mode. As a project setting requiring shader compilation.
#rb charles.derousiers

[CL 30034199 by sebastien hillaire in ue5-main branch]
2023-12-01 05:15:26 -05:00
marc audy
763a611985 Fix C4072 warnings
#rnx

[CL 29852844 by marc audy in ue5-main branch]
2023-11-20 17:26:53 -05:00
chris kulla
f3e5219e6b Allow warnings as errors cvar to be set per platform
#rb Jason.Nadro

[CL 29820706 by chris kulla in ue5-main branch]
2023-11-17 16:20:36 -05:00
dmitriy dyomin
e947de61d9 Moved FReadOnlyCVARCache to RenderCore module
Cleaned up and made more rendering read-only cvars go through this cache
It now can cache platform specific cvars, in non-editor builds
#rb jack.porter

[CL 29681907 by dmitriy dyomin in ue5-main branch]
2023-11-13 09:13:11 -05:00
christopher waters
ab21e17d39 Bindless Resources
- Splitting "Bindless Resource" shader parameter types into "Bindless SRV" and "Bindless UAV" to make sure reflection/binding validation is correct.

#jira UE-166341
#rb jeannoe.morissette

[CL 28995862 by christopher waters in ue5-main branch]
2023-10-20 23:12:44 -04:00
sebastien hillaire
3732464a7d Added a cvar to force skylight cubemap blending per platform for forward shading. This allows for higher quality refelction on some platforms using forward shading, for instance when using the mobile forward shading path.
#rb Florin.Pascu, Dmitriy.Dyomin

[CL 28995819 by sebastien hillaire in ue5-main branch]
2023-10-20 23:11:34 -04:00
sebastien hillaire
0849243179 LFV - added a project wide local fov volume toggle to remove all potential usage and for it off.
#rb none

[CL 28417798 by sebastien hillaire in ue5-main branch]
2023-10-03 12:06:40 -04:00
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
dmitriy dyomin
b967feaef8 Add ability to setup VT support on a per-platform basis
#rb jeremy.moore

[CL 28260983 by dmitriy dyomin in ue5-main branch]
2023-09-26 22:38:26 -04:00
josie yang
173b6f8fca Add IsGPUSkinPassThrough to shader DDC key
#jira UE-192405
#rb Dan.Elksnitis, Jeremy.Moore

[CL 28028826 by josie yang in ue5-main branch]
2023-09-20 04:16:26 -04:00
christopher fiala
06d669f04a Enables support for screen-space (Tier 2) Variable Rate Shading on Xbox Series X.
#jira UE-195669
#rb graham.wihlidal

[CL 28016770 by christopher fiala in ue5-main branch]
2023-09-19 18:18:21 -04:00