This change is the copy-up of work from //UE5/Dev-ParallelRendering to unify the various RHI texture types
- The separate RHI texture types (FRHITexture2D, FRHITexture2DArray, FRHITexture3D, FRHITextureCube, FRHITextureCubeArray) have been replaced with a single type: FRHITexture.
- Includes the required refactoring / fixes for the various platform RHIs.
The old texture types are still supported via typedefs, but will soon be marked deprecated. Future rendering code should make use of the FRHITexture type instead.
#jira UE-139559
#rb Mihnea.Balta
#preflight 622f3af819287beb2c3047f6
#robomerge[FN_ENGINEMERGE] DEV-NC
[CL 19371962 by Luke Thatcher in ue5-main branch]
- Adding ID3D12DynamicRHI and ID3D11DynamicRHI interfaces for plugins that want to touch DirectX resources/devices directly.
- Adding specific headers for including DirectX headers: D3D12ThirdParty.h and D3D11ThirdParty.h
- Modifying plugins that were using D3D11RHIPrivate.h and D3D12RHIPrivate.h to use the interfaces instead.
- Removing plugin references to UE Modules and ThirdParty libraries that were only needed because they included the private RHI headers.
- Removing D3D11RHI/Private and D3D12RHI/Private from plugin include paths.
#jira none
#rb jeannoe.morissette, kenzo.terelst, mihnea.balta, eric.mcdaniel
#preflight 6222395bb066ef60bbad004a
[CL 19267223 by christopher waters in ue5-main branch]
Adding templated GetDynamicRHI that makes sure we don't cast the Validation DynamicRHI by accident.
#jira none
#rb jeannoe.morissette, zach.bethel
#preflight 62169c43104496cff8a1d9df
[CL 19100864 by christopher waters in ue5-main branch]
- Deprecating IRHIComputeContext::RHISetComputeShader.
- Moving the fallback version of RHISetComputePipelineState to IRHICommandContextPSOFallback.
- Making IRHIComputeContext::RHISetComputePipelineState pure virtual.
- Moving the fallback versions of RHICreateGraphicsPipelineState and RHICreateComputePipelineState into the new FDynamicRHIPSOFallback for platforms that were already using IRHICommandContextPSOFallback.
- Making FDynamicRHI::RHICreateGraphicsPipelineState and FDynamicRHI::RHICreateComputePipelineState pure virtual.
#jira none
#rb luke.thatcher, florin.pascu, will.damon, jeannoe.morissette
#preflight 621660bcc152c67496d9cc75
[CL 19095306 by christopher waters in ue5-main branch]
#jira UE-140535
#rb aaron.mcleran
#rb phil.popp
#preflight 6201caad97149bc07a91a458
#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 18904384 in //UE5/Release-5.0/... via CL 18904476 via CL 18904619
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v913-18904215)
[CL 18904638 by jimmy smith in ue5-main branch]
We can't share DDPI infrastructure with PC D3D ES3.1 because of conflicts from sharing. We need a separate shader platform.
For now, we'll just 'intrusively' plumb the new Hololens shader platform. In the future, we want to move as much code out into
Hololens-specific platform code to reduce conflict with shared paths that don't need to know about Hololens.
#rb steve.smith, christopher.waters
#jira UE-133375
#preflight 61f9ca302251c6fb596e583e
#ROBOMERGE-AUTHOR: robert.srinivasiah
#ROBOMERGE-SOURCE: CL 18818524 in //UE5/Release-5.0/... via CL 18818546 via CL 18822881
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18824735 by robert srinivasiah in ue5-main branch]
- Adding new enumeration to select PCM, ADPCM, Bink, and "platform specific"
- Updated platform codecs and various APIs to select correctly which codec to use
- Changed "is seekable streaming" semantics to "Is Seekable" since that is more correct in a post-stream-caching world
- Tried to clean up platform backends. Unable to move Bink decoder to multiplatform code because of module dependencies, will require a future refactor of our decoder module setup.
#rb Phil.Popp, Jimmy.Smith
#jira UE-140860
#preflight 61f97ad7f02e20f45add6d45
#ROBOMERGE-AUTHOR: aaron.mcleran
#ROBOMERGE-SOURCE: CL 18813332 in //UE5/Release-5.0/... via CL 18813341 via CL 18822758
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18824290 by aaron mcleran in ue5-main branch]
[CODEREVIEW] 18760692
#preflight 61f306361f12674afbc21105
#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 18761821 in //UE5/Release-5.0/... via CL 18761887 via CL 18763071
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)
[CL 18763424 by jimmy smith in ue5-main branch]
#ROBOMERGE-AUTHOR: james.doverspike
#ROBOMERGE-SOURCE: CL 18668822 via CL 18668957 via CL 18669174 via CL 18669351 via CL 18669437 via CL 18669446 via CL 18669671 via CL 18669682 via CL 18669689
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v901-18665521)
[CL 18669702 by james doverspike in ue5-main branch]
#jira none
#rnx
#preflight 61de5c476a076ddb53d71a52
#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 18581549 in //UE5/Release-5.0/... via CL 18581564 via CL 18581565
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)
[CL 18581568 by jimmy smith in ue5-main branch]
#jira none
#rnx
#preflight skip
#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 18580230 in //UE5/Release-5.0/... via CL 18580258 via CL 18580270
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)
[CL 18580279 by jimmy smith in ue5-main branch]
#rb phill.popp
#jira none
#preflight 61de017acd2cced7106da86d
#ROBOMERGE-AUTHOR: jimmy.smith
#ROBOMERGE-SOURCE: CL 18577744 in //UE5/Release-5.0/... via CL 18577792 via CL 18577804
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v899-18417669)
[CL 18577946 by jimmy smith in ue5-main branch]
RHIs interface update.
Not implemented on Switch, Mac and OpenGL yet.
Tested with Strata on pc dx11/dx12, xb1 base, ps4 and ps5.
Tested wihtout Strata on pc and ps4.
ShooterGame test on PC
Mac preflight https://horde.devtools.epicgames.com/job/61b268709947f1ef980c602e
#preflight test https://horde.devtools.epicgames.com/job/61b26827b13fefb344312f11
#rb RHI, Console
#ROBOMERGE-AUTHOR: sebastien.hillaire
#ROBOMERGE-SOURCE: CL 18508188 in //UE5/Release-5.0/... via CL 18508208
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18508217 by sebastien hillaire in ue5-release-engine-test branch]