Commit Graph

37 Commits

Author SHA1 Message Date
Tiantian Xie
f56b463a83 Add warning when the maximum number of active ray tracing lights >= RAY_TRACING_LIGHT_COUNT_MAXIMUM
Promote OnGetOnScreenMessages delegate from private to protected so that all derived renderers from SceneRenderer can add screen messages without modifying the header.

#jira UE-152824
#preflight 628d3a697a34ff0c891f7cac
#rb Tiago.Costa

[CL 20355433 by Tiantian Xie in ue5-main branch]
2022-05-24 16:47:43 -04:00
chris kulla
6437cdf6f7 Fix assert on light count when there are no lights in the scene
#fyi Tiago.Costa
#preflight 628d0f196c4351e37287e6a5

[CL 20351394 by chris kulla in ue5-main branch]
2022-05-24 13:33:39 -04:00
tiago costa
3def5e7464 Only store RayTracingLightDataUniformBuffer in FViewInfo.
Remove unecessary mutable type qualifiers from FMeshProcessorShaders.

#rb yuriy.odonnell
#preflight 628cf1e17778f10598b1e011

[CL 20349077 by tiago costa in ue5-main branch]
2022-05-24 11:30:18 -04:00
tiago costa
afb5cd8ec8 Updated raytracing light culling volume to use RDG.
- Buffers allocated using RDG.
- Use TRDGUniformBufferRef instead of TUniformBufferRef to be able to include SHADER_PARAMETER_RDG_BUFFER_SRV inside the uniform buffer.

#rb yuriy.odonnell
#preflight 628ba79c573a7de2c427c332

[CL 20330573 by tiago costa in ue5-main branch]
2022-05-23 12:34:52 -04:00
tiago costa
4413157e9c Remove unused shader parameters.
- LightDataBuffer is accessed from RaytracingLightsDataPacked uniform buffer.
- SSProfilesTexture is accessed from View uniform buffer.

#rb yuriy.odonnell
#preflight 6287e2a09b098f85414de136

[CL 20301916 by tiago costa in ue5-main branch]
2022-05-20 16:04:14 -04:00
eric mcdaniel
bf1a8a9d7f Code compilation fixes for implicit FVector conversions
- gets EngineTest Development Editor compiling
- changes may not be LWC correct as I'm just trying to get code compilation unblocked
  - will need revisited

#rb none
#jira none
#preflight skipped

[CL 19264601 by eric mcdaniel in ue5-main branch]
2022-03-04 07:43:02 -05:00
tiago costa
4b25f0e6df Generate Raytracing light culling structure in TranslatedWorldSpace.
- Calculate light position in translated world space.
- Updated FCulledLightList::Create(...) to calculate volume cell position using TranslatedWorldSpace.

#rb Patrick.Kelly
#preflight 62067560b84973a2bb8a201a

[CL 18952068 by tiago costa in ue5-main branch]
2022-02-11 09:56:52 -05:00
Charles deRousiers
86ece99784 Add rect light texture atlas support.
This changes allow to bind a larger amount of rect. light texture, and allows future support for rect light in forward & cluster passes.

#jira none
#rb sebastien.hillaire
#preflight 61fcebd0b5092d45ad110db4

[CL 18861192 by Charles deRousiers in ue5-main branch]
2022-02-04 04:18:10 -05:00
fred kimberley
7fbfaf57c8 Require explicit constructors/casts when converting between FVector, FVector3d, and FVector3f.
#jira UE-122078
#rb Andrew.Davidson, Colin.McGinley
#preflight standard build

#ROBOMERGE-AUTHOR: fred.kimberley
#ROBOMERGE-SOURCE: CL 18817999 in //UE5/Release-5.0/... via CL 18818012 via CL 18822871
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18824721 by fred kimberley in ue5-main branch]
2022-02-02 07:59:31 -05:00
tiago costa
f5e28a2fce Store TranslatedLightPosition in FRTLightingData
- Not using TilePosition+RelativeWorldPosition to avoid increasing struct size.
- FRTLightingData arrays seem to be calculated every frame so shouldn't be a problem.

#rb aleksander.netzel
#preflight 61fa6a2d9e4d23cd93c9c509

[CL 18824081 by tiago costa in ue5-main branch]
2022-02-02 06:42:44 -05:00
ben ingram
d1124c2e41 Move a bunch of lighting calculations to translated world space, fixes various problems at LWC scale
#preflight 61f1760afd5285142b43178a
#rb Daniel.Wright, tiago.costa, Andrew.Lauritzen, charles.derousiers
#jira UE-139831

#ROBOMERGE-AUTHOR: ben.ingram
#ROBOMERGE-SOURCE: CL 18738670 in //UE5/Release-5.0/... via CL 18738820 via CL 18739464
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18740039 by ben ingram in ue5-main branch]
2022-01-26 13:56:31 -05:00
patrick kelly
3f2221ac4c Fixing broken RT light culling.
Generation of the RT culling grid depended on uploading lights' BoundingSphere value, defined natively as a VectorRegister type. Changes with LWC no longer makes this a compatible type to directly upload in a TResourceArray. Instead, the value must be type-converted to a supported format (eg: FVector4f).

#rb daniel.wright
#preflight 61d8bad36c000c869b30b909

#ROBOMERGE-AUTHOR: patrick.kelly
#ROBOMERGE-SOURCE: CL 18551624 in //UE5/Release-5.0/... via CL 18551657
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18551672 by patrick kelly in ue5-release-engine-test branch]
2022-01-07 17:38:55 -05:00
charles derousiers
24fea8db34 Change LTC textures to be stored onto the view to avoid manual binding into the several passes.
#rb sebastien.hillaire
#jira none
#preflight 61a7598f800738dbfba11678

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

[CL 18337679 by charles derousiers in ue5-release-engine-test branch]
2021-12-01 07:03:05 -05:00
yuriy odonnell
5765bf1f4c Fix various issues with ray tracing scene construction when running without ray tracing shader support (inline-only mode).
* Add IsRayTracingEnabledForProject() to check if ray tracing is enabled independently from RT shader support
* Skip creating the RayTracingMaterialPipeline when RT shaders are not supported
* Update FRayTracingMeshProcessor::Process() to work without full RT sahders, as it's still needed to compute the RT instance masks

#rb aleksander.netzel, tiago.costa

#ROBOMERGE-AUTHOR: yuriy.odonnell
#ROBOMERGE-SOURCE: CL 18295300 in //UE5/Release-5.0/... via CL 18295310
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18295319 by yuriy odonnell in ue5-release-engine-test branch]
2021-11-25 11:58:24 -05:00
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
Andrew Davidson
3ddc3a4da3 Merge up from //UE5/Dev-LargeWorldCoordinates
#rb none

[CL 16211417 by Andrew Davidson in ue5-main branch]
2021-05-05 15:07:25 -04:00
Yuriy ODonnell
786d291360 Create ray tracing scene on a task. Reduces the Render Thread critical path time.
#rb Juan.Canada

[CL 15775714 by Yuriy ODonnell in ue5-main branch]
2021-03-23 09:21:56 -04:00
Emil Persson
4516b985df Name all resources and make naming mandatory
#rb yuriy.odonnel, kenzo.terelst

[CL 15416919 by Emil Persson in ue5-main branch]
2021-02-16 08:37:39 -04:00
Yuriy ODonnell
098806a888 Removed DIM_MISS_SHADER_LIGHTING from all ray tracing shaders, now assuming it is always enabled.
In other words, lighting is now always evaluated using a miss shader in UE5 on all platforms.

#rb Patrick.Kelly
#jira UE-102736

[CL 15284373 by Yuriy ODonnell in ue5-main branch]
2021-02-02 16:20:56 -04:00
Emil Persson
adf0716e8d Replace FVertexBufferRHIRef, FIndexBufferRHIRef and FStructuredBufferRHIRef with FBufferRHIRef.
#rb kenzo.terelst

[CL 15153257 by Emil Persson in ue5-main branch]
2021-01-21 07:06:03 -04:00
Marc Audy
a7f9391231 Merge UE5/Release-Engine-Staging @ 14811410 to UE5/Main
This represents UE4/Main @ 14768117

For ReleaseObjectVersion.h
#lockdown Marcus.Wassmer

[CL 14811440 by Marc Audy in ue5-main branch]
2020-11-24 18:42:39 -04:00
Kenzo Terelst
1ecc3cfccd Fix RT transition issues
#rb Yuriy.ODonnell
#jira none

[CL 14719039 by Kenzo Terelst in ue5-main branch]
2020-11-11 09:48:17 -04:00
Marc Audy
68150e0be7 Merge UE5/Release-Engine-Staging to UE5/Main @ 14611496
This represents UE4/Main @ 14594913

[CL 14612291 by Marc Audy in ue5-main branch]
2020-10-29 13:38:15 -04:00
Juan Canada
126091a072 Fixed ray tracing shadows of directional lights were overriden by invalid shadow maps in some cases
#rb yujiang.wang
#jira none

[CL 14481670 by Juan Canada in ue5-main branch]
2020-10-13 13:53:38 -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