Commit Graph

13462 Commits

Author SHA1 Message Date
laura hermanns
fcd0debcbd Fix crash on empty string of preprocessed shader source.
#rb Dan.Elksnitis

[CL 26024402 by laura hermanns in ue5-main branch]
2023-06-15 16:15:45 -04:00
sebastien lussier
567b9098e9 FStaticMeshOperations::GenerateUniqueUVsForStaticMesh() - Fallback to AutoUV if UVs are invalid or missing
#rb patrick.enfedaque

[CL 26020789 by sebastien lussier in ue5-main branch]
2023-06-15 14:13:53 -04:00
steve robb
7f33f7f85b Lambda capture fixes ahead of perfect forwarding of lambda Execute*() arguments.
#rb devin.doucette

[CL 26019339 by steve robb in ue5-main branch]
2023-06-15 13:44:32 -04:00
vincent gauthier
761db7a355 Telemetry: Fix to Editor.Usage.PreferencesChanged event to pass the unlocalized Section name to get the same value no matter what the current language is.
#rb Logan.Buchy
#rnx

[CL 26016083 by vincent gauthier in ue5-main branch]
2023-06-15 11:31:53 -04:00
dan engelbrecht
3b62ce11ac Make sure zen data path is in Zen folder when following local DDC path
#rb zousar.shaker

[CL 26014809 by dan engelbrecht in ue5-main branch]
2023-06-15 10:51:32 -04:00
sebastien lussier
320ff53c05 Added MeshAutoUV to GeometryProcessingInterface
* Required for future changes to improve the mesh merging capability to cope with missing/invalid UVs when trying to perform material baking.
#rb ryan.schmidt

[CL 26014245 by sebastien lussier in ue5-main branch]
2023-06-15 10:37:22 -04:00
jamie dale
594089c442 Gather Verse for UGC localization
#rb Leon.Huang, david.punsetmartinez
#rnx

[CL 26012154 by jamie dale in ue5-main branch]
2023-06-15 09:23:55 -04:00
simon barratt
4f8613a16f Adjusted error localisation keys to be more specific (and not duplicated)
[CL 26007802 by simon barratt in ue5-main branch]
2023-06-15 06:01:08 -04:00
dan engelbrecht
46b88104b8 Return error if we receive a partial record from zenserver
#rb devin.doucette
#prefligth 648a3d2f88385dd88cfdda4a

[CL 26006460 by dan engelbrecht in ue5-main branch]
2023-06-15 04:54:40 -04:00
dan engelbrecht
20799c9f48 Store cooker computer remote ips in .projectstore
#rb zousar.shaker

[CL 26006400 by dan engelbrecht in ue5-main branch]
2023-06-15 04:51:13 -04:00
Rafa Lecina
254dcecc06 Fixes to be able to run tests on iOS
#review @Bertrand.Carre, @Michael.Kirzinger, @Chris.Constantinescu, @Stephen.Ma
#jira UE-166445

[CL 26006367 by Rafa Lecina in ue5-main branch]
2023-06-15 04:50:22 -04:00
marc audy
d1f48fc5c8 Fix implicit capture of this using [=] deprecated in C++20
#jira
#rnx

[CL 25989494 by marc audy in ue5-main branch]
2023-06-14 15:07:58 -04:00
guillaume abadie
80b3fd8eaa Makes default r.ScreenPercentage settings configurable in project settings per renderer
Motivations of this change:
1) Temporal upscale by default in game builds even when dynamic resolution is not supported;
2) Fixes "Editor Preferences > Performance > Viewport Resolution > Override game screen percentage settings with editor settings in PIE" or (r.Editor.Viewport.OverridePIEScreenPercentage) that used to override r.ScreenPercentage in PIE by default to prevent accidental out of video memory when going PIE on high resolution/DPI display that was not discoverable enought user and generating misunderstanding;
3) Makes editor UI more understandable that the resolution controls under Settings > Engine Scalability Settings is actually PIE resolution settings, since the editor viewport screen percentage is controled independently in editor viewport top left menus;
4) Fixes inconsistency where VR and mobile renderer viewport didn't have their own settings like path tracer or non-realtime editor viewports had;
5) Adds resolution quality presets: just a slider for the 3D rendering resolution is very subjective to a player what to choose, whereas presets allows to more intuitively suggests trade off on the screen percentage range.

What this changes does to the end user:
1) Implements default screen percentage project settings in Project Preferences > Rendering > Default Screen Percentage (or r.ScreenPercentage.Default.*) for each indivual uses case that are: desktop renderer, mobile renderer, VR rendering, path tracer
1.1) Desktop renderer renderer default to screen percentage based on display resolution to automatically temporally upscale;
1.2) All other rendering methods (mobile render, VR renderer, path tracer) defaults to native resolution rendering as before.
2) Adds editor viewport screen percentage settings for mobile renderer and VR in Project Settings > Editor Performance > Viewport Resolution
3) Changes defaults of sg.ResolutionQuality and r.ScreenPercentage to 0 and fallbacks to project settings' default screen percentage
4) Rewrite Level Editor UI > Settings > Engine Scalability Settings to:
4.1) Says it only apply to PIE viewport, not including Simulate in Editor since these is still viewed with editor viewports, and warn when there is no PIE game viewports;
4.2) Explicitly says what is the current screen percentage of the PIE game viewport;
4.3) Explicitly says what is the current rendering and display resolutions;
4.4) Says what rendering mode is being applied (Desktop renderer, mobile renderer, VR rendering, path tracer)
4.5) Says where the settings come from, r.ScreenPercentage was directly set by console code, or whether the Engine Scalability was overident (sg.ResolutionQuality>0) or where the default settings come from (project's default screen percentage settings or editor viewport preferences)
4.6) Says the actually setting is being used (Manual, Based on Display Resolution, Based on OS DPI Scale)
4.7) Explicitly says which anti-aliasing method is being used on the anti-aliasing scalability group
5) The "Editor Preferences > Performance > Viewport resolution > Override project's default screen percentage settings with editor viewports' settings in PIE" (r.Editor.Viewport.OverridePIEScreenPercentage) now chooses whether the default screen percentage project settings should be overriden by the editor viewport's default settings. sg.ResolutionQuality and r.ScreenPercentage now behaving as a override, it means they are also applied in PIE to avoid user confusions when they do indeed what to take control of it in the project settings or game logic.
6) Adds resolution quality presets in BaseScalability.ini that can be customised in a project's DefaultScalability.ini:
6.1) Default 3D resolution preset: Sets sg.ResolutionQuality=0 to end up using the default project settings presets which for the case of the desktop renderer means temporal upscaling by default based on the display resolution like Fortnite's Recommended settings.
6.2) Performance 3D resolution preset: Sets sg.ResolutionQuality=100*1080/2160
6.3) Balanced 3D resolution preset: Sets sg.ResolutionQuality=100*1260/2160
6.4) Quality 3D resolution preset: Sets sg.ResolutionQuality=100*1440/2160
6.5) Native 3D resolution preset: Sets sg.ResolutionQuality=100

#rb rob.srinivasiah, jack.porter, juan.canada, allan.bentham
#jira UE-184651

[CL 25988162 by guillaume abadie in ue5-main branch]
2023-06-14 14:28:12 -04:00
robert millar
e18844e14d Add -waitfordebugger argument matching to low level test runner to match editor/game arguments
#rb none

[CL 25986029 by robert millar in ue5-main branch]
2023-06-14 13:42:52 -04:00
dan engelbrecht
a46531dd35 Make sure record policy is set up correctly in batch requests to Zen
#rb devin.doucette

[CL 25982752 by dan engelbrecht in ue5-main branch]
2023-06-14 12:31:13 -04:00
dan engelbrecht
293e5fb421 Improved fallback logic and user feedback when datapath for zenserver is incorrectly configured
Validate that source files exists when trying to install zenserver

#rb zousar.shaker

[CL 25982456 by dan engelbrecht in ue5-main branch]
2023-06-14 12:24:33 -04:00
devin doucette
ab371b64e2 DDC: Fixed leaking cache store stats in the Zen cache
#jira UE-133395
#rb none
#rnx

[CL 25977512 by devin doucette in ue5-main branch]
2023-06-14 10:12:47 -04:00
Johan Berg
2f814b56e4 Allow swapping of watch and store directory.
Previously setting the store directory to the same directory as a watch directory was disabled. With this change the selected directory when set as store it is also automatically removed as watch directory.

#rb ionut.matasaru
#jira UE-184965

[CL 25977468 by Johan Berg in ue5-main branch]
2023-06-14 10:11:28 -04:00
dan elksnitis
00685561cc [shaders]
- Add option to independent preprocessing IShaderFormat API to allow a "secondary" preprocess & compile if a RequiresSecondaryCompile predicate implemented in the shader format returns true; this predicate takes as input the compile input, environment,  and the output of the first execution of the preprocess function. This is intended to handle the usage of UESHADERMETADATA pragmas (set in the preprocess output) by some backends to indicate a secondary compilation is required to target the variant hardware (setting additional #defines and potentially different compiler arguments). Other backends have an additional requirement that any stereo shaders also require separate compilation for each target, which can be handled by querying the FShaderCompilerEnvironment in this same predicate.
- Move the combining of outputs in the secondary compile case into the core shader system so it doesn't need to be copypasta'd in any shader format backends which require the aforementioned secondary compilation, exposing an API function which returns the particular "key" used to identify these combined shader outputs in the RHI.
- Rework the internal compilation/preprocess functions so a minimal amount of code needs to be wrapped in __try/__except (allowing objects with destructors to be created in the higher level functions).

#rb Massimo.Tristano

[CL 25977467 by dan elksnitis in ue5-main branch]
2023-06-14 10:11:27 -04:00
Jerome Delattre
81e77c198f Fix filtered out test results in automation window for the case when "Search" bar is not empty.
Introduce GetEnabledReports and GetFilteredReports; deprecated unspecific GetReports

#rnx
#fyi Oleg.Krasnov

[CL 25976576 by Jerome Delattre in ue5-main branch]
2023-06-14 09:46:24 -04:00
oleg krasnov
ae76461bc6 Implement auto expansion of subgroups that has only one child in SessionFrontend
#jira UE-187980
#rb jerome.delattre

[CL 25973143 by oleg krasnov in ue5-main branch]
2023-06-14 04:56:18 -04:00
ryan schmidt
d8dd1860d8 CombineMeshInstances: add support for passing unique mesh LOD chains as array of MeshDescriptions, as an alternative to passing UStaticMeshes.
#rb none

[CL 25971514 by ryan schmidt in ue5-main branch]
2023-06-13 23:13:47 -04:00
mike zyracki
5cacea9c44 Rotation Order: Sequencer: Control Rig: New Rotation Orders Add flag to Control RigelElements to specify whether not to use the preferred angles if we do we set them when setting control rig transforms if we are flipping eulers. We also directly set the preferred angles in particularly when coming from Sequencer. We currently use use the Setting preferrend angle values but have set it up so we may be able to override this later from the anmator. There was a bug with SetControlLocalTransform not flipping eulers due to the fact it has a different signature(missing the bPythonPrint flag) then SetControlGlobalTransform. Since ue has crazy right/left hand mix added some flags to the converion functions in the animation core library to specify we should keep the rotations in UE handyness when converting.
#jira UE-185156
#rb benoit.gadreau, helge.mathee

[CL 25969641 by mike zyracki in ue5-main branch]
2023-06-13 21:14:42 -04:00
devin doucette
d3b72ca4be DDC: Added ICacheStoreStats to the Zen cache
#jira UE-133395
#rb Zousar.Shaker
#rnx

[CL 25964028 by devin doucette in ue5-main branch]
2023-06-13 17:14:59 -04:00
ryan schmidt
59da8a7c59 CombineMeshInstances: Add IntersectSweptPlanarProjections mode, intersects 3 polygon-sweeps, which can produce good approximations of L-shape parts w/ holes. Added bAutoGenerateMissingUVs and bAutoGenerateTangents flags to FOptions, supported in impl. Updated settings on internal usage.
#rb none

[CL 25963273 by ryan schmidt in ue5-main branch]
2023-06-13 16:54:37 -04:00