2. Add an option to use high quality BRDF on mobile as the same with PC.
3. Fallback to default light shading model if it is not supported on mobile.
4. Use EnvBrdf for mobile deferred lighting pass.
#jira none
#rb Dmitriy.Dyomin
#preflight 60cdef32be81e8000118d85c
[CL 16722349 by Wei Liu in ue5-main branch]
For Forward ES31
Default SceneColor RG11B10 + R16F\32F Depth texture
With PropagateAlpha on RGBA16F + R16F\32F
PostProcess we sample SceneDepthAux for Depth
For Deferred ES31
SceneDepthAux only for Metal
PropagateAlpha not working yet
PostProcess we sample SceneDepthTexture for Depth
cvar to change Depth texture from 16 to 32Fr.Mobile.SceneDepthAux
cvar for AlphaPropagate r.Mobile.PropagateAlpha
#jira UE-98033
#rb Dmitriy.Dyomin, Carl.Lloyd, Jack.Porter
[CL 16644095 by Florin Pascu in ue5-main branch]
- Adds macros check, checkBufferAccess and checkStructuredBufferAccess, along with Slow-suffixed equivalents
- A new cvar 'r.Shader.CheckLevel' which defaults to 1 (enable check but not Slow). Thus be careful when using check, if unsure use checkSlow!
- The cvar controls macros DO_CHECK=0 and DO_GUARD_SLOW=0 that mirrow the ones in host code.
- Note that SM6 version only works for CS and PS.
#rb charles.derousiers
#preflight 60be56fc1e21b4000177f07b
[CL 16576687 by Ola Olsson in ue5-main branch]
This adds support for a new compilation flag that enables warnings as errors. Support was added for most of the main platforms. This feature has to opted into since many shaders currenntly contain small warnings, however this gives the ability for developpers to locally opt-in to this behavior to slowly sanitize code.
A global CVar: r.Shaders.WarningsAsErrors was also added, which will force every shader to be (re)built with this enabled for even more thorough checking.
#rb Jason.Nadro, Lukas.Hermanns, Rolando.Caloca
[CL 15383543 by chris kulla in ue5-main branch]
- r.Shaders.KeepDebugInfo: if we should compile with debugging information included and export that data to files for platforms that support it.
- r.Shaders.PrepareExportedDebugInfo: precompile debug info for platforms that export it to files.
- r.Shaders.AllowUniqueDebugInfo: used to disallow debug info sharing, will increase debug export sizes.
#jira none
#rb luke.thatcher, lukas.hermanns
[CL 14991674 by christopher waters in ue5-main branch]