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]
- 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]
- 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]
- 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]
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035
[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
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]
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]
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]
- 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]
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]