Commit Graph

2605 Commits

Author SHA1 Message Date
ben hoffman
f94171a7dc Add WindowsApplication KBM hardware device definition. Move the XInput hardware defintiion out to its own plugin as it should be.
#rnx

#rb Phillip.Kavan

[CL 32507945 by ben hoffman in ue5-main branch]
2024-03-26 10:05:42 -04:00
matt peters
94a4e7e0b1 [Resubmit - error in previous submission was fixed in CL 32449966]
MPCook And CookPackageSplitter: Implement on demand creation and splitting of generator packages rather than only creating them during save.
#jira UE-188805
#jira UE-177380
#rnx
#rb Zousar.Shaker

[CL 32468020 by matt peters in ue5-main branch]
2024-03-25 08:47:10 -04:00
kenzo terelst
a7e0d62c3d Enable PSO precaching for global compute shaders by default on Windows
[CL 32466188 by kenzo terelst in ue5-main branch]
2024-03-25 06:02:12 -04:00
jared therriault
5f63191f99 Blueprint Editor:
-Fix Panning on Linux is slow
-Add bUseHighPrecisionMouseMovement (true by default) and bUseInterpolationWithManualPanning (false by default) as Graph Editor Settings, set to the current behaviour, but can be switched to allow for a better panning experience on Linux versions of the editor.

#jira UE-209711
#rb ben.hoffman, ronald.koppers
[FYI] jason.walter

[CL 32463490 by jared therriault in ue5-main branch]
2024-03-24 15:16:46 -04:00
bob tellez
19639b72ec [Backout] - CL32436615
[FYI] Matt.Peters
Original CL Desc
-----------------------------------------------------------------
MPCook And CookPackageSplitter: Implement on demand creation and splitting of generator packages rather than only creating them during save.
#jira UE-188805
#jira UE-177380
#rnx
#rb Zousar.Shaker

[CL 32446435 by bob tellez in ue5-main branch]
2024-03-22 15:28:23 -04:00
jeannoe morissette
2efeee3094 VulkanRHI: Remove DescriptorSetLayoutMode=2 from Android base profile in preparation of major RHI clean up.
#rb Allan.Bentham, Dmitriy.Dyomin, florian.penzkofer
#rnx

[CL 32443084 by jeannoe morissette in ue5-main branch]
2024-03-22 14:34:25 -04:00
matt peters
032a8d39ae MPCook And CookPackageSplitter: Implement on demand creation and splitting of generator packages rather than only creating them during save.
#jira UE-188805
#jira UE-177380
#rnx
#rb Zousar.Shaker

[CL 32436670 by matt peters in ue5-main branch]
2024-03-22 12:14:01 -04:00
jeremie roy
c65228dc85 Re-enable ARKit source autocreation by default in the editor.
#jira UE-208717
#rb jason.walter

[CL 32434815 by jeremie roy in ue5-main branch]
2024-03-22 11:17:06 -04:00
joe kirchoff
6af42710c6 Disallow 14.39.33519 - 14.39.33522 toolchains
#rnx

[CL 32420339 by joe kirchoff in ue5-main branch]
2024-03-21 18:23:34 -04:00
bradley heath
fee53bd053 Report the NumConnections network stat to PerfCounters and CSV.
#rb LouisPhilippe.Seguin

[CL 32400187 by bradley heath in ue5-main branch]
2024-03-21 10:57:55 -04:00
florian penzkofer
f05c3ac1c8 Allow ray tracing with SM5 on Android
CVar r.RayTracing.RequireSM6 is new in 5.4
#jira UE-200578
#rb aleksander.netzel

[CL 32369258 by florian penzkofer in ue5-main branch]
2024-03-20 12:09:26 -04:00
calvin zheng
0126089bd4 Reorganize memory.MemoryPressureCriticalThresholdMB for memory pressure assessment
#rb Zousar.Shaker, Josh.Adams

[CL 32333617 by calvin zheng in ue5-main branch]
2024-03-19 14:33:18 -04:00
matt harris
a6969e3b44 Stripping non-iris net metrics when running Iris NetDrivers. Previously all these were set to 0 and output every frame, so this should reduce raw csv size quite a bit.
#rb bradley.heath, carles.fernandez, tyler.staples
#tests Tested against Dedicated Server Win64 Cooked Data

[CL 32321776 by matt harris in ue5-main branch]
2024-03-19 07:30:38 -04:00
rune stubbe
79573f21b4 Enable r.Nanite.Streaming.ReservedResources on Windows
#rb yuriy.odonnell
[FYI] brian.karis, graham.wihlidal, jamie.hayes, ben.woodhouse

[CL 32297488 by rune stubbe in ue5-main branch]
2024-03-18 07:24:23 -04:00
jeremy moore
fc86b6e263 Enable Work Graph support in D3D12 SM6 now that we have updated DXC to support it.
#jira UE-206245
[FYI] graham.wihlidal

[CL 32259735 by jeremy moore in ue5-main branch]
2024-03-14 17:03:41 -04:00
luke thatcher
8bcaa1fff8 Remove use of SwitchPipeline at the bottom-of-pipe (i.e. during RHI command list execution).
- This was mainly used for bindless descriptor updates, where updates need to be applied to all GPU pipelines.
 - Switching pipeline can change the current active breadcrumb on the new pipeline. Doing this at the bottom-of-pipe is not possible as the start/end breadcrumbs for each command list must be known at dispatch time (before execution / translation).
 - Added EnqueueLambdaMultiPipe which passes an array of RHI contexts to the lambda. This generally replaces the FRHICommandListBase& which is handed down through the platform RHI.
 - EnqueueLambdaMultiPipe may only be called at the top-of-pipe.

Replace RHITransfer[...]UnderlyingResource with RHIReplaceResources on FDynamicRHI / platform implementations
 - Old function was always bottom-of-pipe, so couldn't call EnqueueLambdaMultiPipe. New function takes the RHICmdList and is called at top-of-pipe.
 - All resource types are merged into the same function (currently buffers and raytracing geometry).

Remove use of RHILockBuffer and RHIUnlockBuffer at the bottom-of-pipe
 - Since platform RHIs need to use EnqueueLambdaMultiPipe for buffer locks/unlocks, it is no longer possible to call RHILock/UnlockBuffer at the bottom-of-pipe.
 - Also, buffers locked on parallel translating command lists are broken. Lock/unlock calls RHIThreadFence(true), which flags the command list for single-thread translate, however calling this at the bottom-of-pipe is too late, as the decision to dispatch the command list in parallel has already been made.
 - Added checks in these functions to catch future use.

#rb zach.bethel
#jira UE-208823
[FYI] christopher.waters

[CL 32220227 by luke thatcher in ue5-main branch]
2024-03-13 13:49:59 -04:00
jeremy moore
804418158d #jira UE-206245, UE-206247
Add basic DX12 Work Graph support.
For this first pass there is no exposed RHI functionality for directly dispatching a work graph. Instead shader bundles have been extended to support a work graph based implementation.
Nanite compute materials now can use work graph shader bundles on D3D12 when r.Nanite.AllowWorkGraphMaterials and r.Nanite.Bundle.Shading are both set. Both of these default to off at the moment.
Also DataDrivenPlatformInfo now expose bSupportsWorkGraphs. This is false everywhere, but will be enabled for D3D12_SM6 as soon as we have the latest DXC shader compiler with lib_6_8 support submitted.
#rb Kenzo.Terelst, Yuriy.ODonnell

[CL 32196717 by jeremy moore in ue5-main branch]
2024-03-12 18:42:09 -04:00
matt peters
e2f980a1ca Cooker: Incremental: Update IterativeClassDenyList for indeterminism: remove types with fixes and add on types with new issues.
#rnx
#rb Zousar.Shaker

[CL 32158808 by matt peters in ue5-main branch]
2024-03-11 13:21:02 -04:00
charles derousiers
bd150007de Add Depth of Field Use hair depth property on PostProcessVolume and expose it for UEFN.
#rb charles.derousiers

[CL 32105636 by charles derousiers in ue5-main branch]
2024-03-07 18:28:37 -05:00
chris babcock
a699ec41cd Add Android SM5 device profile for Xclipse devices
Rearrange Android SM5 device profiles to add vendor-specific defaults
#rb florian.penzkofer
#jira UE-182203

[CL 32090597 by chris babcock in ue5-main branch]
2024-03-07 12:18:12 -05:00
florian penzkofer
5d6669482c Remove enabling of r.VirtualTextures from Android SM5 default config.
Currently disabling VT in Project Settings breaks Android SM5 renderer because shaders are missing.
By removing  r.VirtualTextures=1 from the config it's now possibler to toggle it via Project Settings.
It is still possible to use VT for SM5 but have it disabled for mobile since mobile already requires an additional mobile CVar to be enabled.
#rb Dmitriy.Dyomin, Jack.Porter
#jira UE-208703

[CL 32062814 by florian penzkofer in ue5-main branch]
2024-03-06 14:37:25 -05:00
patrick kelly
796121b814 Fixing shader compilation warning
#rb chris.kulla

[CL 32061064 by patrick kelly in ue5-main branch]
2024-03-06 13:50:31 -05:00
zousar shaker
8b0a81dc6c Add NoZenLocalFallback and InstalledNoZenLocalFallback DDC graphs for use in scenarios where users are unable to run a local zenserver for any reason. Also fix a mis-labeling of a local cache store as being remote if it is deactivated.
#rb devin.doucette
#jira UE-208878

[CL 32022101 by zousar shaker in ue5-main branch]
2024-03-05 11:24:22 -05:00
paul chipchase
1f773a8c4c Split engine.ini:[Ias]:ForceTocFromMountedPaks into two different values.
#rb Martin.Ridgers
#jira UE-189912
#rnx

- When it was added ForceTocFromMountedPaks controlled if we should create .uondemandtoc files when building IAS data and if we should use them at runtime, this was inflexiable for testing purposes so has been split into:
-- engine.ini:[Ias]:CreatePerContainerTocs which controls if we should create the files.
-- engine.ini:[Ias]:UsePerContainerTocs which controls if we should run from the files.
- Both values remain defaulted to off so that the system is only used as opt in.

[CL 31943526 by paul chipchase in ue5-main branch]
2024-03-01 10:14:45 -05:00
kevin macaulayvacher
abfebd7d6f Improves the performance of CoreRedirects
::Before::
- Boot -> PIE (6m3s)
- FCoreRedirects::RedirectNameAndValues: 18s

::After::
- Boot -> PIE (5m41s)
- FCoreRedirects::RedirectNameAndValues: 5.3s


- MatchWildcard=true support has been added to how CoreRedirects are defined in INI files. You may now define OldName="...SomeSuffix", OldName="SomePrefix..." or OldName="...SomeSubstring..." to perform string manipulation based matching for redirects, deprecating MatchSubstring=true
- Substring matches are very expensive compared to pure FName matching or even prefix and suffix matching. This expense is problematic since the presence of a substring matching rule can mean that all queries for a particular redirect type, such as package name, will need to perform the substring check even if a substring match is relatively uncommon. To combat this cost, we add a reimplementation of the PM-k, (PredictMatch-8) algorithm. This allows a redirect query to check for substring matches against _all_ possible substrings with a single pass over the redirect query name. The fuzzy matching is designed such that false positives may occur but not false negatives. When a fuzzy match is found we must perform the slow substring match to confirm. However fuzzy matching allows use to dramatically reduce our string scannin. In a case where there were 4 MatchSubstrings, from boot to PIE, we now perform slow substring matches < 0.8% of the time compared to previously.
- Replaces `FString` manipulation during redirect queries to instead use a small wrapper type `FNameUtf8String` which provides a small API to allow for FName comparisons, building and ultimately reducing copies. UTF8 is used since we need to ensure we have an encoding that we can keep the same for storing wildcard strings that will match how we query for wildcard matches. UTF8 is byte efficient for ANSI text, which improves fuzzy match prediction.

==========================================
Substring Stats
Substring Lookups:                24342736
Prediction Hit:                   72
Prediction Miss:                  213377
==========================================

#jira UE-204063
#rb Matt.Peters
[FYI] Francis.Hurteau

[CL 31941627 by kevin macaulayvacher in ue5-main branch]
2024-03-01 08:57:14 -05:00