Commit Graph

56 Commits

Author SHA1 Message Date
dmitriy dyomin
de2b738ffa Mobile: Added an option to not use PLS and FBF extension on Android OpenGL
Enabling it will force a multipass rendering where GBuffer and SceneColor are resolved to a system memory

[CL 36327269 by dmitriy dyomin in 5.5 branch]
2024-09-17 01:36:59 -04:00
charles derousiers
129cc51b2d * Add Gbuffer normal/tangent visualization
* Fix typos

[FYI] sebastien.hillaire

[CL 35736592 by charles derousiers in ue5-main branch]
2024-08-22 08:50:43 -04:00
charles derousiers
946e9e68f2 Fix shader compilation warning.
[CL 35420255 by charles derousiers in ue5-main branch]
2024-08-09 09:38:55 -04:00
charles derousiers
fd99b25dcc Fix SSS checkerboard with ManyLight.
#rb krzysztof.narkowicz

[CL 35290174 by charles derousiers in ue5-main branch]
2024-08-02 17:56:14 -04:00
pr0-zac
162945b344 Mobile Multi-view Fixes for Custom Depth and Custom Stencil
#jira UE-219538
#rb dmitriy.dyomin

[CL 35209987 by pr0-zac in ue5-main branch]
2024-07-31 07:40:38 -04:00
dmitriy dyomin
32a6fabecc Change Depth and CustomDepth in a FGBufferData to a full float, half precision is not enough for a depth values
[CL 30631120 by dmitriy dyomin in ue5-main branch]
2024-01-16 06:53:58 -05:00
Wei Liu
aee3881d4d Fix a bug of black screen on Mac mobile preview with mobile deferred.
#jira none

#rb Dmitriy.Dyomin

[CL 30287150 by Wei Liu in ue5-main branch]
2023-12-13 03:31:25 -05:00
Wei Liu
23b843f9dc Fix a bug that the IndirectIrradiance applied AO twice on mobile deferred, it has applied AO in the base pass.
#jira none

#rb Dmitriy.Dyomin

[CL 27197822 by Wei Liu in ue5-main branch]
2023-08-18 05:03:42 -04:00
tiantian xie
498e43b479 Subsurface Profile has artifacts if it is behind a translucent material that uses its basecolor
#jira UE-191909
#rb none

#ushell-cherrypick of 26788890 by Tiantian.Xie

[CL 26864551 by tiantian xie in ue5-main branch]
2023-08-04 19:03:55 -04:00
Rune Stubbe
31dbac2a74 Removed 0.5 / 255.0 bias when packing DiffuseIndirectSampleOcclusion into the gbuffer as the hardware format conversion already rounds to nearest.
The bias made it so the conversion to UINT8 was hardware dependent as both rounding up and down would be within the D3D format conversion error tolerance of 0.6ULP.
This fixes a performance regression where enabling Nanite compute materials would cause DiffuseIndirectSampleOcclusion to be rounded up to 1, causing Lumen to do more expensive sampling.
#preflight 646f5d9b1b241f0748b5e5a1
#rb krzysztof.narkowicz
#fyi guillaume.abadie, graham.wihlidal

[CL 25620352 by Rune Stubbe in ue5-main branch]
2023-05-25 09:47:26 -04:00
Dmitriy Dyomin
c295434c9b Do not auto-generate GBuffer layout for mobile platforms. Mobile uses hardcoded layout anyway
#jira none
#preflight 6452002dd863ba2621026312

[CL 25314792 by Dmitriy Dyomin in ue5-main branch]
2023-05-03 02:55:51 -04:00
Wei Liu
01a415b564 Sampling SceneDepth instead of fetching SceneDepthAux when full depth prepass is enabled.
#jira none

#rb Dmitriy.Dyomin
#preflight 64267ed89621ba9cb48c0edf

[CL 24868190 by Wei Liu in ue5-main branch]
2023-03-31 03:12:41 -04:00
Wei Liu
541f9d1cca Fix a trivial bug of mobile deferred with extended gbuffer enabled on IOS.
#jira none

#rb Dmitriy.Dyomin
#preflight 63f43e9990198dffba12cf5f

[CL 24333848 by Wei Liu in ue5-main branch]
2023-02-21 00:18:15 -05:00
Dmitriy Dyomin
256b8f42b8 Fixed broken reflection environment pass for a mobile deferred shading
#jira UE-175564
#preflight 63d8931e5428dc67b1be66e7

[CL 23921521 by Dmitriy Dyomin in ue5-main branch]
2023-01-30 23:21:26 -05:00
Dmitriy Dyomin
aa56f25356 Support GBuffer access for translucency with mobile deferred shading enabled (GL does not work atm)
Cleanup sub-pass features usage in mobile shaders
#jira none
#rb wei.liu
#preflight 6357b44736767b3e1e59e0e7

[CL 22748504 by Dmitriy Dyomin in ue5-main branch]
2022-10-25 06:26:40 -04:00
Charles deRousiers
5646de92c9 Fix shader compilation warning.
#rb none
#jira none
#preflight shaders

[CL 21738411 by Charles deRousiers in ue5-main branch]
2022-09-01 07:57:03 -04:00
Wei Liu
72cb7559c9 Implement proper support for togglable stationary direct lighting on mobile and delete 'bake stationary as static' path.
This change makes HQ and LQ lightmaps to have unified lighting content and now they differ only in encoding.

#jira UE-154008, UE-151380

#rb Dmitriy.Dyomin, Yujiang.Wang
#preflight 62b5270d0a3bb5ca13d79900

[CL 20806454 by Wei Liu in ue5-main branch]
2022-06-23 23:24:24 -04:00
wei liu
87f2d95ada 1.Supports more shading models on mobile, including twoside foliage, cloth and eye shading models.
2.Uses the same shading models and dynamic lightings code path on desktop.

3.Remove the division of PI on mobile directional light's color in C++ to line up with desktop in shaders.

#jira UE-114145

#rb Dmitriy.Dyomin, Sebastien.Hillaire
#preflight 62b0411fd8082c5c200fa32a

[CL 20734991 by wei liu in ue5-main branch]
2022-06-20 06:02:51 -04:00
Dmitriy Dyomin
038d909044 Support shading models for mobile deferred path when static lighting is disabled
#rb wei.liu
#jira none
#preflight 627b5f586842238976719cc3

[CL 20134438 by Dmitriy Dyomin in ue5-main branch]
2022-05-11 03:17:42 -04:00
Dmitriy Dyomin
4f36e88650 Extract mobile GBuffer encoding into a separate function, before adding mobile specific GBuffer layout
Store IndirectIrradiance in GbufferA.z so it has 10 bits of precision
#rb none
#preflight shaders only

[CL 20055403 by Dmitriy Dyomin in ue5-main branch]
2022-05-05 03:33:44 -04:00
Sebastien Hillaire
cc2310df4d Fixed Translucent material sampling stencil buffer not working when r.SeparateTranslucencyScreenPercentage<100.
It works but it does not account for alliasing. It is literally impossible to know if users want to expend stencil bit erode.

#rb none
#preflight 621e35fff1206ae3ea5a66a6

[CL 19198466 by Sebastien Hillaire in ue5-main branch]
2022-03-01 10:32:31 -05:00
Charles deRousiers
41045cc30f Fix typos.
#rb none
#jira none
#preflight shader

[CL 19049036 by Charles deRousiers in ue5-main branch]
2022-02-18 08:19:45 -05:00
andrew lauritzen
a94f888d56 Normalize opacity clamping logic between PCF and VSM path. The former was basically treating relevant materials as having a max of 0.999 (changed now to 0.99 to make a few other cases robust) opacity always and thus never occluded backfaces on two-sided materials.
Fix warning triggering incorrectly when enabling/disabling VSMs.
Make contact shadow stepoffset the same between VSM and engine contact shadows paths.

#preflight 61b8e845c8566c1582c8255b
#rb ola.olsson

#ROBOMERGE-AUTHOR: andrew.lauritzen
#ROBOMERGE-SOURCE: CL 18467898 in //UE5/Release-5.0/... via CL 18467900
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18467908 by andrew lauritzen in ue5-release-engine-test branch]
2021-12-15 12:03:31 -05:00
krzysztof narkowicz
80e2187f7c Fixed Lumen surface cache world space normal encoding. Instead of storing a hemisphere now a full sphere is stored using Octahedral encoding.
Refactored Octahedral functions from DeferredShadingCommon.ush and LumenOctahedralProbe.ush into a single OctaheralCommon.ush file. Naming was used from DeferredShadingCommon, but functions taken from LumenOctahedralProbe (those are a bit faster).

#rb Patrick.Kelly, Daniel.Wright

#ROBOMERGE-SOURCE: CL 16499592 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v823-16466674)

[CL 16499599 by krzysztof narkowicz in ue5-main branch]
2021-05-28 02:21:31 -04:00
Guillaume Abadie
43ccc8111b Nukes USE_PREEXPOSURE
#rb uriel.doyon, jack.porter

[CL 16070774 by Guillaume Abadie in ue5-main branch]
2021-04-21 04:53:11 -04:00