Commit Graph

92 Commits

Author SHA1 Message Date
josie yang
2289056981 Fix incorrect auto merge of CL23966262 causing duplicated OwnerName
[CL 23966886 by josie yang in ue5-main branch]
2023-02-02 08:46:21 -05:00
josie yang
c133d226e8 Integrate RenderResourceViewer from //UE5/Main
Part3 - Integrate CL23347911 as edigrate
Add owner column to Render Resource Viewer, add owner path name tracking to skeletal & static mesh buffers
with conflict resolve modifications in RawIndexBuffer.cpp/h, RenderResource.cpp/h, RHIResources.h

#preflight 63dab3e2cf5296811729fecd

[CL 23966872 by josie yang in ue5-main branch]
2023-02-02 08:45:12 -05:00
christopher waters
1f21b73b25 Ran IWYU on RHI and RenderCore, private only.
#preflight 63d358c85c69f453c1f79c37

[CL 23889591 by christopher waters in ue5-main branch]
2023-01-27 14:54:10 -05:00
christopher waters
5c36939f3a Dependency cleanup around RenderCore.h includes.
#preflight 63c1b21d1a06fc6105ef31c4

[CL 23688227 by christopher waters in ue5-main branch]
2023-01-13 17:25:01 -05:00
Josie Yang
f14eb91ef7 Remove game thread check on RHI resource set owner name. EngineTest can call on FSkinWeightVertexBuffer from other thread on consoles
#jira UE-172334
#preflight skip

[CL 23526201 by Josie Yang in ue5-main branch]
2022-12-15 08:52:27 -05:00
christopher waters
3b00d465a9 Reimplementing and correcting a backed out change that removes the header dependency on FResourceArrayInterface.
#preflight 63927786c415e8dc786e6e7f

[CL 23460971 by christopher waters in ue5-main branch]
2022-12-09 00:24:48 -05:00
bob tellez
838b34f3ed [Backout] - CL23454303
[FYI] christopher.waters
Original CL Desc
-----------------------------------------------------------------
Removing a lot of includes from RenderResource.h

#preflight 63924b059549ddaa2851034f

[CL 23460251 by bob tellez in ue5-main branch]
2022-12-08 21:23:27 -05:00
christopher waters
f3af3d734b Removing a lot of includes from RenderResource.h
#preflight 63924b059549ddaa2851034f

[CL 23460178 by christopher waters in ue5-main branch]
2022-12-08 21:20:03 -05:00
Josie Yang
6b3aaea739 Check for both GameThread & ParallelGameThread in render resource set owner name function
#jira UE-171491
#preflight 63906a1ebb6fefa47211767d

[CL 23426481 by Josie Yang in ue5-main branch]
2022-12-07 06:22:33 -05:00
christopher waters
f8f7ca2782 Moving the bulk of global rendering resources into GlobalRenderResources.h.
Not fully deprecating includes yet.

#preflight 638eba1fc0652bbec2335106

[CL 23421741 by christopher waters in ue5-main branch]
2022-12-06 19:47:11 -05:00
Josie Yang
29addcedba Remove game thread check in FRenderResource::SetOwnerName as it can be called from other threads on some platforms
#jira UE-167816
#preflight skip

[CL 23411753 by Josie Yang in ue5-main branch]
2022-12-06 12:54:15 -05:00
christopher waters
fcfd8d3c58 Fixing CIS after manual merge.
[CL 23380413 by christopher waters in ue5-main branch]
2022-12-02 18:02:46 -05:00
christopher waters
e73b6cb859 Moving all RenderResource implementations in RenderResource.h into the cpp file for future forward declaration.
#preflight 638a62334c3ce8ae5d325aff

[CL 23380402 by christopher waters in ue5-main branch]
2022-12-02 18:02:29 -05:00
christopher waters
56465bfef0 Moving some utility functions out of RenderResource and into RenderUtils.
#preflight 638a505f4c3ce8ae5d2e174c

[CL 23378959 by christopher waters in ue5-main branch]
2022-12-02 16:36:00 -05:00
christopher waters
6ae040165a Moving FRayTracingGeometry into its own header+source files. FRayTracingGeometry can't forward declare its RHI members yet, so we need it in its own header to remove those dependencies from RenderResource.h
#rb tiago.costa
#preflight 63897bc0976b1644cb2f7450

[CL 23377483 by christopher waters in ue5-main branch]
2022-12-02 15:09:41 -05:00
Josie Yang
3612580418 Add owner column to Render Resource Viewer, add owner path name tracking to skeletal & static mesh buffers
#jira UE-167816
#rb jeremy.moore, jason.nadro, christopher.waters
#preflight 63865f947b4bd3f057a4e40b

[CL 23347911 by Josie Yang in ue5-main branch]
2022-12-01 05:27:05 -05:00
aleksander netzel
5fb13876bb Add proper support for streamed geometries (geometries initialized as StreamingDestination) when dynamic ray tracing is enabled:
* Add FRayTracingGeometry::EGeometryStateFlags for tracking the state instead of several bools:
 - Add new state for tracking if the geometry was streamed in - its primary use is for dynamic ray tracing.
 - When ray tracing is toggled on at runtime we only recreate geometries that were marked as streamed in.
* Streamed geometries have to be created in a different way than regular geometries:
 - Creating geometry with StreamingDestination type will not allocate any memory for BLAS buffers.
 - Those can only be initialized by InitRHIForStreaming from temporary geometry with a StreamingSource type
 - Added FRayTracingGeometry::InitRHIForDynamicRayTracing() to handle both StreamingDestination and Rendering
  - For StreamingDestination it will do similar steps as normal mesh streaming does.
* Add missing RayTracingGeometry initialization when dynamic ray tracing was enabled but ray tracing was disabled.

#rb tiago.costa, yuriy.odonnell
#preflight 6372245ebf76990b71f5d021

[CL 23116977 by aleksander netzel in ue5-main branch]
2022-11-14 08:48:54 -05:00
aleksander netzel
c07eb3fff0 Initial support for switching ray tracing on/off at runtime:
* Split IsRayTracingEnabled() into 2 parts: IsRayTracingEnabled() which can be changed at runtime and IsRayTracingAllowed() for checking if ray tracing can be enabled.
* r.Raytracing can now have following values: 0 - disabled, 1 - enabled all the time, 2 - enabled dynamic
* When ray tracing is dynamic, RayTracingGeometryManager will collect all FRayTracingGeometry and allocate/release RHI objects as needed depending on if ray tracing is enabled or not.
* Ray tracing can be switched on/off with r.Raytracing.Enable (default is 1).
* Add support to most features used in CitySample/Lyra for switching ray tracing at runtime.
* TODO: Hair geometries are not yet released.

#rb yuriy.odonnell
#preflight 634feac68176062ea7da933f

[CL 22622885 by aleksander netzel in ue5-main branch]
2022-10-19 09:00:41 -04:00
elizabeth baumel
5c94e27b3c Add missing LLM tracking tags. Went from >40000 untagged allocations to about 4400 in QA game. Most of the untagged allocations were CVars. The remaining untracked allocations are largely from dynamic initializers and static/const data.
#rb kenzo.terelst
#jira UE-155266
#jira UE-155196
#preflight 6334ab8eee7b13756dcee727

[CL 22240429 by elizabeth baumel in ue5-main branch]
2022-09-28 22:21:04 -04:00
florin pascu
2ff00a89a2 Fix RT for other platforms besides PC
#rb Aleksander.Netzel
#jira none
#preflight 6321be4c29254beccbc5c4bd

[CL 22008205 by florin pascu in ue5-main branch]
2022-09-14 11:35:13 -04:00
florin pascu
0bc3e61f01 - Add IsRayTracingEnabled(ShaderPlatform) overload that returns true when Project has RT on and ShaderPlatform supports RT and has it on for the project
- Don't create FRayTracingMeshProcessor when IsRayTracingEnabled is false
- Only Add RayTracingGeometries when IsRayTracingEnabled returns true
They are added to the FRayTracingMeshProcessor and will try to compile SF_RayHitGroup shaders
#rb Dmitriy.Dyomin, Carl.Lloyd
#jira UE-160278
#preflight 63208193e93a80888c3ea4d9

[CL 21988506 by florin pascu in ue5-main branch]
2022-09-13 14:22:19 -04:00
arne schober
11bcaa521d Add extra debug info for FRenderResource lifetime.
#ROBOMERGE-AUTHOR: arne.schober
#ROBOMERGE-SOURCE: CL 21198085 via CL 21198090 via CL 21198094
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21198504 by arne schober in ue5-main branch]
2022-07-21 04:08:31 -04:00
arne schober
ba88ede4c6 Fix race in BatchReleasedResources
#RB lason.nadro

#ROBOMERGE-AUTHOR: arne.schober
#ROBOMERGE-SOURCE: CL 21188727 via CL 21188736 via CL 21188745
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21194276 by arne schober in ue5-main branch]
2022-07-20 18:59:05 -04:00
zach bethel
8a5ad9558b Implemented support for asynchronous creation and deletion of FRenderResource.
The resource list uses a thread local free list that is coalesced later.

#preflight 62bf468c8d5e6787591b22e5
#rb yuriy.odonnell

[CL 20919518 by zach bethel in ue5-main branch]
2022-07-01 15:32:18 -04:00
jian ru
798eacf38e Fix a memory stomp caused by writing to a released FLastRenderTimeContainer
[REVIEW] [at]peter.sauerbrei, [at]ben.woodhouse, [at]allan.bentham
#localization none
#tests ran ReplayRun tests on multiple platforms

#ROBOMERGE-AUTHOR: jian.ru
#ROBOMERGE-SOURCE: CL 19315963 via CL 19315975 via CL 19315977 via CL 19316728 via CL 19317123 via CL 19317129
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v926-19321884)

[CL 19347780 by jian ru in ue5-main branch]
2022-03-10 21:40:52 -05:00