Commit Graph

188 Commits

Author SHA1 Message Date
christopher waters
9528ba3b7a Moving WindowsTargetPlatform headers to Public for even wider access.
[CL 24372050 by christopher waters in ue5-main branch]
2023-02-22 18:03:13 -05:00
christopher waters
aa19fcb984 Moving some headers to an Internal path.
Touching the build.cs to invalidate the old paths.

[CL 24371987 by christopher waters in ue5-main branch]
2023-02-22 18:01:27 -05:00
christopher waters
6e30ddb01e Dependency cleanup around DataDrivenShaderPlatformInfo and a few other headers.
#preflight 63921e6a67018b14b5925197

[CL 23454104 by christopher waters in ue5-main branch]
2022-12-08 15:35:35 -05:00
Zak Middleton
73efd27f6c #ue5 - Truncation fixes for modules:
StatsViewer
StatusBar
TargetDeviceServices
TargetPlatform
Teleporter
TimeManagement
TranslationEditor
ViewportInteraction
Virtualization
WindowsPlatformFeatures
WindowsTargetPlatform

#jira UE-160837, UE-160843
#rb Andrew.Davidson, Dave.Jones2
#preflight 636024751c75ff834a526197

[CL 22873932 by Zak Middleton in ue5-main branch]
2022-10-31 18:33:27 -04:00
Yuriy ODonnell
e741d25317 Add CVar r.RayTracing.RequireSM6 (default=0) to explicitly control when ray tracing shaders/features should be available, instead of relying on project target platform shader model settings. This is required because target platform settings are not available when running a packaged game.
The engine uses GRayTracingPlaformMask to compute ShouldCompilePermutation() for shaders. This is filled based on platform settings and capabilities when running the editor. When running a standalone game, the mask is filled purely based on whether ray tracing is enabled for the project (r.RayTracing) and the current runtime environment supports it (GRHISupportsRayTracing).

The new CVar is meant to be consistent between the cook time and run time. This is achieved by setting GRHISupportsRayTracing=false when running on SM5 if r.RayTracing.RequireSM6 is 1.

#rb christopher.waters
#preflight 631f8c8680642a7fa783ca18
#jira UE-163012

[CL 21971785 by Yuriy ODonnell in ue5-main branch]
2022-09-12 16:27:08 -04:00
david harvey
10b05a8cf3 Capture platform-specific project analytics for launching, cooking & packaging in the editor.
#jira UE-142191
#rb Brian.White, Wojciech.Krywult
#preflight 6319a11bd135b61bc5f729c9

[CL 21907474 by david harvey in ue5-main branch]
2022-09-08 19:33:14 -04:00
christopher waters
0a6873668c The Windows Feature Level checkboxes should prompt the user to restart.
#jira UE-156930
#rb mihnea.balta, kenzo.terelst
#preflight 62fba5c0cf7afa018ba1feda

[CL 21405137 by christopher waters in ue5-main branch]
2022-08-16 10:59:06 -04:00
Dmitriy Dyomin
f00c0a426b Remove support for a landscape baked mesh which was used for mobile platforms only
#jira none
#rb jonathan.bard
#preflight 62d769cdbc175ec68cee67d0

[CL 21171586 by Dmitriy Dyomin in ue5-main branch]
2022-07-19 23:03:12 -04:00
jimmy smith
b92f1fdf0d Configuration support for AudioInfos / AudioFormats per platform
#jira UE-159832
#rb Aaron.mcleran Phil.Popp Dan.Thompson Josh.Adams
#preflight 62d260033c3df323907eaa93

[CL 21153330 by jimmy smith in ue5-main branch]
2022-07-18 17:47:55 -04:00
Yuriy ODonnell
6bea9a80b6 Always support ray tracing shaders when cooking for SM6
* RT shaders are still excluded from SM5 if project is configured to not cook SM5 shaders for D3D12

#rb chris.kulla
#jira UE-158270
#preflight 62d1d478e468fcfd0b97d55a

[CL 21117293 by Yuriy ODonnell in ue5-main branch]
2022-07-15 17:23:41 -04:00
yuriy odonnell
cadadf9780 Add "TargetedRHIs" to the list of settings evaluated in GetRayTracingShaderFormats()
* This is necessary because some (pre UE 5.1) projects use this instead of D3D12TargetedShaderFormats, etc.

#rb jason.nadro
#jira UE-158270
#preflight 62c47a332f31b87c6c91fb52

#ROBOMERGE-AUTHOR: yuriy.odonnell
#ROBOMERGE-SOURCE: CL 20947047 via CL 20947122 via CL 20947433
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20950739 by yuriy odonnell in ue5-main branch]
2022-07-05 17:48:45 -04:00
yuriy odonnell
07aeb4900e Exclude ray tracing shaders from SM5 if it's disabled for D3D12
* Add ITargetPlatform::GetRayTracingShaderFormats(), with default implementation that falls back to GetAllTargetedShaderFormats() if HWRT is enabled for a platform
* Override GetRayTracingShaderFormats() for TGenericWindowsTargetPlatform to return only enabled D3D12 and VK shader formats (excluding D3D11)
* Use GetRayTracingShaderFormat() and UsesRayTracing() to configure GRayTracingPlaformMask (the mask contains one bit per shader platform)

Previously all bits of GRayTracingPlaformMask were set if project uses ray tracing, then shader platform bits were disabled for all possible shader formats for platforms that don't support ray tracing.
If SM5 was disabled for D3D12, ray tracing shaders would still get compiled for it because the corresponding bit was still set in GRayTracingPlaformMask.

With this change, SM5 bit will no longer be set in GRayTracingPlaformMask in the editor if it is disabled for D3D12 RHI for the project, so ray tracing shaders won't be compiled.
When running a packaged build, GRayTracingPlaformMask is now set to 0 or 1 based on global project setting (r.RayTracing) and whether the current machine+RHI supports ray tracing.

#rb christopher.waters, jason.nadro
#preflight 62bd0dea3f0d6beee259b636

#ROBOMERGE-AUTHOR: yuriy.odonnell
#ROBOMERGE-SOURCE: CL 20897852 via CL 20898485 via CL 20899239
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20901755 by yuriy odonnell in ue5-main branch]
2022-06-30 15:44:00 -04:00
charles bloom
f9ebb7fd57 remove unused bSupportDX11TextureFormats in WindowsTargetPlatform
#rb none
#preflight none

[CL 20348934 by charles bloom in ue5-main branch]
2022-05-24 11:23:44 -04:00
charles bloom
0d6b70e857 fix TargetPlatform calls to GetDefaultTextureFormatNamePerLayer changed by 20227025
the bad value passed to BlockSize was not actually used so behavior was not actually broken

#preflight 628bb9cc016e5daa1cbc21e5
#rb jon.olick

[CL 20335399 by charles bloom in ue5-main branch]
2022-05-23 15:28:40 -04:00
christopher waters
8d8c05f497 Reworking shader platform settings on Windows to be per-RHI. This removes the ill-fated "min/max feature level" configs that were just causing confusion.
On Windows, "TargetedRHIs" is now split into "D3D11TargetedShaderFormats", "D3D12TargetedShaderFormats" and "VulkanTargetedShaderFormats". "TargetedRHIs" is still parsed for backwards compatibility.
Using this, projects can now be more easily configured for D3D12-only or even Vulkan-only.
Updated FShaderFormatsPropertyDetails to use FName instead of FString for shader platforms. Also added a filtering method for mixed RHI platforms like Windows.

#jira none
#rb mihnea.balta, josh.adams
#preflight 6287cbf46c7692ac8cc8805f

[CL 20300786 by christopher waters in ue5-main branch]
2022-05-20 15:09:09 -04:00
Jon Olick
0a7be0f773 Removed bSupportDX11TextureFormats, functionality is no longer necessary. Pushed functionality of bSupportDX11TextureFormats down to target platform code.
#preflight 6282816acf7e4667a999a6ea

[CL 20227025 by Jon Olick in ue5-main branch]
2022-05-16 13:05:50 -04:00
Josh Adams
a28f038a2c - Fix for Streamdeck devices showing up under WinGDK platform
#rb nuno.leiria
#preflight 627439a02e58cb727d0caa66

[CL 20064649 by Josh Adams in ue5-main branch]
2022-05-05 17:07:31 -04:00
Joe Kirchoff
ef9cb95ddf Deprecate VS2017 source code accessor
#rnx
#rb trivial
#jira UE-97614
#preflight 624b404dc667881bf42bbddc

[CL 19613373 by Joe Kirchoff in ue5-main branch]
2022-04-04 15:06:27 -04:00
dmitriy dyomin
d5741f624b Added option to disable usage of a baked landscape mesh on mobile platforms (r.Mobile.LandscapeMesh)
#rb jack.porter

#ROBOMERGE-OWNER: dmitriy.dyomin
#ROBOMERGE-AUTHOR: dmitriy.dyomin
#ROBOMERGE-SOURCE: CL 19528072 via CL 19528235 via CL 19528695 via CL 19528703
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v937-19513599)

[CL 19532768 by dmitriy dyomin in ue5-main branch]
2022-03-28 16:28:57 -04:00
Josh Adams
1135fdcfd4 - Windows and Linux SteamDeck devices in C++
#preflight 623901536c69188bd9928f54

[CL 19459810 by Josh Adams in ue5-main branch]
2022-03-21 19:07:30 -04:00
Josh Adams
58f5121a45 - Moved SteamDeckDevice.h to DesktopPlatform so that Windows and Linux can share it, without making a whole module for one header
#rb brandon.schaefer
#jira none
#preflight 6238eb85ec68595f3b7c42df

[CL 19458311 by Josh Adams in ue5-main branch]
2022-03-21 17:23:57 -04:00
brandon schaefer
5141cd3106 Add initial support for Deploying Windows games to the SteamDeck through .ini entries
#jira UE-145123
[REVIEW] [at]Josh.Adams
#rb Josh.Adams, David.Harvey
#preflight 6230b118f33750e39249d834

#ROBOMERGE-OWNER: brandon.schaefer
#ROBOMERGE-AUTHOR: brandon.schaefer
#ROBOMERGE-SOURCE: CL 19389680 in //UE5/Release-5.0/... via CL 19391874
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19402230 by brandon schaefer in ue5-main branch]
2022-03-16 03:01:51 -04:00
christopher waters
d122308b2d Adding Min/Max FeatureLevel configs for Windows D3D11, D3D12 and Vulkan.
This unifies a few Performance Mode settings together and now allows a project to restrict D3D12 to SM6 only.

#rb mihnea.balta, josh.adams
#preflight 622f83adc51b66df4c210b1e

#ROBOMERGE-AUTHOR: christopher.waters
#ROBOMERGE-SOURCE: CL 19376538 via CL 19376631
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19378054 by christopher waters in ue5-main branch]
2022-03-14 16:32:20 -04:00
maxwell hayes
d08b31e66f Removing AudioStreamingThreshold platform setting (has no effect).
#jira UE-126579
#rb Aaron.McLeran
#preflight 62192ad3f014007cf8ba9122

#ROBOMERGE-AUTHOR: maxwell.hayes
#ROBOMERGE-SOURCE: CL 19161705 in //UE5/Release-5.0/... via CL 19161949
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19162055 by maxwell hayes in ue5-main branch]
2022-02-25 20:14:55 -05:00
charles bloom
b4fcb0ac37 enable BC6+7 texture support in games that use the ES3.1 RHI
ES3.1 is used as a fast renderer mode, but still supports DX11 textures
log a message when BC6+7 is encoded as uncompressed
delete the unused GetVirtualTextureLayerFormat

#preflight 62168881476ef5d8a206b828
#rb jeremy.moore

#ROBOMERGE-AUTHOR: charles.bloom
#ROBOMERGE-SOURCE: CL 19100346 via CL 19105003 via CL 19105192 via CL 19110090
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19148337 by charles bloom in ue5-main branch]
2022-02-25 10:57:32 -05:00