Solution for Stutters & Pauses (updated for SU5)

A quick update:

Yesterday I was flying over Ireland and I spotted something different indeed in VR (didn’t try in 3D).

I’ve noticed anytime I was on the ground rolling on the taxiways and runway, and depending on the direction I was mostly looking at, up to around 500ft to 1000ft AGL, there was something taxing the perf. I could see this indirectly in the form of a little bit more (sometimes some much more) wobbles with motion smoothing enabled. Once above a certain height it was not longer exhibiting this but “normal” motion smoothing wobbles (meaning as expected but no more). When landing, all of a sudden again, maybe about below the same height AGL, wobbles where back down to the ground up to the parking spot.

The only way to lessen or nearly to eliminate these was to lower Terrain LOD down to less than 50%. I believe there is indeed something amiss with the rendering engine when below a certain height. It could be Pixel/Vertex Shader maths based on height having a bug causing extra loss of perf, it could be rendering engine sending some data only below a certain height and causing extra load, I don’t know, but the link to the Terrain LOD makes me think it relates to the same perf limitations I was noticing when I started “My VR” topics:

  • When flying over Photogrammetry areas, I needed to reduce TLOD to 50% as well (for my test hardware of course)
  • When flying over Sparse areas, it was fine with TLOD 100%.
  • When flying over London more recently, the same TLOD was affecting the outcome.

My limited understanding of the FS2020 rendering engine makes me think there is a problem in the CPU/GPU sync when streaming large amount of vertex buffer data, and this could be one contention point causing the perf issues. In effect, TLOD is not only affecting ground texture LOD ring distances, but it is also affecting buildings and trees LOD ring distances (they multiply each other, for example: building_lod * terrain_lod).

This means the higher the TLOD, the more geometry to stream to VRAM, not just the more textures. I can sense Trees are less taxing in general and I believe it is because there are less different models to render and therefore it makes an effective use of geometry instancing. However buildings are more varied and with photogrammetry, the mesh complexity inherently translates in even more geometry to stream (and I’ve posted somewhere lately in these forums a screenshot showing the unnecessary and unoptimized mesh complexity over London).

Having said this, I’ve also seen WU3 oversubscribing VRAM when flying over London and this leads me to think the PG mesh is either too complex for the amount of VRAM, but given performance issues are reported from many other places since WU3, I rather think there is a bug in the vertex buffer handling and the rendering engine might just be allocating new buffers while previous ones are not free yet, and/or there is a bug in the CPU/GPU fencing when updating the data in the existing buffers.

NB: It might have been there already in my previous flights but I didn’t pay much attention either. I might be entirely wrong as well in my analysis, otherwise this might give some pointers to a solution for the devs.

5 Likes