Anti-aliasing: Difference between revisions

Jump to navigation Jump to search
m
Line 45: Line 45:
== Tips on using anti-aliasing settings ==
== Tips on using anti-aliasing settings ==


* Anti-aliasing is more obvious on still screenshots.
* Anti-aliasing is more obvious on still screenshots. Try increasing anti-aliasing if you have a screenshot in mind.
* The driver control panels for NVIDIA and AMD support enhancing settings beyond what applications allow. You can use this to override Flightgear, or if you want a GUI interface.
* The driver control panels for NVIDIA and AMD support enhancing settings beyond what applications allow. You can use this to override Flightgear, or if you want a GUI interface.
* In motion at high FPS there is an averaging effect that has the same function as anti-aliasing.  
* When in motion at high FPS there is an averaging effect that has the same function as anti-aliasing.  
* Newer NVIDIA and AMD drivers have the option of "temporal anti-aliasing" that turns down anti-aliasing to free up performance at at high FPS. It's called "Multi-frame sampled AA" in NVIDA control panel. See if your GPU support this. (March 2020)
* Newer NVIDIA and AMD drivers have the option of "temporal anti-aliasing" that turns down anti-aliasing to free up performance at at high FPS. It's called "Multi-frame sampled AA" in NVIDA control panel. See if your GPU support this. (March 2020)
* At least the NVIDIA control panel on windows supports driver settings overrides for each application by .exe file. If you create a copy of the /bin folder to get a copy of fgfs.exe, and you can set a different set of graphics overrides. This can be useful for example, when you want to take a screenshot of something at high anti-aliasing. You may also need to create a shortcut or equivalent that tells Flightgear where the FG data directory is.
* At least the NVIDIA control panel on windows supports driver settings overrides for each application by .exe file. If you create a copy of the /bin folder to get a copy of fgfs.exe, and you can set a different set of graphics overrides. This can be useful for example, when you want to take a screenshot of something at high anti-aliasing. You may also need to create a shortcut or equivalent that tells Flightgear where the FG data directory is.
* For monitors with smaller pixel sizes, the decrease in pixel size can function in the same way as increased anti-aliasing. It's similar to the very slow super-sampling variety of anti-aliasing. You may be able to lower anti-aliasing settings. A lower resolution in a window mode, or fullscreen mode with a black border, or a stretched fullscreen mode, may help performance too. NVIDIA 11xx and corresponding AMD GPUs, and later series GPUs have integer scaling, so running stretched fullscreen at half resolution will no longer be needlessly and slightly blurry. More info: In recent years (March 2020) there has been a trend of making pixel sizes smaller on LCD displays. For example a 2k (QHD) or 4k (UHD) monitor that is the same size or a little bit bigger than a 1080p (FHD) monitor while containing up-to 4x more pixels.
* If you have a monitor with very small pixel sizes, you can try reducing anti-aliasing if you need a performance boost. For these monitors, the decrease in pixel size can function in the same way as increased anti-aliasing. It's similar to the very slow super-sampling variety of anti-aliasing. You may be able to lower anti-aliasing settings, but it will look worse in screenshots or videos when displayed on a monitor with larger pixel sizes. Running Flightgear in a lower resolution mode can also help performance if needed. Options for lower resolution modes include: windowed mode, fullscreen mode with a black border, or a stretched fullscreen mode. Stretched modes can be slightly blurry where there are sharp edges like UI or text as interpolation is used. It is possible to run with resolution set to one half or one third to eliminate or reduce blur. For example running a 4k (3840 x 2160) monitor at half resolution with 1080p (1920 x 1080). This is less blurry, but it is not perfect in practice. This is because both displays and most GPUs will unnecessarily interpolate. Intel NVIDIA 11xx, corresponding AMD GPUs, Gen11 intel integrated GPUs (2019), and later series GPUs, have 'integer scaling'. Therefore running stretched fullscreen at half resolution will no longer be needlessly and slightly blurry. Context and info: In recent years (March 2020) there has been a trend of making pixel sizes smaller on LCD displays. For example a 2k (QHD) or 4k (UHD) monitor that is the same size or a little bit bigger than a 1080p (FHD) monitor while containing up-to 4x more pixels.


=== The trade off between graphics content, FPS, and graphics settings like anti-aliasing ===
=== The trade off between graphics content, FPS, and graphics settings like anti-aliasing ===


There's a limited amount of time between each frame for the GPU to do computations. At 30 frames per second (FPS) the time is 1 second/30 FPS = 33ms. At 60 FPS it is 16.7 ms. Flightgear uses this GPU computational time to add realistic light simulation and create content to the scene. How much GPU time is needed for a frame depends on what's being drawn in the current view. For example changing tree density cannot affect FPS over a desert or sea. Whether the lack of GPU time affects FPS depends on where the bottleneck is. If Flightgear is waiting on CPU heavy tasks to finish on a system with an old CPU and a newer GPU, turning up GPU settings further will not reduce FPS. The the bottleneck will most often the GPU on most systems at high graphic settings on most systems when flying over regions which have complex scenes.
There's a limited amount of time between each frame for the GPU to do computations. At 30 frames per second (FPS) the time is 1 second/30 FPS = 33ms. At 60 FPS it is 16.7 ms. Flightgear uses this GPU computational time to add realistic light simulation and create graphics content for the scene. How much GPU time is needed for a frame depends on what's being drawn in the current view. For example changing tree density cannot affect FPS over a desert or sea, even if vegetation density normally bottlenecks a system. Whether or not the lack of GPU time reduces FPS depends on where the bottleneck is. If Flightgear is waiting on CPU heavy tasks to finish on a system with an old CPU and a newer GPU, turning up GPU heavy settings further will not reduce FPS. The the bottleneck will most often the GPU on most systems at high graphic settings on most systems when flying over regions which have complex scenes.


Approximately what FPS is acceptable for each task? Ultimately it's a personal thing, to be found out by experimenting. Lower FPS means more time between frames, letting the GPU do more computations. It's been mentioned in the forum that around [https://forum.flightgear.org/viewtopic.php?f=42&t=28681&p=275439#p275439 20-30 FPS] is enough for flying. Less FPS than this might be ok when operating a glass cockpit aircraft where the autopilot handles a lot of flying, and interaction involves pushing buttons. There is a [https://forum.flightgear.org/viewtopic.php?f=37&t=29122&start=15 forum thread] for submitting settings for [[Graphics_card_profiles|different GPUs]] so newcomers will have reasonable starting settings for their GPU. A consistent time between frames (frame spacing) helps deliver a smooth experience even at lower FPS. Sometimes the focus is on FPS when frame spacing is more important.  
Approximately what FPS is acceptable for each task? Ultimately it's a personal thing, to be found out by experimenting. Lower FPS means more time between frames, letting the GPU do more computations. It's been mentioned in the forum that around [https://forum.flightgear.org/viewtopic.php?f=42&t=28681&p=275439#p275439 20-30 FPS] is enough for flying. Less FPS than this might be ok when operating a glass cockpit aircraft where the autopilot handles a lot of flying, and interaction mostly involves pushing buttons. There is a [https://forum.flightgear.org/viewtopic.php?f=37&t=29122&start=15 forum thread] for submitting settings for [[Graphics_card_profiles|different GPUs]] so newcomers will have reasonable starting settings for their GPU. A consistent time between frames (frame spacing) helps deliver a smooth experience even at lower FPS. Sometimes the focus is on FPS when frame spacing is more important.  


Using the limited GPU time for anti-aliasing to smooth out jagged lines or get sharp grass at the cost of FPS is a personal tradeoff. My personal view is that turning down graphics content and light simulation just to increase anti-aliasing is not worth it (beyond the basic 4x anti-aliasing needed to display things like trees correctly).  
Using the limited GPU time for anti-aliasing to smooth out jagged lines or get sharp grass at the cost of FPS is a personal tradeoff. My personal view is that turning down graphics content and light simulation just to increase anti-aliasing is not worth it (beyond the basic 4x anti-aliasing needed to display things like trees correctly).  
1,746

edits

Navigation menu