Commit Graph

24 Commits

Author SHA1 Message Date
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
andrew davidson
57beb335f2 Merging //UE5/Dev-LargeWorldCoordinates [at] 17581892 to //UE5/Main
#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 17595295 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)

[CL 17595306 by andrew davidson in ue5-release-engine-test branch]
2021-09-22 10:01:48 -04:00
christopher waters
6c4b4a91a4 Adding a required StencilRef argument to SetGraphicsPipelineState.
#jira none
#rb zach.bethel, mihnea.balta, florin.pascu
#preflight 61312f4a79ce170001d4a79e

#ROBOMERGE-SOURCE: CL 17422777 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)
#ROBOMERGE[bot1]: emt

[CL 17422941 by christopher waters in ue5-release-engine-test branch]
2021-09-03 12:04:52 -04:00
sebastien hillaire
0360013ac2 Fixed crash when using GetMiniFontTexture.
#rb charles.derousiers
[FYI] chris.kulla

#ROBOMERGE-SOURCE: CL 16661501 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v834-16658389)

[CL 16661510 by sebastien hillaire in ue5-release-engine-test branch]
2021-06-14 14:22:16 -04:00
charles derousiers
76466fc4e4 Add proper ASCII texture to print standard character set from shader.
#rb none


#ROBOMERGE-SOURCE: CL 16566309
#ROBOMERGE-BOT: (v828-16531559)

[CL 16566349 by charles derousiers in ue5-main branch]
2021-06-06 16:05:31 -04:00
danny couture
9332b64809 Prepare for the deprecation of direct access to the Resource member of UTexture in favor of the GetResource() accessor.
#rb Francis.Hurteau
#preflight 609e5182ef86d30001ad0a18
#rnx

[CL 16328103 by danny couture in ue5-main branch]
2021-05-14 07:17:32 -04:00
Guillaume Abadie
07bc47754f Implements FScreenTransform with operator overload to construct custom viewport transformations easily
#rb zach.bethel

[CL 16114603 by Guillaume Abadie in ue5-main branch]
2021-04-26 11:28:05 -04:00
zach bethel
102420ff59 Expanded RDG builder outside of scene renderer.
#rb christopher.waters
#jira none

[CL 14914671 by zach bethel in ue5-main branch]
2020-12-14 13:56:15 -04:00
Marcus Wassmer
3b81cf8201 Merging using //UE5/Main_to_//UE5/Release-Engine-Staging @14384769
autoresolved files
#rb none

[CL 14384911 by Marcus Wassmer in ue5-main branch]
2020-09-24 00:43:27 -04:00
Josh Adams
aa9705149b Copying Private-LoadTimes-4.24 stream to Main. Biggest changes are in Materials/Shader memory freezing.
#rb none

[CL 11282608 by Josh Adams in Main branch]
2020-02-06 13:13:41 -05:00
ryan durand
0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00
zach bethel
e1f231e46a Fix for VR previous crash.
#rb none
#jira UE-84613

#ROBOMERGE-SOURCE: CL 10287880 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v593-10286020)

[CL 10287888 by zach bethel in Main branch]
2019-11-18 12:56:06 -05:00
Rolando Caloca
f83ae4807a Copying //UE4/Dev-Rendering@9317594 to Dev-RenderPlat-Staging
#rb none
#rnx

[CL 9317904 by Rolando Caloca in Dev-RenderPlat-Staging branch]
2019-10-01 13:03:04 -04:00
Marcus Wassmer
ded7cece25 Copying //UE4/Dev-Rendering@8444433 to Dev-RenderPlat-Staging (//UE4/Dev-RenderPlat-Staging)
#rb none

[CL 8445676 by Marcus Wassmer in Dev-RenderPlat-Staging branch]
2019-09-03 19:19:28 -04:00
zach bethel
d85f6605f2 Added helper function to FScreenPassView to compute the correct load action when a pass is writing to every pixel. Helps determine whether to clear if using an HMD mask.
#jira none
#rb none

[CL 8041019 by zach bethel in Dev-Rendering branch]
2019-08-14 14:01:23 -04:00
Guillaume Abadie
61d78d391f Removes the store action on the render target binding that is just redondant.
#rb zach.bethel

[CL 7562289 by Guillaume Abadie in Dev-Rendering branch]
2019-07-23 14:26:29 -04:00
zach bethel
f50bc28c62 Post Process Materials ported to RDG.
#rb Zabir.Hoque
#jira none

[CL 7073468 by zach bethel in Dev-Rendering branch]
2019-06-18 16:58:24 -04:00
Rolando Caloca
aa0d2303d6 Copying //UE4/Dev-Rendering to Dev-Main (//UE4/Dev-Main) @ 6944469
#rb none
#rnx

[CL 6944849 by Rolando Caloca in Main branch]
2019-06-11 18:27:07 -04:00
zach bethel
8c9d26e8ab Fixing artifact with TAAU and motion blur in editor.
#rb none
#jira none

[CL 6807610 by zach bethel in Dev-Rendering branch]
2019-06-03 13:16:39 -04:00
zach bethel
f2155c9f82 Cleanup / Refactor of ScreenPass implementation, and bug fixes.
- Fixed regression with checkerboard rendering and odd render target sizes. The passes were not guaranteed to produce
   a UV coordinate centered on an input pixel for each output pixel.

 - Fixed regression when visualizing SSS at native screen resolution (i.e. no secondary spatial upsampling). The issue was that
  the rendering composition graph injects the backbuffer as the last texture in the post processing pipeline. If visualize SSS was
  the last pass, it would overwrite the backbuffer texture, causing visual artifacts.

 - Minor performance improvement for multi-view SSS. All views in a split-screen scenario now render into the same output target (instead
   of ping ponging between multiple targets) and only views not utilizing SSS get copied from the source target. The is reduces the worst case
   of viewport copied from O(N^2) to O(N); if all viewports use SSS (common in VR), then no copies are performed.

 - Removed FScreenPassTexture in favor of more selective pairing of FRDGTextureRef and FScreenPassTextureViewport. This reduces
   some boilerplate and extraneous memory copying. Motion blur passes now compute their viewport shader parameters once.

#jira UE-72787
#rb Guillaume.Abadie

[CL 6059686 by zach bethel in Dev-Rendering branch]
2019-04-23 13:26:51 -04:00
Yuriy ODonnell
2f6ec94f5a Fixed allocation of temporary FScreenPassContext objects that lead to memory leaks.
FScreenPassContext::Create used to allocate FScreenPassContext objects on FMemStack, however it has a non-trivial destructor which was never called.

Instead of allocating temporary objects on the FMemStack automatically to ensure that they remain alive for the duration of GraphBuilder lifetime, FRDGBuilder::AllocObject() has been added. It explicitly associates the lifetime of allocated temporary object with the specific graph builder.

Correct destructors are automatically called when FRDGBuilder itself is destroyed.

#jira UE-72802
#rb Guillaume.Abadie

[CL 5975133 by Yuriy ODonnell in Dev-Rendering branch]
2019-04-18 05:04:59 -04:00
Rolando Caloca
20e2dcabc5 DR - Warning fix
#rb none
#rnx

[CL 5899631 by Rolando Caloca in Dev-Rendering branch]
2019-04-15 12:27:00 -04:00
zach bethel
51bea3c01b Refactored Screen Pass utilities and Subsurface Scattering Implementation.
- Removed samplers from input struct, since most samplers are shared between inputs.
 - Introduced the FScreenPassTextureParameters struct, describing pixel / UV rect dimension
   used to sample from a region of the texture in HLSL. Centralizes a lot of the common math
   operations currently being done ad-hoc or exposed in PostProcessCommon.ush.

 - Removed FScreenPassInput in favor of a non-shader parameter class called FScreenPassTexture. This
   data structure pairs together the RDG texture and screen pass shader parameters. This allows pass
   inputs to carry important state like which view rect is being used; this provides a more scalable alternative
   to 'SceneColorViewRect' and 'ReferenceBufferSize'.

 - Added an FScreenPassTextureViewportTransform struct that is designed to map UVs from one texture space
   to another. For example, from the upsampled temporal AA UV to velocity UV.

 - Replaced view-specific parameters with screen pass parameters in the subsurface shader.

#rb Guillaume.Abadie
#jira none

[CL 5833674 by zach bethel in Dev-Rendering branch]
2019-04-11 19:32:04 -04:00
zach bethel
d8596faf0e Subsurface scattering post process passes now use new RenderGraph API.
- Cleaned up surrounding code so that subsurface post process code is referenced from one place.
 - Cleaned up shaders to be more consistent and to better support the new parameter struct system.
 - Refactored shaders to use new permutation API and shader parameter APIs.

#jira none
#rb Brian.Karis

[CL 5677263 by zach bethel in Dev-Rendering branch]
2019-04-01 19:37:48 -04:00