Commit Graph

24 Commits

Author SHA1 Message Date
charles derousiers
c0187cb889 Add raytracing debug view for visualizating Substrate's material properties.
[FYI] sebastien.hillaire

[CL 35961944 by charles derousiers in ue5-main branch]
2024-09-03 03:38:50 -04:00
chris kulla
fffb652a2e RayTracing: Implement a new light grid used in raytracing passes (Translucency and Lumen Hit Lighting) based on the method used in the Path Tracer
The new light grid can localize the influcence of each light much better despite being built only in 2D. Some logic is duplicated between the path tracer and decals which use a similar system.  It should be possible to share some of the logic with future refactors.

This refactor also allows more than 256 lights (no code was actively depending on this limit anymore after the removal of RTR and RTGI). However there is still a fixed number of lights available per grid cell. Using the "Light Grid Occupancy" debug mode can help visualize where this might be occurring.

The following cvars can be used to control memory usage and performance:
 * r.RayTracing.LightGridResolution: Resolution of the 2D grid which holds lights
 * r.RayTracing.LightGridMaxCount: Maximum number of lights per grid cell (if there are fewer lights than this in the scene, that number will be used instead)

Code cleanup: Refactor  LIGHT_TYPE_* definitions to be shared across shaders and C++ code and remove duplicated definitions.

#jira UE-170690
#rb Aleksander.Netzel

[CL 29508005 by chris kulla in ue5-main branch]
2023-11-06 20:11:26 -05:00
xujie chen
ef23279586 Debug Visualization: count the number of rays hits per scene primitive
generate heatmap and hit stats info of the top K primitives.

#jira
#rb tiago.costa, Tiantian.Xie, aleksander.netzel

[CL 28109999 by xujie chen in ue5-main branch]
2023-09-21 18:03:08 -04:00
aleksander netzel
03c05bc5b4 [Backout] - CL28015228
[FYI] xujie.chen
Original CL Desc
-----------------------------------------------------------------
Debug Visualization: count the number of rays hits per scene primitive
generate heatmap and hit stats info of the top K primitives.

#jira
#rb tiago.costa, Tiantian.Xie, aleksander.netzel

[CL 28019088 by aleksander netzel in ue5-main branch]
2023-09-19 19:25:01 -04:00
xujie chen
2156a4050b Debug Visualization: count the number of rays hits per scene primitive
generate heatmap and hit stats info of the top K primitives.

#jira
#rb tiago.costa, Tiantian.Xie, aleksander.netzel

[CL 28015352 by xujie chen in ue5-main branch]
2023-09-19 17:39:15 -04:00
xujie chen
20d86bdd33 Debug Visualization: Anyhitshader count, count the number of triangles hit per ray, and generate a heatmap for them
#rb tiago.costa, Tiantian.Xie, aleksander.netzel

[CL 27419469 by xujie chen in ue5-main branch]
2023-08-28 14:49:34 -04:00
aleksander netzel
040aab38c6 Add new ray tracing debug visualization mode to show heatmap for primary rays instance overlap:
* Collect instance AABBs when building RayTracingScene
* Output depth from RayTracingDebug pass for depth testing the instance AABBs
* Render instance AABBs as boxes with depth testing to accumulate the overlap which is then converted to heatmap and blended on top of RayTracingDebug output
* Non-GPUScene instances are not yet supported in this mode.

#rb yuriy.odonnell, tiago.costa
#preflight 63485810ad0f7e2f20eb5db2

[CL 22524168 by aleksander netzel in ue5-main branch]
2022-10-14 05:35:28 -04:00
aleksander netzel
5320802344 New RayTracingDebug modes:
* "Dynamic Instances" - shows instances that go through dynamic path in green and all others in red
* "Proxy Type" - shows instances colored by proxy type hash
* "Picker" - allows picking instances/triangles with a mouse to show BLAS and instance info.

#rb Yuriy.Odonnell
#preflight 62d50b99d54af4b9a223b388

[CL 21143807 by aleksander netzel in ue5-main branch]
2022-07-18 04:31:36 -04:00
aleksander netzel
ea75809cb8 Add per-pass traversal statistics for inline ray tracing for supporting platforms:
* Added RaytracingTraversalStatistics to create, capture and print TraceRayInline traversal statistics.
* In inline raytracing shaders you only need to call TraceRayInlineAccumulateStatistics() which will gather the results of the most recent TraceRayInline call.
* New debug visualization mode 'Traversal Statistics' that will print to the screen the traversal statistics for primary rays.

#rb Yuriy.Odonnell
#preflight 62860caa2b53e2be4c8ceee2

[CL 20277869 by aleksander netzel in ue5-main branch]
2022-05-19 06:05:59 -04:00
tiago costa
3c7d7a5b4a Support nanite stats in RayTracingDebugTraversal.
#preflight 62348cb3da56b5683ac6fdf9
#rb Aleksander.Netzel

[CL 19434963 by tiago costa in ue5-main branch]
2022-03-18 10:26:29 -04:00
aleksander netzel
87350eedcd New ray tracing debug visualization modes:
Traversal Node - shows bounding box nodes intersections
Traversal Triangle - shows triangle/leaf nodes intersections
Traversal All - shows total node intersection count

#rb Tiago.Costa
#preflight 61ad4fc4245256036a307c3a

#ROBOMERGE-AUTHOR: aleksander.netzel
#ROBOMERGE-SOURCE: CL 18393728 in //UE5/Release-5.0/... via CL 18393733
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18393742 by aleksander netzel in ue5-release-engine-test branch]
2021-12-07 06:55:02 -05:00
ryan vance
64db820c54 Add a far field visualization mode for ray tracing debugging.
#rb patrick.kelly

#ROBOMERGE-AUTHOR: ryan.vance
#ROBOMERGE-SOURCE: CL 18176711 via CL 18371985 via CL 18372022
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18372050 by ryan vance in ue5-release-engine-test branch]
2021-12-03 15:21:50 -05:00
aleksander netzel
dba2df70b7 Ray Tracing Debug Visualization: Add Triangles Mode
#rb yuriy.odonnell
#preflight 611e1b76cc11eb0001d5a3a0

#ROBOMERGE-SOURCE: CL 17229869 via CL 17229897
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17229902 by aleksander netzel in ue5-release-engine-test branch]
2021-08-19 05:42:20 -04:00
Yuriy ODonnell
213d88c327 Groundwork for ray tracing performance visualization view modes
[CL 16242641 by Yuriy ODonnell in ue5-main branch]
2021-05-08 10:11:02 -04:00
Yuriy ODonnell
40aac04490 Implemented a ray tracing instance visualization mode
#rb Juan.Canada

[CL 16219115 by Yuriy ODonnell in ue5-main branch]
2021-05-06 05:58:19 -04:00
Rolando Caloca
5b82f15def Copying //UE4/Dev-RenderPlat-Staging@11388153 to //UE4/Main
#rb none
#rnx

[CL 11388545 by Rolando Caloca in Main branch]
2020-02-12 13:27:19 -05:00
Juan Canada
2ecf4f9708 Merging //UE4/Dev-Main@10877709 to Dev-RenderPlat-Staging(//UE4/Dev-Rendering)
#rnx
#rb none

[CL 10895568 by Juan Canada in Dev-RenderPlat-Staging branch]
2020-01-07 13:45:01 -05:00
Marc Audy
360d078ca3 Second batch of remaining Engine copyright updates.
#rnx
#rb none

[CL 10871248 by Marc Audy in Main branch]
2019-12-27 09:26:59 -05:00
Marcus Wassmer
6517c68ef5 Copying //UE4/Dev-RenderPlat-Staging@8684824 to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 8684840 by Marcus Wassmer in Main branch]
2019-09-14 09:45:25 -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
Rolando Caloca
532adaa65c DR - Merging //UE4/Dev-Main@5531558 to Dev-Rendering (//UE4/Dev-Rendering)
#rb none
#rnx

[CL 5591014 by Rolando Caloca in Dev-Rendering branch]
2019-03-27 11:33:31 -04:00
juan canada
c03c0f183b Copying //UE4/Private-Woodchuck-Staging[at]5316917 to Release-4.22 (//UE4/Release-4.22)
#rb none
#JIRA

#ROBOMERGE-SOURCE: CL 5317515 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5336839 by juan canada in Main branch]
2019-03-07 08:13:56 -05:00
Juan Canada
d2f93b57b2 Undo //UE4/Main/... changelist 5335728
#rb marcus.wassmer

[CL 5335770 by Juan Canada in Main branch]
2019-03-06 23:59:18 -05:00
Juan Canada
27b0d7a824 Copying //UE4/Private-Woodchuck-Staging[at]5316917 to Release-4.22 (//UE4/Release-4.22)
#rb none
#JIRA

#ROBOMERGE-OWNER: Juan.Canada
#ROBOMERGE-AUTHOR: juan.canada
#ROBOMERGE-SOURCE: CL 5317515 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 5335728 by Juan Canada in Main branch]
2019-03-06 23:42:45 -05:00