43 Commits

Author SHA1 Message Date
Guillaume Abadie
0410aed198 Disables bSupportsRealTypes on vulkan du to cook failure colliding with r.Mobile.FloatPrecisionMode
#rb trivial
#jira UE-189783

[CL 26286087 by Guillaume Abadie in 5.3 branch]
2023-06-28 11:20:41 -04:00
guillaume abadie
886da10abf Adds bSupportsRealTypes=RuntimeDependent in Vulkan SM5 and SM6
#rb jeannoe.morissette
#jira UE-179496

[CL 26269712 by guillaume abadie in 5.3 branch]
2023-06-27 16:33:56 -04:00
serge bernier
cb29e2d03d Fix global usage of all cvars related to shader pipelines:
r.ShaderPipelines
r.Material.ExcludeNonPipelinedShaders

Both cvars are currently disable on WindowsEngine.ini which make them also disable when we cook for consoles. ExcludeNonPipelinedShaderTypes is currently used only at cooking time when we compile shaders which is currently returning false, since the value is disabled on windows. Making those cvars use FShaderPlatformCachedIniValue, will allow to have specific platform value when cooking for a specific target. Moving r.Material.ExcludeNonPipelinedShaders to the defaultengine.ini file to keep it disable for the moment and not affecting shader key string. Will enable it progressively on console later.


r.Shaders.RemoveUnusedInterpolators

Make that cvar platform agnostic, since it will be used in on other consoles eventually. Platforms supporting the stripping of unused interpolators will check the same flag (CFLAG_ForceRemoveUnusedInterpolators) to enable it. Since windows can run opengl, and stripping is not supported on that shader platform, add extra logic to exclude the flag.

-Make the RHISupportsShaderPipelines function access a real DDPI attribute and not just test if we are not on mobile. Will need this to be able to have stripping unused shader interpolators on Switch.

[REVIEW] Laura.Hermanns

[CL 26038736 by serge bernier in 5.3 branch]
2023-06-16 02:51:55 -04:00
Arciel Rekman
f040de9c33 Enable native MMV for preview platforms when running editor on Vulkan (UE-147903)
#rb Rob.Srinivasiah, Erica.Stella
#jira UE-147903
#review
#preflight 6470c853cc626ec165a45c30

[CL 25643164 by Arciel Rekman in ue5-main branch]
2023-05-26 11:02:46 -04:00
christopher fiala
06499f360a Support VRS for desktop Vulkan via the VK_KHR_fragment_shading_rate extension.
#jira UE-130115
#rb jeannoe.morissette
#preflight 64666081a133ca477bbf08e2
#preflight 64665acbec5109088b37a84e

[CL 25533897 by christopher fiala in ue5-main branch]
2023-05-18 17:09:09 -04:00
florent guinier
7d5cb9e6ca NNE Only compile HLSL runtime shaders on supported platform.
What:
* Add data support flag for NNE shaders so platforms can opt in to the NNERuntimeHlsl shaders compilation.

Tests:
* NNE smoke test + style transfer demo on: win64 editor, win64 packaged

#rb ue-nni
#rnx
#jira UE-184154
#preflight 6447d1e7c632d1e89bc818f6

[CL 25185875 by florent guinier in ue5-main branch]
2023-04-25 14:43:04 -04:00
Florin Pascu
cd8651734e UX: Remove user-visible ES31 editor references and replace with Mobile
#jira UE-134173
#rb Jack.Porter
#preflight 6447ac2e641e2c3cb4227930

[CL 25178065 by Florin Pascu in ue5-main branch]
2023-04-25 07:05:08 -04:00
jeannoe morissette
c3af71b9f6 VulkanRHI: Fix Lumen tests for VULKAN_SM5
#rb trivial
#preflight none

[CL 25086435 by jeannoe morissette in ue5-main branch]
2023-04-18 10:51:27 -04:00
jeannoe morissette
75364b7008 VulkanRHI: Add VULKAN_SM6. Move features and requirements around to match what was done on d3d.
#rb arciel.rekman, carl.lloyd
#preflight 643996128901e5ef982dc887

[CL 25045731 by jeannoe morissette in ue5-main branch]
2023-04-14 14:26:06 -04:00
jeannoe morissette
e12504b6f7 Vulkan: Fix the missing "Disable Preview" option in in Vulkan when using preview modes. Disable preview modes for the same FeatureLevel until all issues are resolved.
#rb Florin.Pascu
#jira UE-171188
#preflight 64258b4a710ec8400fdafbd8
#rnx
#lockdown mihnea.balta

[CL 24854662 by jeannoe morissette in ue5-main branch]
2023-03-30 11:19:46 -04:00
Florin Pascu
345666d77f Volumetric Support For Mobile - disabled by default in DP
Removed bSupportsVolumetricFog from DDPI
#jira UE-157201
#rb Dmitriy.Dyomin
#preflight 64119df15819afacaff56035

[CL 24652571 by Florin Pascu in ue5-main branch]
2023-03-15 07:26:45 -04:00
florin pascu
fbeaaad187 User friendly labels for Shader Preview Levels
#rb Gregory.Yepes
#preflight 63efae001d71bcd262fbf88d

[CL 24287942 by florin pascu in ue5-main branch]
2023-02-17 14:26:21 -05:00
laura hermanns
7ada60f6d9 Fix DXC/SPIR-V bug with empty structs and re-enable Nanite for Vulkan.
Several PRs have been filed on GitHub for DXC (PR 5017, PR 5020) and SPIRV-Tools (PR 5107).
Integrated from CL 23998474.

Workaround for DXC rewriter bug: Have member function definition inside struct declaration.
Integrated from CL 23976367.

Explicitly initialize TNaniteWritePixel members as empty structs expose further bugs in SPIR-V backend of DXC.

Rebuild ShaderConductor for Win64, Mac, and Linux (Empty struct fix).

#rb Jason.Nadro, JeanNoe.Morissette, Carl.Lloyd
[FYI] Brian.Karis, Graham.Wihlidal, Rune.Stubbe
#jira UE-175538, UE-172568
#preflight 63eae0eab91ae11c1ceceed2
#rnx

[CL 24214167 by laura hermanns in ue5-main branch]
2023-02-14 12:14:10 -05:00
Jeremy Moore
c533fd3e16 #jira UE-168524
Enable ComputeFramework on PC Vulkan.
#preflight ini file only

[CL 23645731 by Jeremy Moore in ue5-main branch]
2023-01-11 10:51:42 -05:00
wei liu
2aabe45ab3 Supports thin translucent with dual src blending if it's supported on mobile platform with DXC.
It's disabled on Android because some android devices don't support dual src blending, and it's disabled on IOS because it doesn't work with MRT.


#rb Dmitriy.Dyomin, Florin.Pascu
#preflight 6391f2e7c415e8dc78348c60

[CL 23448042 by wei liu in ue5-main branch]
2022-12-08 11:50:13 -05:00
Brian Karis
3e4cfdf78b Until Vulcan supports SM6 properly Nanite is disabled.
#preflight

[CL 23442553 by Brian Karis in ue5-main branch]
2022-12-07 23:17:52 -05:00
christopher waters
d8b6c60a8e Allowing SM5 to support bindless only in RayTracing shaders.
#jira UE-162014
#rb elizabeth.baumel, yuriy.odonnell
#preflight 634456c66e400a8e20f57202

[CL 22458545 by christopher waters in ue5-main branch]
2022-10-11 11:19:10 -04:00
florin pascu
5669253244 - Add Disable Preview Menu Option
- GetFriendlyShaderPlatformName removed
- RHIShaderPlatformDefinitions.inl deleted
- Added FriendlyNames to all ShaderPlatforms in DDSPI
- MenuText now comes from FriendlyNames in DDSPI
#rb Jack.Porter
#jira none
#preflight 632b1f8c826e0c2fe9a9d5d2

[CL 22118730 by florin pascu in ue5-main branch]
2022-09-21 14:35:21 -04:00
jeannoe morissette
0d54854d1f VulkanRHI: Add implementation of bindless samplers using VK_EXT_descriptor_indexing.
#fyi dmitri.dyomin, carl.lloyd, robert.srinivasiah, yuriy.odonnell, aleksander.netzel
#rb christopher.waters
#jira UE-139618
#preflight 6319f6482b7fe03eb6aab931

[CL 21988350 by jeannoe morissette in ue5-main branch]
2022-09-13 14:16:19 -04:00
guillaume abadie
e123c0e4c1 Works arround exessive TSR shader compilation time on SPIRV backends
#rb laura.hermanns
#jira UE-161125
#preflight 6317844f304480f8f8e061cb

[CL 21923850 by guillaume abadie in ue5-main branch]
2022-09-09 13:20:46 -04:00
guillaume abadie
461c3253f0 Fixes crash in TSR when the GPU doesn't support wavesize=32
#rb none
#jira UE-159120
#preflight 63077f19f853cb3b91212fb2

[CL 21572613 by guillaume abadie in ue5-main branch]
2022-08-25 17:06:23 -04:00
Dmitriy Dyomin
1d08766513 Fixed: broken geometry in editor mobile preview when "GPU Scene on Mobile" is true
#rb none
#preflight ini
#jira UE-159920

[CL 21266403 by Dmitriy Dyomin in ue5-main branch]
2022-08-08 01:32:24 -04:00
Arciel Rekman
09175d79ea Multi-viewport on PC (D3D11/12, Vulkan).
- RHISupportsMultiviewport made to work on relevant shader platforms.
- RHISetStereoViewport implemented
- Unused outputs removal fixed to always consider viewport index used.
- Renamed confusing terminology (multiview -> multiviewport).
- Added a CVar (vr.MultiViewport) to force disable
- Added a canvas output to know the method in non-Shipping

#jira UE-151349
#review @Robert.Srinivasiah, @Jules.Blok, @JeanNoe.Morissette
#rb Robert.Srinivasiah, Jules.Blok, Chris.Waters
#preflight 62d193c43b057e727491c9d2

[CL 21153050 by Arciel Rekman in ue5-main branch]
2022-07-18 17:31:15 -04:00
serge bernier
6df0b584ae Use DDPI option to use the compressed transforms with scenedata. For platforms not supporting nanite, using non compressed transforms saves 0.4ms on the GPU.
#rb [at]jamie.hayes

#ROBOMERGE-AUTHOR: serge.bernier
#ROBOMERGE-SOURCE: CL 21090729 via CL 21090755 via CL 21095104
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21099187 by serge bernier in ue5-main branch]
2022-07-14 17:05:33 -04:00
Florin Pascu
f64fc575d2 Re-submiting with Mac fixes
Changed ShaderArchive, GlobalShaderCache, ShaderDebugInfo and Autogen to use ShaderPlatformName and not ShaderFormat when naming their output files.
#rb Jack.Porter, Chris.Waters, Mihnea.Balta, Jason.Nadro
#jira UE-120561
#preflight 62c31f6fc9410537282296c6

[CL 20937870 by Florin Pascu in ue5-main branch]
2022-07-04 19:06:33 -04:00