disguise-one / RenderStream-UE

RenderStream plugin for Unreal Engine
BSD 3-Clause "New" or "Revised" License
68 stars 23 forks source link

Asset caching performance improvement #60

Open tomasgdc opened 1 year ago

tomasgdc commented 1 year ago

DO NOT MERGE as this still needs to be tested by client if it actually helps

Issue: When using a multiuser editing session with multiple rx's and an editor machine, the constant resaving of the RenderstreamChannelCacheAsset causes the multi user session and Renderstream to crash. This only seems to be an issue when using multiple heavy sublevels as it take a long time to save all the individual cache assets for each sublevel.

Profiling: During profiling I noticed that ForceDeleteObjects function was stalling main thread a lot because it was force replacing references and we don't want to do that. AssetCreated function was taking some amount of time too even though it just broadcasting that new in memory asset is created

Before changes: image

After changes: image