Commit Graph

36 Commits

Author SHA1 Message Date
florin pascu
375342feb7 Change delimiter for Preview DP and FriendlyNames from '|' to ':" to avoid options being skipped
#rb Josh.Adams

[CL 34157333 by florin pascu in ue5-main branch]
2024-06-06 10:47:29 -04:00
florin pascu
86b6fa9de7 Fix Preview Platform FriendlyName overrides
#rb Josh.Adams

[CL 33829515 by florin pascu in ue5-main branch]
2024-05-22 10:44:34 -04:00
laura hermanns
29a6c72678 [Shaders] Move macro SUPPORTS_INDEPENDENT_SAMPLERS to DDSPI configuration.
While the mobile team wants to keep independent samples disbaled for PCD3D_ES3_1, it makes sense to move this as a platform dependent feature into the DDSPI configuration.

#rb brian.white, christopher.waters, Yuriy.ODonnell
[FYI] Dmitriy.Dyomin, Carl.Lloyd
#rnx

[CL 31764896 by laura hermanns in ue5-main branch]
2024-02-23 11:10:12 -05:00
josh adams
681967e680 - Fixed the iPad name to not need quote for inches
#rb adam.kinge
#jira UE-200576

[CL 29782933 by josh adams in ue5-main branch]
2023-11-16 12:56:08 -05:00
adam kinge
cac003bedc Fix unquoted string in iOS DeviceProfile
#jira UE-200576
#rnx

[CL 29777836 by adam kinge in ue5-main branch]
2023-11-16 10:35:44 -05:00
josh adams
9dba14d6cc - Allow for arbitrary number of PreviewPlatforms differing only by DeviceProfile
- Can specify multiple DPs and FriendlyNames now in the PreviewPlaform sections of a DDPI.ini file (separated by comma)
- Use the FriendlyName from the DDPI.ini directly in the platform preview menus, instead of counting on the friendly name of a ShaderPlatform
- IOS DDPI.ini as an example, with 3 DPs, generic IOS (what we had before), iPhone6S and iPadPro6
#rb michael.wanderson

[CL 29753922 by josh adams in ue5-main branch]
2023-11-15 13:58:07 -05:00
adam kinge
43d42d6d2b Required Metal changes to support iOS Simulator.
- add a new shader platform (SP_METAL_SIM) to support iOS Simulator specific compilation requirements
- update iOS sim #define WITH_SIMULATOR to WITH_IOS_SIMULATOR

#jira UE-168571
#rb carl.lloyd

[CL 26850475 by adam kinge in ue5-main branch]
2023-08-04 12:28:20 -04:00
carl lloyd
cb320ed6b4 Fixed bug where arrays were flattened when not using SM6, also marked SM6 as experimental
Enabled distance fields for the desktop renderer on iOS

#jira UE-190249

[CL 26436063 by carl lloyd in ue5-main branch]
2023-07-18 12:01:11 -04:00
marc audy
1b8e7f29c4 Rework GPUScene support on mobile platforms.
Platforms that do support uniform buffer objects can now provide batched primitive data through UBO. There is a limit UBO range that can be accessed in shaders, so we group instances into batches that fit into this limit. Switch uses 64KB views, other platfroms16KB views. For each primitive we allocate 512Bytes and 256Bytes for instance. Mobile platforms that do not support UBO will use a desktop version of GPUScene.
There are a few things that still missing: Dynamic mesh passes,  static lighting
#rb ola.olsson, benjamin.rouveyrol

[CL 26354848 by marc audy in ue5-main branch]
2023-06-30 16:34:38 -04:00
yuriy odonnell
b67c4cb749 Add bSupportsVertexShaderSRVs to DataDrivenShaderPlatformInfo which drives PLATFORM_SUPPORTS_VERTEX_SHADER_SRVS shader
* This should be used to guard any features that require explicitly accessing buffer or textures SRVs in vertex shaders

#rb Dmitriy.Dyomin
#rb Kenzo.Terelst

[CL 26207274 by yuriy odonnell in ue5-main branch]
2023-06-23 05:56:06 -04:00
serge bernier
7bf7dd423c 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 26018371 by serge bernier in ue5-main branch]
2023-06-15 13:27:44 -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
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
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
Florin Pascu
6b3c1469ba Preview Shader Platform using different ShaderMaps and the DDPI/Cvar values of the Previewable Actual Platform
NumPlatforms limit changed from 64 to 65536, limited by NumBits
#jira UE-120561
#rb Chris.Waters, Jack.Porter, Mihnea.Balta
#preflight 630f1604f92416fb92b373ab

[CL 21718179 by Florin Pascu in ue5-main branch]
2022-08-31 04:38:34 -04:00
Jack Porter
77d5f1a740 Fix incorrect ShaderFormat name in IOS DDPI causing issues when IOStore was enabled
#jira UE-158723
#rb Florin.Pascu
#preflight None

[CL 21054063 by Jack Porter in ue5-main branch]
2022-07-12 05:19:35 -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
Florin Pascu
09cb19fcfd Backout 20871665 to fix Mac cook
#rb none
#jira none
#preflight 62be0c68d94b57687c3ff309

[CL 20904999 by Florin Pascu in ue5-main branch]
2022-06-30 17:41:55 -04:00
Florin Pascu
1844e8e514 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 62bbf93ae353c20ac2361d94

[CL 20871665 by Florin Pascu in ue5-main branch]
2022-06-29 04:19:06 -04:00
rob krajcarski
650d9ff34f RHI function (and DataDrivenPlatform parameter) for whether shader atomics are supported for volume textures
#rb will.damon
#jira UE-142944
#preflight 6226578fb97fb949cf4f6891

[CL 19309214 by rob krajcarski in ue5-main branch]
2022-03-08 15:04:46 -05:00
christopher waters
d4829cc851 Backpedalling changes to data drive more settings. Turns out bIsMobile is more nuanced than I initially thought. Switching back to a few hardcoded shader platform uses until we can wrangle this better.
#jira none
#rb jack.porter, lukas.hermanns, rolando.caloca
#preflight 61a7d3ea1a368fd60390e3be

#ROBOMERGE-AUTHOR: christopher.waters
#ROBOMERGE-SOURCE: CL 18355791 in //UE5/Release-5.0/... via CL 18355843
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18355868 by christopher waters in ue5-release-engine-test branch]
2021-12-02 14:47:53 -05:00
christopher waters
cd8137cd4f Backing out changes for now so we can fix some global functions at the same time.
[Backout] - CL18340160
[FYI] christopher.waters
Original CL Desc
-----------------------------------------------------------------
Removing bIsMobile from METAL_MRT. This was incorrectly added when moving hardcoded shader platforms into DDPI.

#jira none
#rb none

#ROBOMERGE-AUTHOR: christopher.waters
#ROBOMERGE-SOURCE: CL 18340346 in //UE5/Release-5.0/... via CL 18340357
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18340376 by christopher waters in ue5-release-engine-test branch]
2021-12-01 11:52:39 -05:00
christopher waters
8e18093fc3 Removing bIsMobile from METAL_MRT. This was incorrectly added when moving hardcoded shader platforms into DDPI.
#jira none
#rb none
[FYI] [at]jack.porter, [at]will.damon

#ROBOMERGE-AUTHOR: christopher.waters
#ROBOMERGE-SOURCE: CL 18340160 in //UE5/Release-5.0/... via CL 18340181
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18340189 by christopher waters in ue5-release-engine-test branch]
2021-12-01 11:36:51 -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
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00