Commit Graph

219 Commits

Author SHA1 Message Date
Matt Peters
7ad238a806 AssetRegistry includes (Engine/Source): change #include "AssetData.h" -> #include "AssetRegistry/AssetData.h", and similar for the other moved AssetRegistry headers.
#rb Zousar.Shaker
#rnx
#preflight 6270509a220f89f0ad573030

[CL 20016982 by Matt Peters in ue5-main branch]
2022-05-02 18:06:48 -04:00
Jerome Delattre
390cc73148 Fix Functional test not running when Navigation System is disabled (second try)
#jira UE-150518
#preflight 626c585a2c01a675267acd51
#rnx

[CL 20013634 by Jerome Delattre in ue5-main branch]
2022-05-02 15:31:40 -04:00
Jerome Delattre
e292dd8396 Change log output of Functional Test AssertTrue to be more explicit about its origine
#preflight 626c58d0b046e6ecc335acfe
#rb trivial
#rnx
#jira none

[CL 20007673 by Jerome Delattre in ue5-main branch]
2022-05-02 09:22:12 -04:00
Jerome Delattre
56a8b282ed Revert changelist 19968686
#preflight 626c42a7b046e6ecc32bbe16
#rb none
#rnx

[CL 19984701 by Jerome Delattre in ue5-main branch]
2022-04-29 16:09:41 -04:00
Jerome Delattre
bc133759da Fix Functional test not running when Navigation System is disabled
#jira UE-150518
#preflight 626a9a01b17dd9121b38099b
#rb Chris.Constantinescu

[CL 19968686 by Jerome Delattre in ue5-main branch]
2022-04-28 16:54:37 -04:00
guillaume abadie
57bcbe4c7c Disables dynamic res on automated screenshot tests
#rb trivial

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 19627950 via CL 19629834 via CL 19634036
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v938-19570697)

[CL 19635388 by guillaume abadie in ue5-main branch]
2022-04-05 19:23:53 -04:00
daniel coelho
0f0df12d27 USD: Improve reproducibility of automated tests.
Implement new function for switching view mode and visualize buffer before taking screenshots;
Screenshot individual buffers instead of using lighting on screenshot tests;
Fix import tests using whatever render context to import was serialized into the config for the import tests;
Disable geometry cache notification on other geometry cache tests;
Increase tolerance on test_pie_streaming_level to give more time for levels to stream in and out before checking for loaded actors;

#jira UE-138139
#rb Anousack.Kitisa, Jerome.Delattre
#preflight 620a448cd332bab853185b48

[CL 18977675 by daniel coelho in ue5-main branch]
2022-02-14 07:15:49 -05:00
Jason Nadro
135472bdb0 Adding functionality to compile remaining shaders for materials.
When running with ODSC in the editor Materials can have incomplete or partial shader maps.  In other words some shaders _might_ be missing.  If a render system requires all shaders to be present and can't use ODSC functionality to compile the necessary shaders we need a mechanism for compiling just the missing shaders.

- Added UMaterialInterface::CacheShaders() which is implemented for UMatetrial and UMaterialInstance.  The call is just forwarded along to CacheResourceShadersForRendering and InitStaticPermutation respectively.
- You can call CacheResourceShadersForRendering multiple times (even with a completed shader map) and it will not recache uniform expressions.  If the Resource's shader map is complete the function is a no-op.
- FObjectCacheContext can accept a UWorld and will only return primitives that are in that world.
- Added a function SubmitRemainingJobsForWorld(UWorld* World, EMaterialShaderPrecompileMode CompileMode) that will iterate all materials used by primitives in the world and compile the missing shaders.
- SubmitRemainingJobsForWorld() is used in various scenarios in the editor to ensure _all_ shaders are compiled for all materials before proceeding.
- Explicitly try to compile UI and PP materials.  Since we don't know which ones are used in the given world we just have to iterate all loaded ones.  This is a potential area of optimization.
- If there are already complete shader maps (if you are not running with the shader job cache), SubmitRemainingJobsForWorld is fast and results in a no-op for each material.

#rb Arciel.Rekman, Danny.Couture
#jira UE-136442, UE-136447
#preflight 61fc0e9c176256ec4f764206

[CL 18848560 by Jason Nadro in ue5-main branch]
2022-02-03 15:12:58 -05:00
guillaume abadie
b000ccbd8e Changes default screen percentage behavior in editor to take more advantage of TSR's upscaling behavior already enabled by default
1) Editor viewports now display at high DPI by default for better Gen5-console feeling in editor on high DPI monitors.

2) Realtime editor viewports now display at screen percentage based on the display pixel count. Fix screen percentage independent of the pixel range could either render not enough pixel at low display resolution or be too slow at high display resolution. Given the level editor viewport can scale in size based on editor user layout preference, monitor, the screen percentage automatically scalling based on display pixel count gives a better experience of quality consistency/GPU cost for rendering frame, especially when going level editor fullscreen with F11 or not. The curve to compute rendering resolution from display resolution is in BaseEngine.ini

3) Non-realtime editor viewports still display at a screen percentage based on OS DPI scale, independent of the display pixel count because use spatial upscaler and therefore need consistent sharpness not worst than editor fonts, but keep same rendering resolution as before to not increase out of GPU memory errors. The performance of potentially rendering at high resolution than a realtime viewport is ignored given the non real-time viewports are not rendering every frame.

4) PIE viewports now override r.ScreenPercentage by default to have consistent resolution quality and performance between realtime editor viewport and gameplay viewport by default without risk of introducing out of GPU memory errors loosing possibly unsaved editor work if the game's graphic settings default to a screen percentage higher. To advertise discoverability of this change, any update to the r.ScreenPercentage cvar will lead to a message display in console/log if overriden by editor settings or dynamic resolution settings.

5) As much as a project can change the default anti-aliasing method, can also configure on a per project basis the default screen percentage behavior in project preference that the editor user can then override locally for his/her own use with his editor settings. For instance mobile only or forward renderer MSAA only video games.

6) When working very high end work-in progress rendering tech project in a econemic context where lattest GPUs are hard to get, the range of GPU performance can vary greatly between contributor of the same projects. To provide more robustness for lowerend GPU of collegues with tech not yet scaling, the project settings now offer a MaxRenderingResolution for editor viewports that can also be overriden on a per user basis.

7) Automated screenshot already takes care of forcing r.ScreenPercentage.

#rb none
#preflight 61e58d4a873f2ea48f33facd

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 18633512 in //UE5/Release-5.0/... via CL 18633532 via CL 18633538
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v899-18417669)

[CL 18637384 by guillaume abadie in ue5-main branch]
2022-01-18 04:31:45 -05:00
rob krajcarski
274808bedc Fix for double delete with FAutomationScreenshotTaker
#rb jerome.delattre
#jira UE-120521
#preflight 61e05b0f341d372424dc1bc3

#ROBOMERGE-AUTHOR: rob.krajcarski
#ROBOMERGE-SOURCE: CL 18600492 in //UE5/Release-5.0/... via CL 18600519 via CL 18600549
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v899-18417669)

[CL 18601184 by rob krajcarski in ue5-main branch]
2022-01-13 14:17:14 -05:00
patrick boutot
bd386a95d6 Hide the debug messages for FunctionalTest.
[FYI] jerome.delattre
#jira UE-138228
#preflight 61d70a18af44b4362812f584

#ROBOMERGE-AUTHOR: patrick.boutot
#ROBOMERGE-SOURCE: CL 18531742 in //UE5/Release-5.0/... via CL 18531753
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18531767 by patrick boutot in ue5-release-engine-test branch]
2022-01-06 10:57:42 -05:00
jon nabozny
cdc65f654f Reland: Fixes motion blur lengths when using time dilation
#rb josie.yang
#lockdown michal.valient
#preflight 614a44526c96990001c47143

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17606608 via CL 17962735 via CL 18364937 via CL 18364960
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18365023 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:53:56 -05:00
jon nabozny
9693ad4915 Undo //UE5/Private-Frosty/Engine/... changelist 17586431
#lockdown michal.valient
#preflight revert for build breakage

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17587410 via CL 17948832 via CL 18364580 via CL 18364616
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364712 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:34:52 -05:00
jon nabozny
c418c40de0 Fixes motion blur lengths when using time dilation
#rb josie.yang
#lockdown michal.valient
#preflight 614a1e3259380f0001888d92

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17586431 via CL 17948712 via CL 18364381 via CL 18364522
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364604 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:30:35 -05:00
matt peters
e2962f88c9 SavePackage: Deprecate Conform and DiffMap arguments, and change the interface to use a FSavePackageArgs struct instead of a large number of separate arguments.
#rb Francis.Hurteau
[RN] Core, Minor

#ROBOMERGE-AUTHOR: matt.peters
#ROBOMERGE-SOURCE: CL 18279152 in //UE5/Release-5.0/... via CL 18279174
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18279186 by matt peters in ue5-release-engine-test branch]
2021-11-23 20:56:06 -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
aurel cordonnier
69fe095547 Merge from Release-Engine-Staging @ 17636544 to Release-Engine-Test
This represents UE4/Main @17638339 and Dev-PerfTest @17636504

[CL 17638842 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-27 19:54:25 -04:00
geoff evans
e9480fc01f Update AutomationController Log settings
Introduce bElevateLogWarningsToErrors as a good name for existing functionality. Note it's assuming the name as it's known by its customer code. This change lines up the settings variable to its colloquial name around the codebase.

Deprecate bTreatLogWarningsAsTestErrors as it was misleading because it doesn't really shuffle log warnings into the test errors bucket as much as it just reclassifies the log verbosity from log warning to log error.

Remove bTreatLogErrorsAsTestErrors as it wasn't functional outside of EditorIterationTest's custom base class, and it's tempting to use incorrectly in place of bSuppressLogErrors

#rnx
#jira none
#rb andrew.grant
#preflight 6142442c4778fa000135b987

#ROBOMERGE-AUTHOR: geoff.evans
#ROBOMERGE-SOURCE: CL 17526549 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17526590 by geoff evans in ue5-release-engine-test branch]
2021-09-15 16:52:23 -04:00
zousar shaker
836bd0854d Automated search-and-replace pass to change uses of UE_TRANSITIONAL_OBJECT_PTR(Type) to TObjectPtr<Type>.
There were two instance of the type being incorrect and they were manually fixed.

#rb none

#ROBOMERGE-AUTHOR: zousar.shaker
#ROBOMERGE-SOURCE: CL 17472048 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17472069 by zousar shaker in ue5-release-engine-test branch]
2021-09-09 10:07:44 -04:00
aurel cordonnier
7f517562d5 Merge from Release-Engine-Staging @ 17438845 to Release-Engine-Test
This represents UE4/Main @17430120 and Dev-PerfTest @17437669

[CL 17439044 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-06 12:23:53 -04:00
andriy tylychko
6bf3101dcd deprecated FTicker and family and replaced by thread-safe FTSTicker
#jira UE-120090
#rb francis.hurteau


#ROBOMERGE-SOURCE: CL 17176325 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17176374 by andriy tylychko in ue5-release-engine-test branch]
2021-08-16 11:09:22 -04:00
ben woodhouse
1c445ddfe3 Back out changelists 16059845 and 16061420 to fix issues with AI functional tests
#jira FORT-393194
#rb Mieszko.Zielinski

#ROBOMERGE-SOURCE: CL 16942883 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)
#ROBOMERGE[bot1]: dev-perftest

[CL 16942892 by ben woodhouse in ue5-release-engine-test branch]
2021-07-23 18:38:32 -04:00
guillaume abadie
eadb45ef37 Replaces r.PostProcessAAQuality with r.FXAA.Quality & r.TemporalAA.Quality
Now only r.AntiAliasingMethod prevails to selects the anti-aliasing method explicitly for the deferred shading renderer. Each AA technic have it's own cvars to control their quality independently

FXAA now have its own r.FXAA.Quality. The FXAA shader permutations where mis configured with r.PostProcessAAQuality=1 & 2 both mapping to the FXAA_PC_CONSOLE=1 that is now r.FXAA.Quality=0. Instead r.FXAA.Quality now offer more mid-quality settings for FXAA_PC=1 with r.FXAA.Quality=1 & 2 & 3. Backward comaptible migration is as followed:
- r.AntiAliasingMethod=1 r.PostProcessAAQuality=0 -> r.FXAA.Quality=0
- r.AntiAliasingMethod=1 r.PostProcessAAQuality=1 -> r.FXAA.Quality=0
- r.AntiAliasingMethod=1 r.PostProcessAAQuality=2 -> r.FXAA.Quality=0
- r.AntiAliasingMethod=1 r.PostProcessAAQuality=3 -> r.FXAA.Quality=3 but with some neighborhood search setting changed in FXAAShader.usf
- r.AntiAliasingMethod=1 r.PostProcessAAQuality=4 -> r.FXAA.Quality=4
- r.AntiAliasingMethod=1 r.PostProcessAAQuality=5 -> r.FXAA.Quality=5

TAA now have its own r.TemporalAA.Quality. Backward compatible migration is as followed:
- r.AntiAliasingMethod=2 r.PostProcessAAQuality=0 -> r.AntiAliasingMethod=0
- r.AntiAliasingMethod=2 r.PostProcessAAQuality=1 -> r.AntiAliasingMethod=1 r.FXAA.Quality=0
- r.AntiAliasingMethod=2 r.PostProcessAAQuality=2 -> r.AntiAliasingMethod=1 r.FXAA.Quality=0
- r.AntiAliasingMethod=2 r.PostProcessAAQuality=3 r.TemporalAAUpsampleFiltered=0 -> r.TemporalAA.Quality=0
- r.AntiAliasingMethod=2 r.PostProcessAAQuality=3 r.TemporalAAUpsampleFiltered=1 -> r.TemporalAA.Quality=1
- r.AntiAliasingMethod=2 r.PostProcessAAQuality=4 -> r.TemporalAA.Quality=2

MSAA r.AntiAliasingMethod=3 & TSR r.AntiAliasingMethod=4 remains unchanged.

sg.AntiAliasingQuality now maps to different r.TemporalAA.Quality or r.FXAA.Quality

Automated tests on base CL: https://horde.devtools.epicgames.com/job/60d5b8410123b700014f9db5
Automated tests on change CL: https://horde.devtools.epicgames.com/job/60d47cde57b302000114bebf

#rb none
[FYI] jack.porter, wei.liu
#lockdown michal.valient

#ROBOMERGE-SOURCE: CL 16823623 via CL 16823646
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16823657 by guillaume abadie in ue5-release-engine-test branch]
2021-07-12 07:13:12 -04:00
guillaume abadie
1b502fd981 Implements r.AntiAliasingMethod
#rb none
#preflight 60d33c8cd9586b000132acac

#ROBOMERGE-OWNER: guillaume.abadie
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 16758022 via CL 16758023
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)
#ROBOMERGE-CONFLICT from-shelf

[CL 16758219 by guillaume abadie in ue5-release-engine-test branch]
2021-06-23 11:54:40 -04:00
Jerome Delattre
aa9c726b34 Use GetActorLabel instead of GetName when taking Screenshot with functional test
Actor Name is a property that user can't change directly from the Outliner now. To keep to ScreenshotFunctionalTest actor behavior seamless for the user, we use the actor label instead.
A property is introduced to hold the Actor name on the Client build.

+ update all the necessary screenshot names.

#jira UE-114551
#rb Andrew.Grant, JeanFrancois.Dube, William.Ewen
#rnx

[CL 16152859 by Jerome Delattre in ue5-main branch]
2021-04-28 22:51:13 -04:00