x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Level LOD changes flicker for one frame

I have a large terrain created with world composition. I have created LODs for all terrain levels using the built-in tool (from the levels->details window) and setup the streaming distances so that far away landscape actors are rendered using the generated static mesh.

When the pawn/camera gets close enough, the static mesh level (_LOD1) should be replaced with the landscape actor level, and indeed it is. However, there is a visible one frame delay before the switchover takes place which leads to a rather visible flickering (static mesh->nothing->landscape actor).

Presumably this is because of the delay for the occlusion query? I have tried disabling the async loading, event driven loading and background level streaming and these do not resolve the problem. This did not happen in previous engine versions (off the top of my head, I believe up to 4.14 though I haven't checked thoroughly).

Product Version: UE 4.16 Preview
Tags:
more ▼

asked May 02 '17 at 11:37 AM in Bug Reports

avatar image

jubanka
51 1 2 4

avatar image AndrewHurley May 09 '17 at 03:15 PM

Hey Jubanka,

So I would say I can go ahead and test this, but to get an accurate repro case I would need the exact setup since you have your stream distances established and are replacing the LOD with and actual landscape actor.

Would you be able to provide me with a test project in say 4.14. so I can test there and upgrade iteratively to see where it started to break?

Have you attempted to use the 'Dither LOD Transition' on both the landscape and the static meshes material?

Let me know if you have additional questions.

Thanks,

Andrew Hurley

avatar image jubanka May 09 '17 at 04:35 PM

Hello Andrew,

Thanks for getting back to me.

I will try to get a minimal repro case but first I will bisect this for you. I think this behavior came to be around the time the lighting scenario sublevels functionality was introduced, and that was in 4.14 I believe. So I'll try to see if this happens in 4.13 or not.

If a level is visible within the current camera position and if in the next frame it is decided that a LOD sublevel should replace it due to distance conditions it is intuitive I believe that it should be assumed that the LOD level should start visible (unoccluded). The current behavior I see is that either: 1) the LOD level is loaded but assumed occluded (hence not drawn) and an occlusion query is executed, leading to a 1 frame delay of drawing nothing, or 2) the streaming subsystem cannot keep up with loading the LOD level, misses 1 frame during which nothing is drawn. I tend to think that it is (1) as the levels are minimal (only the terrain actor and foliage stuff if applicable). Again, note that in the past there were no such 1 frame "glitches" when switching LOD levels.

I have not touched and LOD dithering options in a long while and I assume they are on. I will check on this.

Please hang on for a couple of days as I sort this out and get back to you.

avatar image AndrewHurley May 09 '17 at 07:12 PM

No worries, thank you for taking the time to compile a minimal test project so I can accurately reproduce the issue.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

So here are the results of my tests:

The issue is not reproducible using versions 4.13 to 4.15 on a different machine. This second machine is more powerful but also is not using an SLI GPU configuration. The issue is present on the less powerful, SLI machine in 4.15. I did not have time to iterate on that machine too.

I am quite satisfied that the issue does not need further investigation. Even if it is a result of the recent Nvidia SLI optimizations, the speedup obtained by these is good enough to warrant a few hiccups like this.

So from my perspective, we can go ahead and consider this issue closed, unless you think otherwise.

more ▼

answered May 11 '17 at 12:07 PM

avatar image

jubanka
51 1 2 4

avatar image AndrewHurley May 11 '17 at 01:56 PM

If it is not obstructing your development, and it does not occur on a different machine then we can mark this issue as resolved for now.

Cheers,

Andrew Hurley

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question