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]
-Make sure to test against the default stencil value always
-Adding proper support for OverrideOutput in the PPM stencil skip path.
-Reverse the stencil oprands, Ref goes on the left side and Value on the right side
#rb [at]Kevin.Ortegren
#ROBOMERGE-AUTHOR: serge.bernier
#ROBOMERGE-SOURCE: CL 19353831 via CL 19353862 via CL 19355202 via CL 19357403 via CL 19357633
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)
[CL 19358577 by serge bernier in ue5-main branch]
Note that this was incidentaclly working because if (PassSequence.IsEnabled(EPass::VisualizeLumenScene)) is always true, making that the last pass and not requiring any other pass to copy to the override output.
Continuation on 19244345
#jira UE-142899
#rnx
#rb zach.bethel
#preflight 6221532fc7262e0e53898286
[FYI] serge.bernier
#ROBOMERGE-AUTHOR: kevin.ortegren
#ROBOMERGE-SOURCE: CL 19259468 in //UE5/Release-5.0/... via CL 19260203
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)
[CL 19263845 by kevin ortegren in ue5-main branch]
Cherry-pickked from 18906109, including my additional fixes:
*Setting RDG output to scenecolor when skipping post process material due to full stencil fail.(Avoids tripping the 'unwritten' RDG validation warning)
*Swapped operand order for stencilval and stencilref to match what the internals are doing.(This was wrong, only Equals and Not Equals worked)
*Always test the stencil clear value against the stencil ref. The stencil ref might be relying on the clear value even if no primitives write stencil. (for example if material sets Equals 0)
[FYI] serge.bernier
#rb swarm
#rnx
#preflight 621ff37f31454c90cc0e28d5
#jira UE-142899
#lockdown Mihnea.Balta
#ROBOMERGE-OWNER: kevin.ortegren
#ROBOMERGE-AUTHOR: kevin.ortegren
#ROBOMERGE-SOURCE: CL 19244345 in //UE5/Release-5.0/... via CL 19248927
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)
[CL 19262899 by kevin ortegren in ue5-main branch]
[FYI] Kevin.Ortegren
Original CL Desc
-----------------------------------------------------------------
Skip post process material pass when all the pixels will fail the stencil test of the material. Corrects certain stencil test operations from executing full screen when not needed. Saves performance on platforms that are doing the stencil test in the pixel shader with a clip.
#rb serge.bernier
#rnx
#preflight 6218e872a77f4c4a4ba5a6b3
#jira UE-142899
#p4v-cherrypick 18906109
#ROBOMERGE-AUTHOR: serge.bernier
#ROBOMERGE-SOURCE: CL 18900989 via CL 18901005 via CL 18901009 via CL 19148744 via CL 19148993
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19160947 by kevin ortegren in ue5-main branch]
This avoids to define STRATA_ENABLED as 'env. define' for all global shaders needing a Strata specific path.
#rb none
#jira none
#fyi sebastien.hillaire
#preflight 62151b25797dbbeb472ae2eb
[CL 19074999 by Charles deRousiers 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]