Simul Support ExchangeCategory: VRRendering sky to Cubemap
Daniel McGee asked 4 years ago

Unfortunately I’m having some serious performance issues in my VR project, and I haven’t had any luck trying to resolve them by messing with the Sequence Actor settings (even on the ClearSky sequence my frame times are spiking to ~13ms every update). I don’t really need real volumetric clouds — I’m not building a flight sim, just wanted a nice-looking dynamic sky and weather. So the “Render to Cubemap” option mentioned in the docs under performance/optimization seemed promising. However, I’m getting an engine crash as soon as I run the game after calling that node in my level blueprint’s BeginPlay event. The docs are pretty sparse as far as how to actually set this up, so I’m hoping I just did it wrong. Has anyone else successfully gotten this working? Here’s what I tried:

  • Created a Cube Render Target asset with a 512 X resolution
  • In my level blueprint’s BeginPlay event, called True Sky Sequence Actor -> Render to Cubemap, with my Cube Render Target as the selected asset and the Cubemap Resolution also set 512

The crash occurs whether or not I actually assign the cubemap to a material and assign that material to a sky sphere. If this is an unknown issue, let me know and I’ll repro it again so I can grab the error message and callstack and add it here. 

1 Answers
James - Simul Support Staff answered 4 years ago

Hi Daniel, Apologies, this is a confirmed crash and we are looking into this, and we will hopefully get this fixed soon.

In regards to the performance – if you could grab a performance profile that would be great – easiest way is to use the “Get Profiling Text” blueprint, and then print that to console. Always helpful to know whats holding us up on different systems.

Daniel McGee replied 4 years ago

Thanks James, I’ll keep an eye out for updates! I’m running on an RTX 2070 Super, so was a little surprised that I couldn’t find feasible settings, but I’m also using an Index (lot of pixels to push) and using deferred rendering, so there’s a lot working against me. I’ll run a performance profile tonight and post an update with my results.

Daniel McGee replied 4 years ago

Hey James, I’m actually now having a new issue — I did some profiling and discovered that my distance field lighting was pretty expensive. So I unticked the “Cast Shadows” box in the TrueSkyLight to disable DFAO. This got me well within frame targets, but I don’t really want to scrap DFAO, so I did some other tweaking — reduced the max distance for distance field shadows, reduced the distance for the dynamic shadows and reduced the number of shadow cascades, then re-enabled DFAO. My framerate is great, but it appears that re-enabling DFAO is not having any effect. It appears in the editor window, but disappears as soon as I press “Preview in VR” (both in my headset and in the mirrored preview window). Confirmed that I wasn’t just imagining it by toggling the `r.DistanceFieldAO` property with the headset on — no change. When I first hit play, I can see the AO for a brief fraction of a second before it just immediately fades out. Tried restarting the editor, and also deleting all my lights and the TrueSkySequenceActor and re-initializing TrueSky — still can’t get the DFAO to come back. Is this a known issue? Is TrueSky not fully compatible with DFAO, and/or does it offer a replacement option? Sorry for bombarding you with questions. 🙂