Commit Graph

152 Commits

Author SHA1 Message Date
carl lloyd
7119eccc6d Added support for framebuffer fetch and pixel local storage to OpenGLES with DXC
(Submitting for Carl.Lloyd)
#rb Dmitriy.Dyomin, Laura.Hermanns
#lockdown Jack.Porter
#jira UE-120580
#preflight None

#ROBOMERGE-OWNER: carl.lloyd
#ROBOMERGE-AUTHOR: jack.porter
#ROBOMERGE-SOURCE: CL 18916240 in //UE5/Release-5.0/... via CL 18926540 via CL 18927298
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)

[CL 18927326 by carl lloyd in ue5-main branch]
2022-02-09 18:32:08 -05:00
jeremy moore
e9b8605b3b Add r.VelocityOutputPass render setting and deprecated r.BasePassOutputsVelocity and r.DepthPassMergedWithVelocity.
r.VelocityOutputPass supports the 3 valid settings: depth pass, base pass, after base pass.
#rb rob.krajcarski
#preflight 61f86031114ec25fe0b87dab

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18799499 in //UE5/Release-5.0/... via CL 18801888 via CL 18802482
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18808175 by jeremy moore in ue5-main branch]
2022-02-01 09:53:17 -05:00
ola olsson
b5219b04e6 Remove Geometry Shader path for point-light shadow rendering, disable point light shadows if VertexShaderLayer is not supported (at runtime).
- Add r.Shadow.DetectVertexShaderLayerAtRuntime to make it possible to force (for DX11/12/SM5/Vulkan) compilation of vslayer despite RHISupportsVertexShaderLayer being false.
- Set r.Shadow.DetectVertexShaderLayerAtRuntime in WindowsEngine.ini,WinGDKEngine.ini & LinuxEngine.ini.
- Add DoesRuntimeSupportOnePassPointLightShadows to determine support at runtime.
- Fix bug excluding Nanite meshes from DF shadows for local lights if VSM is enabled (now only affects directional lights).
- Add OnGetOnScreenMessages to enable modular generation of on-screen messages in the scene renderer (aimed at transient rendering processes).

#rb arciel.rekman,andrew.lauritzen
#jira UE-138933
#preflight 61f3c967da54035207f6e560

#ROBOMERGE-AUTHOR: ola.olsson
#ROBOMERGE-SOURCE: CL 18769670 in //UE5/Release-5.0/... via CL 18769671 via CL 18769765
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18769767 by ola olsson in ue5-main branch]
2022-01-28 06:36:41 -05:00
florin pascu
4d9dfc23c2 Remove IsMobileDistanceFieldShadowingEnabled
#jira UE-131828
#rb Dmitriy.Dyomin
#preflight 61deba60b97cb66880a7dd5d

#ROBOMERGE-AUTHOR: florin.pascu
#ROBOMERGE-SOURCE: CL 18582840 in //UE5/Release-5.0/... via CL 18582843 via CL 18582847
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)

[CL 18582850 by florin pascu in ue5-main branch]
2022-01-12 06:47:06 -05:00
andrew davidson
0715ebc996 Type truncation fixes - Renderer
#rb arne.schober
#preflight 61d85ab0932a02483ce13e7d

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

[CL 18544466 by andrew davidson in ue5-release-engine-test branch]
2022-01-07 10:39:08 -05:00
jeannoe morissette
bd4550b721 Add Pixel Format: PF_R64_UINT. Needed for (compliant) Vulkan's 64bit image atomics in upcoming changelist. bSupported defaults to FALSE (so no additional code for most APIs).
#rb Zach.Bethel
#preflight 61d34148af44b43628f33091

#ROBOMERGE-AUTHOR: jeannoe.morissette
#ROBOMERGE-SOURCE: CL 18503898 in //UE5/Release-5.0/... via CL 18504029
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18504080 by jeannoe morissette in ue5-release-engine-test branch]
2022-01-03 17:19:35 -05:00
josh adams
5953f4ad9f - Added ability to get a CVar's value for another platform (IConsoleVariable::GetPlatformValueVariable()), which gets another IConsoleVariable that contains the value
- Added console command syntax for viewing the value from the editor (<CVarName>[at]<PlatformName>)
- Converted FShaderPlatformCachedIniValue to use the new system (which will give a better possible value on the target platform). Eventually, this can be replaced with direct calls to GetPlatformValueVariable(ShaderPlatformToPlatformName(SHaderPlatform))
#p4v-preflight-copy 18268687
#preflight 61ba5a7aed09cd864b35372b
#rb arciel.rekman

#ROBOMERGE-OWNER: josh.adams
#ROBOMERGE-AUTHOR: josh.adams
#ROBOMERGE-SOURCE: CL 18476914 via CL 18479791 via CL 18482819 via CL 18482821 via CL 18483214 via CL 18483227
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18483239 by josh adams in ue5-release-engine-test branch]
2021-12-17 00:27:52 -05:00
arciel rekman
f302f8f030 Fix CVars not being picked up from other sections (UE-135567).
- Some projects put rendering CVars in other sections than RendererSettings.

#jira UE-135567
[at]Josh.Adams, [at]Dmitriy.Dyomin
#rb Josh.Adams, Dmitriy.Dyomin

#ROBOMERGE-AUTHOR: arciel.rekman
#ROBOMERGE-SOURCE: CL 18270117 in //UE5/Release-5.0/... via CL 18270123
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18270137 by arciel rekman in ue5-release-engine-test branch]
2021-11-23 10:17:56 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
tuo chen
c5427935ed Supports black texture array on mobile.
#jira none


#rb Dmitriy.Dyomin
#preflight 618e0dabe96ba283217718d1

#ROBOMERGE-AUTHOR: tuo.chen
#ROBOMERGE-SOURCE: CL 18166008 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v892-18165227)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0

[CL 18166107 by tuo chen in ue5-release-engine-test branch]
2021-11-12 06:22:52 -05:00
florin pascu
519515e8f4 Disable SceneDepthAux when r.MobileHDR=0 for non-IOS platforms
#rb Dmitriy.Dyomin
#jira none
#preflight 617a54f55794a500012ddb86

#ROBOMERGE-AUTHOR: florin.pascu
#ROBOMERGE-SOURCE: CL 17959353 in //UE5/Release-5.0/... via CL 17959363
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17959365 by florin pascu in ue5-release-engine-test branch]
2021-10-28 05:07:35 -04:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04:00
juan canada
bca4ec6f91 Fixed ray tracing is not enabled by default in cooked games with r.raytracing set to 1.
#rb none
#jira UE-130639
#preflight 6165a31ba8ff590001d9b1be

#ushell-cherrypick of 17786332 by Juan.Canada

#ROBOMERGE-AUTHOR: juan.canada
#ROBOMERGE-SOURCE: CL 17786479 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v881-17767770)

[CL 17786519 by juan canada in ue5-release-engine-test branch]
2021-10-12 12:34:04 -04: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
andrew davidson
57beb335f2 Merging //UE5/Dev-LargeWorldCoordinates [at] 17581892 to //UE5/Main
#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 17595295 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)

[CL 17595306 by andrew davidson in ue5-release-engine-test branch]
2021-09-22 10:01:48 -04:00
josie yang
742d1c2a03 Morph target engine modifications for 3rd party plugin
[FYI] alexis.matte, brian.white, christopher.waters, mihnea.balta, rolando.caloca, will.damon, halfdan.ingvarsson, kevin.ortegren

#ROBOMERGE-AUTHOR: josie.yang
#ROBOMERGE-SOURCE: CL 17444191 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17444481 by josie yang in ue5-release-engine-test branch]
2021-09-07 10:20:14 -04:00
yangke li
abb9346236 add ARM ASTC Encoder, support HDR profile, add astc hdr pixel format for opengl, vulkan and metal
todo:  hdr decode at runtime when astc hdr not supported
needs to figure out why ARM Encoder is much slower than ISPC, use ARM only for HDR Textures might be a good compromise.
#jira UE-119388

#ROBOMERGE-AUTHOR: yangke.li
#ROBOMERGE-SOURCE: CL 17441496 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17441499 by yangke li in ue5-release-engine-test branch]
2021-09-07 01:24:23 -04:00
aurel cordonnier
7f517562d5 Merge from Release-Engine-Staging @ 17438845 to Release-Engine-Test
This represents UE4/Main @17430120 and Dev-PerfTest @17437669

[CL 17439044 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-06 12:23:53 -04:00
arciel rekman
3243e21ef8 Nanite per-project killswitch with an artist-friendly message.
#rb Rune.Stubbe
[REVIEW] [at]Graham.Wihlidal, [at]Rune.Stubbe
#jira UE-117561
#preflight 611a79b7aabad10001bfd9c6

#ROBOMERGE-SOURCE: CL 17177746 via CL 17177758
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17177765 by arciel rekman in ue5-release-engine-test branch]
2021-08-16 12:55:21 -04:00
brandon schaefer
6318073cc1 Iterate over all the TargetPlatforms to find which ShaderPlatform they support to flip the correct flags
Currently no platform handles support different but there may be a case later in which some TargetPlatform has a different Support/NoSupport then another
This would cause the Mask to possibly be Enable/Disabled for a specific platform that could be incorrect. Overall a global mask is not an ideal setup for this

#jira UE-120659
#rb Arciel.Rekman, Mihnea.Balta

#ROBOMERGE-SOURCE: CL 17105605 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v854-17104634)

[CL 17105806 by brandon schaefer in ue5-release-engine-test branch]
2021-08-09 14:35:14 -04:00
dmitriy dyomin
b0828d6beb Mobile specific implementation for auto-instancing. (disabled by default atm)
Run a compute job that packs most commonly used instance data (LocalToWorld matrix and some other bits - 80 bytes) into per-instance vertex buffer. Vertex shader does not have access to GPUScene and instead loads instance data from a per-instance vertex buffer. If it needs more primitive/instance data than available then it will load it from Primitive UB, binding unique uniform buffer and breaking auto-instancing. Pixel shader has a full access to a GPUScene
There are 3 ways how FSceneDataIntermediates gets populated
 1. PrimitiveId + GPUScene (Desktop)
 2. Per-Instance data + Primitive UB (Mobile)
 3. Primitive UB (auto-instancing disabled)
Details for GPUScene specific vertex inputs and access to FSceneDataIntermediates are hidden behind a macro:
VF_GPUSCENE_DECLARE_INPUT_BLOCK
VF_GPUSCENE_GET_INTERMEDIATES
FSceneDataIntermediates is now stored in FVertexFactoryIntermediates, FMaterialVertexParameters. Added a few GetPrimitiveData() overloads that allows you to access PrimitiveData depending on current context. Removed most of the cases where GetPrimitiveData() gets used with PrimitiveId.
#rb Ola.Ollson

#ROBOMERGE-SOURCE: CL 17093848 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v853-17066230)

[CL 17093856 by dmitriy dyomin in ue5-release-engine-test branch]
2021-08-07 07:20:52 -04:00
ben ingram
47b7154e10 Fix cvar access
#rb none
#jira none

#ROBOMERGE-SOURCE: CL 16898296 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16898309 by ben ingram in ue5-release-engine-test branch]
2021-07-20 12:57:10 -04:00
arciel rekman
a09bfec58c Properly support r.ShaderPipelines when filtering out non-pipelined shader types.
- Also, include this in the DDC key.

#rb Kevin.Ortegren
[at]Jason.Nadro
#jira UE-117881

#ROBOMERGE-SOURCE: CL 16897479 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16897491 by arciel rekman in ue5-release-engine-test branch]
2021-07-20 11:42:43 -04:00
yangke li
702c9dc694 add RGB555A1 texture format support(not supported on Mac)
useful for RVT on mobile platforms, to save the cost of runtime compression
#rb Dmitriy.Dyomin mihnea.balta

#ROBOMERGE-SOURCE: CL 16872220 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16872238 by yangke li in ue5-release-engine-test branch]
2021-07-16 11:40:02 -04:00
jian ru
c1b9b1a758 Keep the default values of GDistanceFieldsPlatformMask and GRayTracingPlatformMask if their corresponding settings are not found in init files
#jira none
[FYI] krzysztof.narkowicz

#ROBOMERGE-SOURCE: CL 16853564 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16853580 by jian ru in ue5-release-engine-test branch]
2021-07-14 15:10:01 -04:00