FPS - it seems to be the windows & glass, or the light reflections being rendered on them

After Update 8, I'm happy this is fixed (at least in my test station.) Yay!



After Update 6, this behavior is still present in SOME cases.

E.g. the glass front at the pioneer store still tanks the frame rate, but the red glass in the railings facing the hangar lifts no longer slows the fps down.


Please, if you can test this issue and get the same results, add your vote to the bug report here:
https://issues.frontierstore.net/issue-detail/37048



Note that it does NOT occur at every settlement/space station. I have tested Carrington Hub in Croatigae (frame rate halved) and Olahus Vision in Croatigae (outpost, frame rate solid everywhere)



The original post:

The hardware is irrelevant for a test like this, but I'll post it down the bottom anyway.



Looking into the Inter Astra shop. Solid 60 fps.


20210602093046_1.jpg



Move 3 feet to my left, and here I am looking through the window at the same scene. 32 fps.


20210602093040_1.jpg



Now let's try Pioneer supplies, so I'm not even facing the mail slot (eliminating that as the cause of an FPS drop)

Solid 60 FPS looking through the doorway.

20210602093522_1.jpg



Now edge left a bit and look through the window. Down to 36 FPS immediately, and I can move left and right and see it change like a light switch going on and off.


20210602093542_1.jpg



One more comparison, this time with the Vista Genomics store:

20210602093822_1.jpg


Now move right so we're looking through the window. 30 FPS again.


20210602093811_1.jpg



But if I back up this far, it's 60 again. Stepping forward a couple of steps from this point tanks my frame rate to half:


20210602095156_1.jpg



Either it's applying some overly complex filter, or it's trying to show reflections (which maybe reflect the window behind me, and back again, infinitely, like pointing a live camera at a TV set so you get that wierd tunnel effect)

However, it does NOT do this when looking out the bar windows towards the mail slot.
Here, I get a solid 60FPS even with my nose pressed to the window


Wild guess time: Could it be related to the textures on the store windows? Are they rendered just above the surface of the glass, and therefore causing a lot of unwanted reflections between the back of the texture and the glass itself? Or are these windows rendered as hollow shapes instead of solids, so light rays are bouncing around inside them instead of being treated like solid objects?


Hardware:
i7-6700k
GTX 1660ti
32 gb ram
SSD

Ultra settings but with Shadows on Low and Effects on Medium.

Windows 10, latest Nvidia drivers, nothing else running at the same time.
 
Last edited:
One last comparison. If I look into the bar I get 60fps. But if I look through the window, 2nd shot, it's down to 40.

20210602094803_1.jpg



20210602094809_1.jpg



As I move around the station, as long as I don't get too close to these store windows my fps remains at 60.

Another thought - could it be the suit reflecting in these windows?
 
And here's the strangest thing of all - when there are no store windows in my field of view, GPU rises to 90% plus (CPU 55%) and I get the 60fps

1622598953681.png


But the moment I approach the store windows, my GPU usage drops to 65% and my CPU to 30%
In other words, when I'm getting 30 FPS, the CPU and GPU are almost idling, like they have nothing to do.

1622598919924.png
 
Last edited:
There's a bunch of similar issues, rather difficult to pin it down to any one thing.

This might be related to occlusion:
Screenshot_0052.jpg

Good fps at first, then a slight change in camera angle causes a small bit of terrain to render and performance gets cut in half.

Screenshot_0053.jpg

Similarly, moving a few centimeters forward can triger the same behaviour:

Screenshot_0048.jpg

First it's fine. Move back an inch or 2 and it tanks.

Screenshot_0049.jpg

Why? The scenes are practically identical. Certainly not different enough to cut performance in half.
 
I hadn't noticed this before, but you're right. When I walk up to the windows in stations, my FPS drops by nearly 20 frames. No drop looking out the bar windows into the station, however.

Haven't tested this at settlements yet.
 
In other words, when I'm getting 30 FPS, the CPU and GPU are almost idling, like they have nothing to do.
Generally means they are waiting on something. Probably the glass shader is being passed a render target into an SRV that isn't ready yet, or they are doing excessive copying to get it there.
 
I hadn't noticed this before, but you're right. When I walk up to the windows in stations, my FPS drops by nearly 20 frames. No drop looking out the bar windows into the station, however.

Haven't tested this at settlements yet.

It also happens with other shiny/transparent surfaces - for example, if you go into the Vista store and look at the display shelves to the right, getting close tanks the frame rates.
 
Generally means they are waiting on something. Probably the glass shader is being passed a render target into an SRV that isn't ready yet, or they are doing excessive copying to get it there.

It's odd how it only happens as you get closer though. I'm betting it's reflections of the player's avatar, which wouldn't be rendered from further away.
 
The hardware is irrelevant for a test like this, but I'll post it down the bottom anyway.



Looking into the Inter Astra shop. Solid 60 fps.


View attachment 235063


Move 3 feet to my left, and here I am looking through the window at the same scene. 32 fps.


View attachment 235064


Now let's try Pioneer supplies, so I'm not even facing the mail slot (eliminating that as the cause of an FPS drop)

Solid 60 FPS looking through the doorway.

View attachment 235068


Now edge left a bit and look through the window. Down to 36 FPS immediately, and I can move left and right and see it change like a light switch going on and off.


View attachment 235070


One more comparison, this time with the Vista Genomics store:

View attachment 235073

Now move right so we're looking through the window. 30 FPS again.


View attachment 235074


But if I back up this far, it's 60 again. Stepping forward a couple of steps from this point tanks my frame rate to half:


View attachment 235081


Either it's applying some overly complex filter, or it's trying to show reflections (which maybe reflect the window behind me, and back again, infinitely, like pointing a live camera at a TV set so you get that wierd tunnel effect)

However, it does NOT do this when looking out the bar windows towards the mail slot.
Here, I get a solid 60FPS even with my nose pressed to the window


Wild guess time: Could it be related to the textures on the store windows? Are they rendered just above the surface of the glass, and therefore causing a lot of unwanted reflections between the back of the texture and the glass itself? Or are these windows rendered as hollow shapes instead of solids, so light rays are bouncing around inside them instead of being treated like solid objects?


Hardware:
i7-6700k
GTX 1660ti
32 gb ram
SSD

Ultra settings but with Shadows on Low and Effects on Medium.

Windows 10, latest Nvidia drivers, nothing else running at the same time.
I noticed this effect myself. I posted my suspicions on

"Testing frame rates on 4 different machines. Will update."​


Does it happen on any reflective surface, say where a neon shop sign is reflected on the shiny floor? It seems the game uses full reflections rather than fake ones, I haven't checked if they're screen-space or real ones.
 
Last edited:
Welcome to overdraw. This is an example of geometry that's covering the screen but not occluding what's behind, and to render well, you want to first draw opaque stuff, then back to front translucent stuff, and all that preferably while having the render buffers in on-die memory, like the tiled rendering of PowerVR. Transparency is surprisingly hard... except if you ray trace it, because then everything is equally hard and transparency is just another layer. So, yeah, this is one of the expensive parts as far as GPUs are concerned, and Elite loves doing it at all times and multiple times (dirt drawn transparent in extra geometry instead of being a texture layer on existing geometry, windshields everywhere, damage decals, etc).

It's another piece of the puzzle.
 
@Sighman This is outstanding work, very well done....
This is good science!!
Goshdarn it, that was what I was about to say! But, aye, it is good science, a hypothesis that windows tank framerates, experiments testing the hypothesis, reviewing the reults, repeating the experiments etc, it is as you say a very thorough, professional, and scientific approach.
I love how players do these in-depth investigations. Keep up the good work.

Maybe this should be posted as an official issue as well to make sure the devs take notice?
Can you imagine how much more we'd have gotten done were the alpha not held under the premise that the live build was all rosy, and if we also had a beta test as well?
Yeah there should be a seperate thread moderated heavily to ban discussion that takes submissions of suggested fixes or pertinent findings so that the devs can sift through the science being done by the player base.
It is a pity that Frontier went full ostrich and buried its head in the sand regarding Odyssey performance and other issues, because they jumped from alpha to release, they closed the alpha sub forum, which would have been the perfect place to host such conversations...
 
Your right! As SOON as a window comes into the shot I can literally watch my FPS drop down to below 30. Go the other side of the window and my FPS climbs to 60.
 
The hardware is irrelevant for a test like this, but I'll post it down the bottom anyway.



Looking into the Inter Astra shop. Solid 60 fps.


View attachment 235063


Move 3 feet to my left, and here I am looking through the window at the same scene. 32 fps.


View attachment 235064


Now let's try Pioneer supplies, so I'm not even facing the mail slot (eliminating that as the cause of an FPS drop)

Solid 60 FPS looking through the doorway.

View attachment 235068


Now edge left a bit and look through the window. Down to 36 FPS immediately, and I can move left and right and see it change like a light switch going on and off.


View attachment 235070


One more comparison, this time with the Vista Genomics store:

View attachment 235073

Now move right so we're looking through the window. 30 FPS again.


View attachment 235074


But if I back up this far, it's 60 again. Stepping forward a couple of steps from this point tanks my frame rate to half:


View attachment 235081


Either it's applying some overly complex filter, or it's trying to show reflections (which maybe reflect the window behind me, and back again, infinitely, like pointing a live camera at a TV set so you get that wierd tunnel effect)

However, it does NOT do this when looking out the bar windows towards the mail slot.
Here, I get a solid 60FPS even with my nose pressed to the window


Wild guess time: Could it be related to the textures on the store windows? Are they rendered just above the surface of the glass, and therefore causing a lot of unwanted reflections between the back of the texture and the glass itself? Or are these windows rendered as hollow shapes instead of solids, so light rays are bouncing around inside them instead of being treated like solid objects?


Hardware:
i7-6700k
GTX 1660ti
32 gb ram
SSD

Ultra settings but with Shadows on Low and Effects on Medium.

Windows 10, latest Nvidia drivers, nothing else running at the same time.
You must have looked like a real creep from the viewpoint of those vendors. 😅

Good work, though!
 
The hardware is irrelevant for a test like this, but I'll post it down the bottom anyway.
It is not irrelevant. Different GPUs and drivers have vastly different approaches to this rendering, making the overdraw costs hugely expensive on some and negligible on others. Blending is cheap, but reading out of a buffer being rendered into can be very expensive - or not. E.g. on PowerVR, it's a cheap operation as long as you've remembered to clear the buffer when you started to draw the new frame. On some other GPUs, that clear itself is super slow and wasteful. Sorting back to front may be expensive too, which was the main reason the Z buffer was added - but it doesn't solve the issue when there's transparency involved. Also, with my RX 6900 XT, I don't seem to find a notable difference with these windows, but I'm mostly limited by main RAM (not VRAM) latency, not GPU.
 
Last edited:
It actually isn't irrelevant at all! Different GPUs and drivers have vastly different approaches to this rendering, making the overdraw costs hugely expensive on some and negligible on others. Blending is cheap, but reading out of a buffer being rendered into can be very expensive - or not. E.g. on PowerVR, it's a cheap operation as long as you've remembered to clear the buffer when you started to draw the new frame. On some other GPUs, that clear itself is super slow and wasteful. Sorting back to front may be expensive too, which was the main reason the Z buffer was added - but it doesn't solve the issue when there's transparency involved.

Understood. I guess I meant it's a repeatable issue on my system.

Now I have to try it on a couple of other systems, as per my other thread 'testing frame rates on 4 different PCs' or whatever I called it.
 
To many things going on, to actually point to one root cause, just standing in the elevator gives you a huge fluctuations in FPS, or standing in a room with no mirrors or window or shiny surfaces and rotate 360 will give you a big variation in FPS.
 
Back
Top Bottom