Commit Graph

217 Commits

Author SHA1 Message Date
charles derousiers
f499a215a2 Remove RenderLight from DeferredRendering, and change it to a standalone static/internal function to light rendering to ease its refactor to RDG.
#rb none
#jira none

#ROBOMERGE-AUTHOR: charles.derousiers
#ROBOMERGE-SOURCE: CL 18404002 in //UE5/Release-5.0/... via CL 18404004
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18404006 by charles derousiers in ue5-release-engine-test branch]
2021-12-08 03:54:06 -05:00
sebastien hillaire
14639d8be5 Fixed typo in strata
#rb none

#ROBOMERGE-AUTHOR: sebastien.hillaire
#ROBOMERGE-SOURCE: CL 18399598 in //UE5/Release-5.0/... via CL 18399617
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18399637 by sebastien hillaire in ue5-release-engine-test branch]
2021-12-07 15:47:22 -05:00
graham wihlidal
bb4bd1a374 Nanite wireframe support (postfx using barycentric coordinates)
#preflight 61afb25e7177ccd1a11b85b9
#rb brian.karis
#jira UE-98068 UE-98066

#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 18398840 in //UE5/Release-5.0/... via CL 18398910
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18398971 by graham wihlidal in ue5-release-engine-test branch]
2021-12-07 15:14:57 -05:00
jon nabozny
38f3e1f619 Another macro fix for RenderDebugViewMode
#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 18343803 via CL 18375135 via CL 18375389
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18375409 by jon nabozny in ue5-release-engine-test branch]
2021-12-03 17:53:36 -05:00
jon nabozny
216e5d5844 Fix build issues introduced in CL-18267750
[FYI] [at]Graham.Wihlidal

#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 18342267 via CL 18375098 via CL 18375387
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18375405 by jon nabozny in ue5-release-engine-test branch]
2021-12-03 17:53:22 -05:00
graham wihlidal
3b025e6927 Implemented support for the shader complexity debug view mode with Nanite materials.
#rb brian.karis
[FYI] arciel.rekman
#preflight 619c3afffa0b360c407d4675

#ROBOMERGE-AUTHOR: graham.wihlidal
#ROBOMERGE-SOURCE: CL 18267750 via CL 18372835 via CL 18372942
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18373058 by graham wihlidal in ue5-release-engine-test branch]
2021-12-03 16:04:54 -05:00
jon nabozny
5342ad925e Added VirtualTexturePendingMips debug view mode.
For each pixel it shows the worst case missing mip level in all of the virtual textures sampled at that pixel.
Useful to analyze where late virtual texture page streaming is happening.
#rb ben.ingram
#preflight 615b5ecb255462000117288c
#lockdown michal.valient

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 17716764 via CL 17979410 via CL 18366649 via CL 18366731
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18366789 by jon nabozny in ue5-release-engine-test branch]
2021-12-03 02:44:01 -05:00
charles derousiers
078f5165f1 Move SS profiles and SS pre-intregrated profiles textures onto the view in order to make them accessible to all passes without extra manual binding.
#rb sebastien.hillaire, tiantian.xie, wei.liu
#jira none
#preflight 61a61f01f70a9e92dbe9e700

#ROBOMERGE-AUTHOR: charles.derousiers
#ROBOMERGE-SOURCE: CL 18323676 in //UE5/Release-5.0/... via CL 18323690
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18323696 by charles derousiers in ue5-release-engine-test branch]
2021-11-30 08:27:29 -05:00
sebastien hillaire
f8e0092b8b New start material buffer: 2 uint using rop and the rest is written through UAV.
Huge optimisation for console.

#rb charles.derousiers

#ROBOMERGE-AUTHOR: sebastien.hillaire
#ROBOMERGE-SOURCE: CL 18309039 in //UE5/Release-5.0/... via CL 18309083
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18309131 by sebastien hillaire in ue5-release-engine-test branch]
2021-11-29 09:31:58 -05:00
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
sebastien hillaire
438491ff67 Removed the SkyAtmosphere base pass permutation as this is only controlled from the project setting and material state defines anyway.
This was missed when removing the AtmosphericFog.

#rb Arciel.Rekman, Jian.Ru
#jira FORT-411963

#ROBOMERGE-OWNER: sebastien.hillaire
#ROBOMERGE-AUTHOR: sebastien.hillaire
#ROBOMERGE-SOURCE: CL 17964483 in //UE5/Release-5.0/... via CL 17964598
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 17964608 by sebastien hillaire in ue5-release-engine-test branch]
2021-10-28 12:34:50 -04: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
yuriy odonnell
fa14d532ba Merging pull requests to improve rendering determinism through more stable draw sorting.
* Use a shader code hash instead of sorting by shader pointer in CalculateBasePassMeshStaticSortKey()
* Added a serial number to UPrimitiveComponent, which is generated in OnRegister() and then used in FPrimitiveArraySortKey as an extra sort key.

Contributed by andrewtop-cruise.

#github 7934
#github 8273
#preflight 61128303afd67e0001e7a14b
#rb Arciel.Rekman

#ROBOMERGE-SOURCE: CL 17150851 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17150861 by yuriy odonnell in ue5-release-engine-test branch]
2021-08-12 08:35:25 -04:00
graham wihlidal
40f7ac8c00 First version of Nanite indirect material (culled) draws - currently off by default during development/optimization
#rb brian.karis
[FYI] rune.stubbe, ola.olsson, krzysztof.narkowicz
#preflight 610852425938f90001deda26

#ROBOMERGE-SOURCE: CL 17021390 via CL 17021409
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v839-17012307)

[CL 17021419 by graham wihlidal in ue5-release-engine-test branch]
2021-08-02 18:08:36 -04:00
rune stubbe
adf8f7d4fa Added Nanite streamer support for separate sizes for streaming pages and root pages
Reduced root page size from 128kb to 32kb
Page allocation size is no longer rounded up when using fixed sized allocation (r.Nanite.Streaming.DynamicRootPages=0)
Removed the ClusterPageHeaders resource and embedded its data directly into pages
Renamed SOAStrides to PageConstants
#preflight 61041cd35b2fb800011aa2c2

#ROBOMERGE-SOURCE: CL 17007430 via CL 17007443
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 17007446 by rune stubbe in ue5-release-engine-test branch]
2021-07-30 12:31:09 -04:00
jamie hayes
88ca050122 Move Nanite base pass rendering into the base pass render loop to fix a few rendering order issues
#rb Rune.Stubbe, Brian.Karis
#jira UE-118887
#preflight 6101c4064cd7930001974eca

#ROBOMERGE-SOURCE: CL 16988464 via CL 16988503
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16988512 by jamie hayes in ue5-release-engine-test branch]
2021-07-28 17:48:13 -04:00
zach bethel
a44fbef833 Incremental fix-up to add names to RDG passes and use the correct RHI command list.
#rb christopher.waters

#ROBOMERGE-SOURCE: CL 16923748 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16923764 by zach bethel in ue5-release-engine-test branch]
2021-07-22 11:00:18 -04:00
zach bethel
5ec769f91e RDG Parallel Execution (disabled by default)
- Refactored RDG to support free-threaded execution of passes.
 - Refactored renderer to use specific RHI command list variants in pass lambda. Immediate command list passes are forced to stay on the render thread, while other variants can be parallelized.

#rb christopher.waters

#ROBOMERGE-SOURCE: CL 16838717 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16838724 by zach bethel in ue5-release-engine-test branch]
2021-07-13 12:38:37 -04:00
jamie hayes
990e65eb90 - Fix a crash caused by not setting a blend mode when a material is both Thin Translucent and After Motion Blur.
- Add material errors to the HLSL material translator to disallow attempting to use Thin Translucents or Modulate blend mode in the After Motion Blur translucency pass.

#rb sebastien.hillaire

#ROBOMERGE-SOURCE: CL 16704227 via CL 16704249
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16704256 by jamie hayes in ue5-release-engine-test branch]
2021-06-17 10:05:26 -04:00
Sebastien Hillaire
63ed5bc5d3 Added in shader depth test for lighting debug probe with starta.
#rb none

[CL 16512332 by Sebastien Hillaire in ue5-main branch]
2021-06-01 04:03:25 -04:00
Sebastien Hillaire
ed4696500d Add debug probes pass to better debug lighting and reflections.
#rb charles.derousiers

[CL 16465629 by Sebastien Hillaire in ue5-main branch]
2021-05-26 04:46:16 -04:00
Sebastien Hillaire
baed13200f AtmosphericFog component removal from UE5.
Clean up atmospheric fog and have it instaciate a sky atmosphere by default instead
AtmosphericFog now inherits from SkyAtmosphere and looks vaguely similar. Serialisation is handled with a serialisation enum + ue5 version.
"ClassRedirects" could not be used because parameters are not compatible and also due to different serialisation on both component.

So instead Skyamtosphere now has a bool bIsAtmosphericFog (false by default).
AtmosphericFog component now inheriting from Skyatmosphere is setting that to true so that serialisation can be properly handled for both cases : pure Skyatmosphere or SkyAtmosphere replacing a AtmosphericFog with loading/saving. This also supports StaticLightingGUID once converted, see USkyAtmosphereComponent::Serialize.

SkyAtmosphere aerial perspective is now properly gated behind the base pass vertex shader designed for that using BASEPASS_SKYATMOSPHERE_AERIALPERSPECTIVE.

Removed all AtmosphericFog related render code.
Renamed a bunch of shader permutation.

UActorFactoryAtmosphericFog is removed so that the actor is no longer visible and instanciable from menu (existing actors in levels are still created correctly)
UAtmosphericFogComponent is made notplaceable.

ShooterGame compiled and ran succesfuly.
Colton Daniels (QA) will upate reference screneshot in a later CL.

#rb Charles.derousiers, Marc.Audy, Kevin.Ortegren

[CL 16455741 by Sebastien Hillaire in ue5-main branch]
2021-05-25 16:33:27 -04:00
Jian Ru
1c8942520d Reinstate the option to not clear GBufferD
#jira UE-116076
#fyi ben.woodhouse

[CL 16385455 by Jian Ru in ue5-main branch]
2021-05-19 10:26:52 -04:00
jamie hayes
9389c3eb1e Add another optional separate translucency pass that gets composited after motion blur. Has no depth test (due to TAA color upsample with no upsampled depth), and is intended to work around reprojection and motion blur artifacts with translucency.
#rb zach.bethel, michal.valient
#jira none

[CL 16381727 by jamie hayes in ue5-main branch]
2021-05-19 02:09:02 -04:00