Commit Graph

2473 Commits

Author SHA1 Message Date
tuo chen
d15933ed78 Add mobile lens flare pass
#rb Dmitriy.Dyomin
#jira UE-199859
#fyi Jack.Porter

[CL 29590352 by tuo chen in ue5-main branch]
2023-11-09 01:49:15 -05:00
julien stjean
25464356b6 Imrpovement to the GenerateNaniteDisplacedMesh commandlet.
Added an recursive actor class filter to specify which type of actors should be loaded. This try to reduce the amount of loading required by loading only the levels or external actos that have an dependency to the specified actor types.

Changed the gabage collection strategy to one that is less agressive.  it will behave like the cook and use the same setting to decide when it should be run.

Configure the asset registry config so that it is used properly and it now start loading in async manner early during the boot sequence of the commandlet.


#rb Benoit.Deschenes

[CL 29530756 by julien stjean in ue5-main branch]
2023-11-07 15:29:42 -05:00
matt peters
db368989a9 AssetRegistry: AssetDataGather: Use NTFSJournal for the directory scan.
#rnx
#rb Zousar.Shaker

[CL 29525791 by matt peters in ue5-main branch]
2023-11-07 13:13:06 -05:00
don boogert
4d9de6e428 Landscape: Allow for use of texture arrays on mobile platforms
#rb jonathan.bard
#rb jian.ru
#jira UE-199029

* Allows for material expressions to indicate they can sample from multiple textures
* Material landscape expressions can now sample from texture arrays if enabled (disabled for now)
* Added WeightMapArray place holder texture


#virtualized

[CL 29499700 by don boogert in ue5-main branch]
2023-11-06 16:16:33 -05:00
josh adams
d932672eef - Made EditorSettings.ini and EditorLayout.ini be fully saved, instead of needing per-section overrides (Editor.ini is setill per-section controlled)
- Added BasePlugin.ini (plugin .ini files now use that instead of Base.ini) so that plugin .ini's are fully saved, but a plugin can override it in the plugin's Default .ini file
#rb Brian.White

[CL 29486326 by josh adams in ue5-main branch]
2023-11-06 08:55:24 -05:00
aditya ravichandran
ab3feaae4f Explicitly ask PIE console command history and asset picker settings to be saved into ini configs
#jira UE-199466
#rb logan.buchy

[CL 29420988 by aditya ravichandran in ue5-main branch]
2023-11-03 16:48:15 -04:00
jon olick
70cf6470df OodleWav -> UEWavComp
[CL 29372243 by jon olick in ue5-main branch]
2023-11-02 14:01:08 -04:00
zach bethel
391eaf38cf Implemented parallel Gather Dynamic Mesh Elements (GDME) for visibility and shadows.
- Added r.ParallelGatherDynamicMeshElements to control whether the feature is enabled. When disabled, tasks are constrained to the render thread as before.
 - Added r.Visibility.DynamicMeshElements.NumTasks and r.Shadow.DynamicMeshElements.NumTasks which both default to 4. Thread contention becomes an issue at higher task counts for proxies which do a lot of uniform buffer or resource creation / updates.

Implementation Details:

The scene view visibility path typically has many dynamic elements per view, whereas there are typically more shadow views processing fewer elements each.

The main visibility path pushes dynamic primitives into a queue which is then processed by N async tasks, each with its own mesh collector and global vertex / index buffer. If a scene proxy is marked as not supporting parallel GDME, it is processed instead on the render thread in parallel with other async tasks. Niagara is currently the only proxy which is marked as unsupported by parallel GDME, as it has many potential sync points that would need to be untangled. When the async tasks complete, the task contexts are merged back to the view in an async task prior to launching dynamic mesh passes. Another important detail is that all material and GPU scene ops are deferred by the mesh collector and finalized at the end on the render thread. Deferring materials is necessary to allow the VT update task to overlap with GDME. The GPU scene updates are not thread safe and must be deferred.

The shadow path instead creates a queue of FProjectedShadowInfo's which is processed in parallel by async gather tasks (each with its own collector context). If a particular shadow has proxies that do not support parallel GDME, then a second pass is done over that FProjectedShadowInfo on the render thread to process the render thread only proxies. The dynamic mesh passes are launched asynchronously as well and are waited on by the shadow depth rendering passes later in the frame.

#rb krzysztof.narkowicz, christopher.waters

[CL 29289633 by zach bethel in ue5-main branch]
2023-10-31 16:36:46 -04:00
aditya ravichandran
d1d1d928a5 BaseEditorKeyBindings.ini - Explicitly save out user defined keybinds to fix a bug where they were not persisting after a restart.
#jira UE-199259
[FYI] josh.adams

[CL 29248200 by aditya ravichandran in ue5-main branch]
2023-10-30 16:27:35 -04:00
florian penzkofer
cd93ccdb8b Support ThinTranslucent Materials in mobile renderer
OpenGL ES and Metal use framebuffer fetch.
Vulkan uses dual source blending.
For Vulkan and OpenGL ES there is a fallback shader permutation for drivers that don't support this. The fallback is the same as the existing solution that uses regular blending (i.e. looks different).
Others uses dual source blending and we force use of DXC for those shaders.
#rb Dmitriy.Dyomin, Florin.Pascu

[CL 29245271 by florian penzkofer in ue5-main branch]
2023-10-30 15:41:46 -04:00
jon olick
2a17446e02 UE Jpeg: name change
#p4v-preflight-copy 29191952
#rb dan.thompson

[CL 29237577 by jon olick in ue5-main branch]
2023-10-30 12:46:08 -04:00
matt peters
cd6018f359 Cooker: SkipOnlyEditorOnly: Turn SkipOnlyEditorOnly on by default for all projects and all licensees in 5.4. If it causes a problem, and it is not obvious how to fix it, turn it back off again by editing DefaultEditor.ini:[CookSettings]:bSkipOnlyEditorOnly=true, and please send a UDN asking for help in fixing the issue.
[RN] Major, Cooking
#rb Zousar.Shaker

[CL 29134658 by matt peters in ue5-main branch]
2023-10-26 10:27:28 -04:00
josh adams
44f2e745fd - Enabled the system to massively reduce what settings are saved in Saved/Config. Note that *Editor* and *User* ini files are not changed, they always fully save. Additionally, sections can be opted in for a particular ini file (like Game, Engine, etc). but adding the section name to the [SectionsToSave] section in a file in the hierarchy (like BaseEngine.ini or DefaultEngine.ini)
#rb trivial

[CL 29098706 by josh adams in ue5-main branch]
2023-10-25 15:18:58 -04:00
louisphilippe seguin
f8ef0b7afe Iris
* Server will now immediately force disconnect a client when it detects a protocol mismatch for critical classes

#rb Mattias.Hornlund
#rnx

[CL 29086295 by louisphilippe seguin in ue5-main branch]
2023-10-25 09:21:11 -04:00
tiantian xie
64db4ff381 Add high end ray tracing effects platform dependent flag bSupportsHighEndRayTracingEffects and apply it to guide translucent shadow.
#jira UE-196323
#rb yuriy.odonnell

[CL 28959763 by tiantian xie in ue5-main branch]
2023-10-20 06:50:16 -04:00
don boogert
b0ed714062 Landscape: PerQuality scalability setting Landscape LOD parameters
#rb chris.tchou

[CL 28935029 by don boogert in ue5-main branch]
2023-10-19 17:31:47 -04:00
chris babcock
7432a164c1 Add Xclipse 940 chipset and GPU (5xx supported and falls through to low)
#android
[REVIEW] [at]Jack.Porter
#rb Jack.Porter

[CL 28932249 by chris babcock in ue5-main branch]
2023-10-19 16:20:57 -04:00
zousar shaker
0df1c50613 Move remote/ConnectExisting ZenServer connections to port 8558 by default.
[FYI] stefan.boberg
[FYI] dan.engelbrecht

[CL 28898688 by zousar shaker in ue5-main branch]
2023-10-18 19:44:18 -04:00
kendall tucker
b2180ffd4a [Backout] - CL28871852
[FYI] kendall.tucker
Original CL Desc
-----------------------------------------------------------------
Added the following to ConsoleVariables.ini:
r.Nanite.AllowTessellation=1
r.Nanite.Tessellation=1

[CL 28892555 by kendall tucker in ue5-main branch]
2023-10-18 17:45:02 -04:00
kendall tucker
50d639f8cb Added the following to ConsoleVariables.ini:
r.Nanite.AllowTessellation=1
r.Nanite.Tessellation=1

[CL 28871854 by kendall tucker in ue5-main branch]
2023-10-18 04:39:37 -04:00
chris kulla
1e11a46938 RayTracing: Remove deprecated RayTraced Reflections
This functionality is now well covered by Lumen reflections which are the supported path going forward.

#jira UE-198247
#rb Aleksander.Netzel,Yuriy.ODonnell

[CL 28866153 by chris kulla in ue5-main branch]
2023-10-17 21:41:09 -04:00
robert millar
784a7bef90 DataValidation refactor
General
    Add support for returning tokenized messages from validation.
    Unify validation reporting for different validation entry points - in particular, source control window context menu.
    Move EDataValidationUsecase to CoreUObject for use by UObject::IsDataValid.

UEditorValidatorSubsystem
    Add support for validating changelists. Use of this interface allows building lists of unmodified assets to re-validate based on the changes that were made.
    Allow subclassing, with functions GatherAssetsToValidateFromChangelist and ShouldValidateAsset to modify behavior of validation.
    Add optional to load assets for validation to validation parameters.
    Capture logs during asset loads to report as errors (optional in validation parameters).
    Allow limit to number of assets to validate in validation parameters, report limit reached.
    Add message log page to validation parameters.
    Add validation parameter to validate referencers of deleted assets in changelists for validation

UEditorValidatorBase
    Centralize dispatch to BP/Native validation in non-virtual ValidateLoadedAsset function.
    Add native interface functions to UEditorValidatorBase that take FDataValidationContext.
    Rename BP interface functions to have K2 prefix and different signature to native functions.

FDataValidationContext
    Add validation usecase.
    Add 'associated assets' to allow associating external actors with maps for validators.

UDataValidationChangelist
    Support changelists based on changelist objects, file states, and simple lists of files.
    Group modifications into packages/non-assets and modified/deleted ahead of time for validators to inspect.

#rb dominic.couture

[CL 28824042 by robert millar in ue5-main branch]
2023-10-16 19:03:01 -04:00
jon olick
4df1588d6d Oodle WAVE: enable for use
#jira

[CL 28815321 by jon olick in ue5-main branch]
2023-10-16 16:13:29 -04:00
jon olick
36f77ad392 Oodle WAVE: store Raw wave editor bulk data in a better way to improve compression performance.
#jira
#p4v-preflight-copy 28810120

[CL 28814637 by jon olick in ue5-main branch]
2023-10-16 15:56:34 -04:00
robert millar
cc2eb26185 [Backout] - CL28807792
[FYI] robert.millar
Original CL Desc
-----------------------------------------------------------------
Adding redirect for ControlRig refactor to BaseControlRig.

#rb none

[CL 28812025 by robert millar in ue5-main branch]
2023-10-16 15:06:12 -04:00