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]
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]
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971
[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
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]
Added a high level define (WITH_AUTOMATION_TESTS) that is set when thier WITH_DEV_AUTOMATION_TESTS or WITH_PERF_AUTOMATION_TESTS is set).
This allows support code to be wrapped in a single define and the WITH_DEV / WITH_PERF macros used for simply including/excluding test definitions.
#jira UE-89839
#rb na
#tests compiled UE4Game in dev/test/shipping
#ROBOMERGE-SOURCE: CL 11843115 in //UE4/Release-4.25/... via CL 11843116
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)
[CL 11843119 by andrew grant in Main branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870584 by ryan durand in Main branch]
Automation - Adding more options for forcing and waiting for loading and streaming to finish and more utilities for waiting for that to happen entirely for tests.
Lauren.Ridge
#ROBOMERGE-OWNER: lina.halper
#ROBOMERGE-AUTHOR: nick.darnell
#ROBOMERGE-SOURCE: CL 5382989 via CL 5383481 via CL 5383540
#ROBOMERGE-BOT: ANIM (Main -> Dev-Anim)
[CL 5385045 by nick darnell in Dev-Anim branch]
Automation - Adding more options for forcing and waiting for loading and streaming to finish and more utilities for waiting for that to happen entirely for tests.
Lauren.Ridge
#ROBOMERGE-SOURCE: CL 5382989 via CL 5383481
[CL 5383540 by nick darnell in Main branch]
#lockdown Nick.Penwarden
#rb JeanMichel.Dignard
============================
MAJOR FEATURES & CHANGES
============================
Change 3770717 by Simon.Tourangeau
Fix Blank Enterprise template project creation
Change 3773186 by Simon.Tourangeau
Fix asset migration to correctly handle the migration of content from Content Plugins
Change 3773230 by JeanLuc.Corenthin
Adding new material asset for CAD importer
Removing old material assets for CAD importer
Change 3774391 by JeanMichel.Dignard
Added support for IES asymmetrical light profile
- IES textures are now 2D (256*256) and the shader will use the light tangent to sample the texture.
- Point light tangent is now the Z axis to match the spot lights. Tube shaped point lights will be automatically rotated to compensate for this change. Dynamically generated point lights with a source length will need to have a 90 degrees pitch added to their orientation.
#jira UEENT-55
Change 3775668 by JeanMichel.Dignard
Fixed linux and mac editor builds. Use FVector::DotProduct instead of Dot3 since we're using FVectors.
Change 3781147 by Jamie.Dale
[Python] Prevent the Xcode version of Python being used by default
Change 3781991 by JeanMichel.Dignard
Send the IES texture profile to lightmass in a separate TArray to fix warning 6262 about using too much stack during static analysis.
Change 3783479 by Simon.Tourangeau
Fix NewProjectWizard crash if starter content was enabled
#jira UEENT-635
Change 3784279 by Jamie.Dale
[Python] Added ScopedEditorTransaction and an editor specific module
Change 3787566 by JeanLuc.Corenthin
Fixed issue with display of units which were not reflecting the project settings when enbling unit display.
Got Jamie Dale to help me find the correct solution to this problem: a lambda function.
Thanks, Jamie!
Change 3788178 by Martin.Sevigny
Make sure that FLightPropagationVolume is properly initialized before using it. Can currently trigger a check in FProjectedShadowInfo::SetupWholeSceneProjection because of an uninitialized BoundingBox if LPVIntensity is saved at 0.
Solves: https://udn.unrealengine.com/questions/354040/switching-gi-lpvs-at-runtime.html
Change 3788301 by JeanLuc.Corenthin
On behalf of Anousack:
UE assets necessary to properly handle Cropped procedural textures.
#jira UEENT-522
Change 3789146 by Martin.Sevigny
Bringing back the LPVIntensity test as per MarcusW review.
Change 3789467 by Patrick.Boutot
Add Analytics to PythonScriptPlugin.
Change 3789473 by Patrick.Boutot
Add a slow task dialog when executing a Python script.
Change 3790809 by Patrick.Boutot
Add GIsRunningUnattendedScript. If true, we are running an editor script that should not prompt any dialog modal. The default value of any model will be used. This is used when running a Blutility or script like Python and we don't want an OK dialog to pop while the script is running. Could be set for commandlet with -RUNNINGUNATTENDEDSCRIPT
Change 3790970 by Patrick.Boutot
Add SavePackages with Dialog version in EditorLoadingAndSavingUtils. Refactor some internal save & checkout function in FileHelpers to prevent dialogs from showing when it was not requested.
Change 3790976 by Patrick.Boutot
Add RenameAssetsWithDialog to AssetTools. All previous implementation now use the WithDialog version.
Allow DeleteObject & DuplicatedAsset to be completed without dialog.
Change 3791597 by Simon.Tourangeau
Fix custom window positions in "windowed mode"
#jira UE-52873
Change 3791633 by Patrick.Boutot
Expose to Blueprint the actor' label and folder path.
Change 3791634 by Patrick.Boutot
Change size of the OutputLog's SuggestionList box.
Change 3791637 by Patrick.Boutot
Make sure the suggestions panel is closed before executing the command. Some command wants to run dialog and the suggestions panel may prevent it from opening.
Change 3791661 by Jamie.Dale
[Python] Fixed a bug where we could return an object of the incorrect type from the cache
This could happen if the same instance pointer actually represented two different things, such as when a struct had a different struct as its first member as both of those have the same address, but reflect two different things.
We now treat the type as significant in the cache, and only return something if it matches both the instance and the type.
#jira UEENT-651
Change 3794968 by Patrick.Boutot
Extend File menu to include Python menu. Save the last 10 scripts executed in the user config.
Change 3795084 by Jamie.Dale
[Python] Added a way to purge all references to a given UObject (or set of UObjects) from any living Python objects
Change 3795324 by Jamie.Dale
[Python] Ensure that Python objects referencing the current world/level are purged when the active world/level is changed
This is needed to avoid a fatal assert about a GC leak
#jira UEENT-658
Change 3796248 by Jamie.Dale
FilterAssetDataWithNoTags no longer implicitly removes localized assets
Change 3773185 by Simon.Tourangeau
Move DatasmithImporter plugin content to a content-only plugin under Engine/Plugins/Enterprise/DatasmithContent
This makes it possible to load content created with the DatasmithImporter without having access to Enterprise plugins.
#jira UEENT-544
Change 3790982 by Patrick.Boutot
Set GIsRunningUnattendedScript to EditorScriptUtilities callable functions.
Load level without a prompt.
Change 3791539 by Jamie.Dale
[Python] Added ScriptName and ScriptNoExport meta-data to allow control over how things are exposed to scripts
ScriptName can be used to override the basic name we use when converting classes, structs, enums, properties, and functions to their Python names. It has been used here to remove all the K2_ and BP_ prefixes, and to remove Kismet and Blueprint from some library names.
ScriptNoExport can be used to prevent a property or function from exporting to Python. It has been used here to prevent exporting some deprecated functions that had names that would conflict if we stripped off the K2_ prefix of some newer functions (there were only a handful of these cases).
Change 3773163 by Patrick.Boutot
Improve ConvertActors implementation. Check if the StaticMesh path is valid and do not use dialog in the case we are converting a Brush to a StaticMesh.
Change 3776401 by Patrick.Boutot
Add function to spawn and destroy an actor in editor mode. Spawn use the Place functionality of the editor, you can spawn from an asset, class, archetype or factory.
Change 3778137 by Patrick.Boutot
Add 2 functions to EditorAssetLibrary. GetPathNameForLoadedAsset, wrapper for UObject.GetPathName(). FindPackageReferencersForAsset similar to AssetRegistry.FindPackageReferencer. It will load the assets and all the referencers to confirm the reference.
EditorAssetLibrary now support full path.
Change 3778139 by Patrick.Boutot
Update example data for EditorScriptingUtilities.
Change 3778768 by Patrick.Boutot
Update EditorScriptingUtilities py file with the new naming convention.
Change 3779291 by Patrick.Boutot
Remove const& on TSubLassOf because Blueprint do not show the Pick tool with it.
Update py script & blueprint to point to the new paths.
Change 3783246 by Patrick.Boutot
After review. Tech art prefer to have a filter that check the class and not have the class pass as argument for GetAllLevelActor.
Fix return type in Blueprint for SpawnActorFromClass.
Change 3789367 by Patrick.Boutot
Gets all TagValues associated with an asset as strings value.
Change 3789438 by Patrick.Boutot
Split EditorLevelLibrary into EditorFilterLibrary. All filter function are now in their own modules.
Change 3789489 by Patrick.Boutot
Update script examples with copyright and with the split from EditorFilterLibrary.
Change 3790980 by Patrick.Boutot
Prevent all dialog modal from showing up when running a Python script via command line.
Change 3790984 by Patrick.Boutot
Fix typo in content_browser.py. Delete asset with the loaded version. Fix double values initialized by float.
[CL 3797855 by Simon Tourangeau in Main branch]
#rb
#lockdown Nick.Penwarden
============================
MAJOR FEATURES & CHANGES
============================
Change 3776794 by Chris.Bunner
Fixed inverted check.
Change 3778396 by Chris.Bunner
By default functional screenshot tests now enable camera cut and a fixed tonemap/exposure.
Existing tests in PostProcessing have had the FixedTonemapping flag disabled.
Updated all existing screenshots against the new fixed gamma ground truth.
Change 3778592 by Chris.Bunner
Updating PostProcess screenshots that managed to collide mid P4 add.
Change 3778793 by Chris.Bunner
Override the secondary screen percentage (used for high DPI) when taking screenshots. This is necessary for consistent results between machines.
Change 3781715 by Chris.Bunner
Updating Windows screenshots.
Change 3781717 by Chris.Bunner
Fixes for eye adaptation and tonemapping override consistency between test types and run modes.
Change 3783199 by Chris.Bunner
Added separate add/replace screenshot buttons to know if we're working with a matching platform tier or a fallback.
Change 3783228 by Chris.Bunner
When incoming screenshots are different sizes create a delta of the minimum shared dimensions but still force a failure. The UI is more consistent showing any delta, even if it's almost pure white.
Change 3783712 by Chris.Bunner
Rebuilt translucency lighting test map and updated screenshot results.
Change 3784010 by Chris.Bunner
Adding Mac-specific PostProcessing screenshots.
Change 3787456 by Chris.Bunner
Improving name matching consistency of test blacklist entries.
Change 3787522 by Chris.Bunner
Updating Mac-specific screenshots.
Change 3787583 by Chris.Bunner
Updating Mac-Specific screenshots.
Change 3787832 by Chris.Bunner
Fixing-up NaNs in two saved level's HLOD world settings.
Change 3789147 by Chris.Bunner
Updating Sequencer sub-levels which still had NaNs in World Settings.
Change 3791454 by Chris.Bunner
Deleted ancient screenshot re-introduced by Fortnite merge.
Change 3781713 by Chris.Bunner
Updating platform unique screenshots - Tessellation, fixed vs variable screenshot size, Niagara simulation.
Change 3776756 by Chris.Bunner
Initial pass at hierarchical screenshot testing.
Deleted existing platforms automated test screenshots.
Change 3784051 by Chris.Bunner
Updated CableActor screenshots for new capture defaults.
Change 3787092 by Chris.Bunner
Added blacklist as "AutomationTestBlacklist" in Engine.ini.
Formatting fix-up in existing automation test config.
Removed workaround cvar for physicalized animation tests failing on platforms.
[CL 3792526 by Chris Bunner in Main branch]