Parallel Translucency causes flickering

Im using the forward renderer and only happens on packaged builds, also im using SteamVR but this also seems to happend with stereo rendering off.

I endup finding the cause because the game throws an assertion:

Ensure condition failed: GetSceneColorForCurrentShadingPath() [File:C:\UnrealEngine\Engine\Source\Runtime\Renderer\Private\PostProcess\SceneRenderTargets.cpp] [Line: 955]

And temporally fix it using:

r.ParallelTranslucency 0

Hi ,

I wasn’t able to reproduce your issue. For my test I created a blank project and enabled forward shading + instanced stereo shading. I tried various materials and postprocess settings.

Could you provide some steps on how to reproduce this issue starting from a blank project? If that isn’t possible could you answer these questions.

  • Where do you see the flickering? For example do you see it on certain materials or assets or the viewport in general.
  • Are you able to reproduce this issue in a new default map.
  • When you say the issue occurs with stereo rendering off in what instances do you see it occur? For example when you play in editor, play in standalone, or just while editing it happens randomly.

,

Ed

Hi

  • Flickering is visibility-wise (like if it were culled), i have several glass meshes and some old school decals (translucent planes) only happens if certain meshes are visible but affects all translucency in general.
  • On a new map, no but i did try on all my maps, including a very simple menu one
  • Yes it happens with instanced stereo on and off and only in packaged projects

It’s worth mentioning that i started this project with 4.13 and upgraded to 4.14 with forward shading, since then this is occurring.

this is a video showing how it looks with r.ParallelTranslucency enabled, notice that when the decal is visible everything starts flickering and when the assertion occurs

I’ll investigate further tho, any ideas of what could be causing this? the renderer code is a bit overwhelming to me right now

Okay, so I ran a test using the glass statue in the starter content and didn’t get flickering in a packaged build. You also stated that this issue doesn’t occur on a new default map.

That tells me that the issue may be related to a few things:

  • You have specific materials that flicker due to some settings or nodes being used in the material
  • You have projects settings enabled that may cause flickering
  • There may be some packaging settings that are causing the issue
  • You have something in your map that is causing the issue like a post process volume or world setting. (I think this may be likely since you said this issue doesn’t occur in a default map)

To narrow this down you may need to follow these steps:

  1. Check to see what is different between your map and a default created one. Something as simple as a post process volume with bloom settings can cause issues. Try to narrow down what is doing this so that you are able to get the flicking to occur on purpose and you know the cause.
  2. If that doesn’t help it may be good to check if this issue only occurs with certain materials. Try making a very simple translucent material with all other default settings and see if the issue occurs.
  3. Another good test would be to migrate problem assets like the glass windows to a blank project and package there. It could be good to test certain things in the blank project to try to get the bug to occur. Like enabling forward shading or other various project settings that you have in your bugged project.

There isn’t much else I can do since I have no idea how the materials are set up and I don’t know your project settings. If you can narrow down the issue a bit I can continue this investigation.

,

Just reporting some progress:

I was not able to find the cause by iterating through all possible material setting, nor any specific project settings.

i also migrated the level to a clean project with same rendering settings and it worked fine.

However this gave me a break thought seems that the bug is caused by some of my game code so i will be iterating thought it in the next week (it’s really cumbersome since i need to packaged every time)

!

Hi ,

I’m marking this post as resolved for the time being as (cannot reproduce). You can reopen the post by leaving a comment here.

,

Ed

We ran into this same issue. Root cause was using SceneColor nodes in translucent materials using forward renderer. Maybe this was fixed for 4.15 but in our build it causes a full gpu flush + blit of render buffer to a scene color texture PER OBJECT DRAW X_X

Hey Ikrima,

I was unable to reproduce this behavior and this warrants additional investigation. Would you mind making a new post and putting the link here in a comment?

This is to prevent too much clutter and keep issues separate that may potentially be different.

,

In 4.14, I have encountered translucent flickering with the forward renderer in translucent materials that have refraction or use a scene color node. I have also found valid workarounds by changing r.SceneColorFormat to 4 (we normally use 2) or set r.ParallelTranslucency to 0 (which is normally set to 1). Performance is everything since we’re doing a VR project, so I’ve been trying to avoid using such materials so I don’t need to switch these values…

For information, we had a very similar issue on XboxOne with 4.16. Not seen on PS4 and PC though. Disabling ParallelTranslucency fixed it for us as well.