Commit Graph

809 Commits

Author SHA1 Message Date
jimmy smith
cbf9f93b0c Reduce logging for AudioDeviceSwap. Put some existing logs behind flag and bump verbosity.
#jira UE-127183
#rb maxwell.hayes

#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 17576522 via CL 17576644 via CL 17576667 via CL 17576676 via CL 17576684
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v871-17566257)

[CL 17576688 by jimmy smith in ue5-main branch]
2021-09-20 18:30:53 -04:00
christopher waters
8601c1bdcd More D3D cleanup
- Ripping out all non-stream PSO creation now that we're locked into ID3D12Device2 support.
- Tidying up some VendorExtension handling.
- Renaming FD3D12QuantizedBoundShaderState::bUseVendorExtension to bNeedsAgsIntrinsicsSpace to be more explicit on what it does. This was accidentally being enabled when Nvidia extensions were used in Compute shaders.

#jira none
#rb kenzo.terelst
#preflight 61421909599fd80001612a3c

[CL 17524838 by christopher waters in ue5-main branch]
2021-09-15 15:12:52 -04:00
jimmy smith
0c110f1bcb Fix for crash in PIE audio device removal/add logic
#rb phil.popp

#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 17513538 via CL 17514443 via CL 17514552 via CL 17514569 via CL 17514572
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v870-17433530)

[CL 17514580 by jimmy smith in ue5-main branch]
2021-09-14 21:24:54 -04:00
aurel cordonnier
e3f7878676 Merge from Release-Engine-Test @ 17462327 to UE5/Main
This represents UE4/Main @17430120 and Dev-PerfTest @17437669

[CL 17463546 by aurel cordonnier in ue5-main branch]
2021-09-08 16:42:26 -04:00
Josie Yang
a62f714a51 Morph target engine modifications for 3rd party plugin
#fyi alexis.matte, brian.white, christopher.waters, mihnea.balta, rolando.caloca, will.damon, halfdan.ingvarsson, kevin.ortegren

[CL 17444191 by Josie Yang in ue5-main branch]
2021-09-07 09:55:32 -04:00
Jeff Fisher
c9a9b5d58e UE-125001 //UE5/Main - Compile UnrealGame HoloLens - Several compile errors
-Fixed d3d12 hololens build breaks.
-Fixed HololensD3D11Viewport build break.
#review-17428478
#jira UE-125001
#rb Steve.Smith

[CL 17428675 by Jeff Fisher in ue5-main branch]
2021-09-03 19:49:43 -04:00
christopher waters
15fb3777bf Adding a required StencilRef argument to SetGraphicsPipelineState.
#jira none
#rb zach.bethel, mihnea.balta, florin.pascu
#preflight 61312f4a79ce170001d4a79e
#robomerge[bot1] emt

[CL 17422777 by christopher waters in ue5-main branch]
2021-09-03 11:59:36 -04:00
christopher waters
164ed94e2d Creating a 'better' define name for enabling RHI resource info. Adding the ability to force disable resource info via global definitions.
#rb zach.bethel
#preflight 612d467f423a8f00013d4916


#ROBOMERGE-SOURCE: CL 17363323
#ROBOMERGE-BOT: (v865-17346139)

[CL 17364436 by christopher waters in ue5-main branch]
2021-08-31 03:41:39 -04:00
christopher waters
b8cd9899d6 D3D11 cleanup. Removing long dead code paths.
#rb mihnea.balta
#preflight 611fcb77008be9000117b6c1


#ROBOMERGE-SOURCE: CL 17251578
#ROBOMERGE-BOT: (v858-17259218)

[CL 17270966 by christopher waters in ue5-main branch]
2021-08-23 13:55:10 -04:00
jason hoerner
3607513c5e UE5.0_Main: Fix for incorrect strides for depth stencil formats on D3D11 and D3D12, in a utility function which reads render targets to a CPU buffer.
DXGI_FORMAT_R32G8X24_TYPELESS and related formats are 8 byte stride, not 5 byte, according to D3D documentation and Microsoft sample code that processes these formats.  The original code would never have worked, and is likely only used for debug purposes for perf reasons, so it seems safe to fix.

#rb jason.nadro eric.mcdaniel
#jira UE-121183
#rnx

[CL 17251778 by jason hoerner in ue5-main branch]
2021-08-20 15:26:30 -04:00
christopher waters
f60a64644d Adding RHIUniformBufferLayoutInitializer and RHIUniformBufferLayout is a proper FRHIResource. This brings proper RHI lifetime support to RHIUniformBufferLayout so we don't delete the layouts while RHI commands that use them are still in flight.
This should fully address UniformBufferLayout/UniformBuffer crashes that randomly happen during shader compiling in the Editor.

#jira none
#rb arciel.rekman, ben.ingram, mihnea.balta, stu.mckenna, will.damon
#preflight 611eb6c6008be90001f8b031

[CL 17243608 by christopher waters in ue5-main branch]
2021-08-19 23:53:29 -04:00
sebastien lussier
56c71428b7 Fix EnumAdapterByGpuPreference on DX11 PC
#rb james.doverspike
#preflight 611bc724aabad10001f176a2


#ROBOMERGE-SOURCE: CL 17195130
#ROBOMERGE-BOT: (v855-17104924)

[CL 17195157 by sebastien lussier in ue5-main branch]
2021-08-17 11:13:23 -04:00
Arne Schober
762e006e5d U5 - remove unecessary abstraction and layering violation that contrained the EventQuery to be released on the Renderthread, which constrains it more than neceassry and triggered an assert when we moved destruction to the RHITHread.
#jira UE-119993

[CL 17186937 by Arne Schober in ue5-main branch]
2021-08-17 01:41:20 -04:00
sebastien lussier
204556876a D3D11RHI fix for wrong adapter selection when multiple adapters are present
* Issue is that the adapters were referenced by index
* Adapters enumeration was sometime performed using EnumAdapters() vs EnumAdapterByGpuPreference()
* Using the same index for both calls would result in different adapters being returned...

On AWS g4ad.16xlarge instances, this issue would cause the engine to think it had selected a discrete adapter, while in fact it created a WARP (software) adapter...
#rb christopher.waters
#preflight 611a817e8ff5540001d5e805


#ROBOMERGE-SOURCE: CL 17176596
#ROBOMERGE-BOT: (v855-17104924)

[CL 17176598 by sebastien lussier in ue5-main branch]
2021-08-16 11:31:25 -04:00
aurel cordonnier
dc856801cd Merge from Release-Engine-Test @ 17059716 to UE5/Main
This represents UE4/Main @ 17030256 and Dev-PerfTest @ 17029914

[CL 17060422 by aurel cordonnier in ue5-main branch]
2021-08-04 17:46:20 -04:00
christopher waters
812f1e7861 EBufferUsageFlags as enum class.
#rb will.damon, rolando.caloca
#preflight 610179041e63730001feb1eb
#preflight 6101b0d5b4288d0001b61c32


#ROBOMERGE-OWNER: christopher.waters
#ROBOMERGE-AUTHOR: christopher.waters
#ROBOMERGE-SOURCE: CL 16986666
#ROBOMERGE-BOT: (v838-16927207)
#ROBOMERGE-CONFLICT from-shelf

[CL 16987824 by christopher waters in ue5-main branch]
2021-07-28 17:18:36 -04:00
yangke li
0a48229025 add RGB555A1 texture format support(not supported on Mac)
useful for RVT on mobile platforms, to save the cost of runtime compression
#rb Dmitriy.Dyomin mihnea.balta

[CL 16872220 by yangke li in ue5-main branch]
2021-07-16 11:38:24 -04:00
aurel cordonnier
d17d20ca36 Merge from Release-Engine-Test @ 16758890 to UE5/Main
This represents UE4/Main @ 16738161 and Dev-PerfTest @ 16737719 (and Release-17.00 @ 16658211)

[CL 16763350 by aurel cordonnier in ue5-main branch]
2021-06-23 17:51:32 -04:00
paul chipchase
b702542294 Prevent a crash in DX12 if GFSDK_Aftermath_Lib.x64.dll is not found and improve the finding of the dll when using -basedir=
#rb kenzo.terelst
#preflight 60c9ebb93e1b3c0001400246

- The original code is using ::LoadLibrary with a relative path to find the dll and when running from staged data via -basedir= we will be relying on that path being relative to the current directory set by the command line. However many modules call FPlatformProcess::PushDllDirectory/PopDllDirectory to find dlls and when all of the paths are fully popped we will call ::SetDllDirectory with an empty string which will remove the current directory from the list of valid paths for ::LoadLibrary to search.
- To fix this we can call FPlatformProcess::PushDllDirectory/PopDllDirectory ourselves, with the location of the dll and then request the handle of the dll instead (examples of this can be found in other modules)
- When running with DX12 we no longer attempt to enable NvAftermath if we previously failed to find the dll in order to prevent a crash. We do this by recording if the dll has been loaded or not via a new global variable GDX12NVAfterMathModuleLoaded, similar to how the DX11 code path tracks this.

[CL 16690777 by paul chipchase in ue5-main branch]
2021-06-16 12:54:07 -04:00
Dan Thompson
bc392c8ffa Bink Audio :: 4/4 :: Integration :: #pf 60aea2116905a6000136901e #pf 60c9308ef7cffb0001674132
Integration touches several places in the engine:

1) SoundWave -- A check box enables Bink Audio as the codec of choice for that sound wave.

2) Decoder - Each supported platform's AudioMixer now returns BINK if the soundwave requests it. Additionally, the TargetPlatform returns BINK as an available codec, and returns it to the cooking code if the sound wave requests it.

3) Encode - TargetPlatform.Build.cs adds the encoder to the editor dependencies, and it gets picked up in the TPMM formats search.

[CL 16682710 by Dan Thompson in ue5-main branch]
2021-06-15 20:26:41 -04:00
David Harvey
86ea19187f non-unity fix
#rb trivial
#jira none
#rnx

[CL 16641229 by David Harvey in ue5-main branch]
2021-06-11 10:30:17 -04:00
aurel cordonnier
e0ad4e25df Merge from Release-Engine-Test @ 16624776 to UE5/Main
This represents UE4/Main @ 16579691 and Dev-PerfTest @ 16579576

[CL 16625248 by aurel cordonnier in ue5-main branch]
2021-06-10 13:13:24 -04:00
christopher waters
ba85da217b Implementing RHIGetNativeCommandBuffer for D3D11RHI, returns the immediate context.
#jira UE-115087
#rb james.doverspike, mihnea.balta
#preflight 60b798a98e7ee10001c58424

[CL 16537530 by christopher waters in ue5-main branch]
2021-06-02 14:47:32 -04:00
Arne Schober
bbfa598383 U5 - fix missing IsInRHIThread checks after mofing Resource deletes to the RHI thread.
[CL 16536167 by Arne Schober in ue5-main branch]
2021-06-02 12:55:01 -04:00
christopher waters
e61decf5cc Add more info to crashes when no UB is bound.
#jira UE-115087
#rb mihnea.balta
#preflight 60b6c22d4d507d00019551c5

[CL 16534451 by christopher waters in ue5-main branch]
2021-06-02 10:48:18 -04:00