Premium Quality X-Plane 12 Graphics. Clear Visuals and Smooth Performance.

Premium Quality X-Plane 12 Graphics. Clear Visuals and Smooth Performance.

Premium Quality X-Plane 12 Graphics. Clear Visuals and Smooth Performance.

Premium Quality X-Plane 12 Graphics

X-Plane 12 is one of the most immersive flight simulators available, but achieving premium quality X-Plane 12 Graphics is a challenging task. It is possible with the tools below to achieve optimal graphics clarity and performance even on a budget. Issues like blurriness along the horizon and flickering objects such as airport fences are common. This guide will show you a alternative path using a simple LUA SCRIPT to endlessly tune your graphics in REAL TIME to get the best performance automatically.

Understanding how to optimize your X-Plane 12 graphics settings is still important. You cannot just max everything and the LuaScript do the rest. Its not quite that simple! Tuning a system like my own which is an AMD Ryzen 5600X CPU, RTX 3070 GPU, and 64GB DDR4 RAM can be super frustrating and I have spent hours doing it!

Understanding what settings effect’s the CPU or gpu is quite helpful in getting the balance correct. Placing to much work on the CPU will likely lead to a CPU bottleneck. If your GPU is not operating at near 100% then your CPU bottlenecked still regardless. Its likely the best indication of your settings are correct for your system or not.

What’s also important to understand is by adjusting the sliders effecting’s CPU & GPU usage in X Plane 12 it is possible to relieve the bottleneck to a point and find the balance to get what we all desire! Clear smooth experience in out flight simulator of choice. Let’s unlock the best visual experience and FPS balance for your simulator.


Key X-Plane 12 Graphics Settings for Clarity and Smoothness

Premium Quality X-Plane 12 Graphics

Let’s take a quick look at what each setting does and why it can effect your overall performance on X Plane 12. When reading especially if your new take note of the graphic explaining what each setting effects generally. No, its not fixed n stone but a useful guide. For the most part the sliders on the left of the graphics menu are GPU focussed and therefore will effect its performance. Antialiasing is demanding so this is a common place to reduce to get the balance correct.

Your GPU’s VRAM is an issue with textures being loaded so if your VRAM is full the system then requires much slower system ram to do the work! THis causes stuttering and crashes in some occasions. Lowering the texture slider often will relieve this as well X Plane 12 will tell you with a popup if your overstepping your VRAM allocation.

Looking at the sliders on the right side of the graphics menu effect the CPU more, so take note and tune carefully. You can use monitoring software like GPU-Z to monitor the whole process ensuring your getting the best results.

Settings VR or Monitor Makes a Difference.

Premium Quality X-Plane 12 Graphics depends on your personal use case. Lets be smart and address here before going further. I fly exclusively in VR. I just cannot face a 2D monitor anymore when flying! The issue is with my system on the monitor I can MAX EVERYTHING and get great frames and performance, so the issue Im having is VR based performance.

Vr vs Monitor Performance Explanation for Newbies.

Premium Quality X-Plane 12 Graphics

The performance disparity between running X-Plane 12 on a 1080p monitor and in virtual reality (VR) with an Oculus Rift S is due to the significantly higher demands VR places on your system. A 1080p monitor has a resolution of 1920×1080 pixels, which totals about 2.07 million pixels. In contrast, the Oculus Rift S has a resolution of 2560×1440 pixels (1280×1440 per eye), which means it renders about 3.69 million pixels, nearly doubling the pixel count.

For higher-end VR headsets like the HP Reverb G2 (2160×2160 per eye, or 9.33 million pixels total), the pixel count is substantially higher, making the computational demand several times that of a 1080p display. Additionally, VR requires rendering each frame twice (one for each eye) to achieve stereoscopic 3D and smooth head tracking.

This significantly increases the GPU workload and places extra strain on the CPU to handle physics, rendering, and frame synchronization. Despite having a capable Ryzen 5600X and RTX 3070, the resolution increase, dual-eye rendering, and high frame rate requirements for comfortable VR (e.g., 80 Hz for Rift S and 90 Hz for Reverb G2) explain why the experience is greatly different between 1080P and using VR when flying in X Plane 12.

1. Antialiasing

What does anti aliasing do and why is it important.

Premium Quality X-Plane 12 Graphics
  • What it Does: Smooths jagged edges and reduces flickering on thin objects like fences and power lines.
  • Recommended Setting: Start with 4x SSAA+FXAA and increase to 8x SSAA if performance allows.
  • Performance Impact: Higher levels demand more GPU power, so adjust based on FPS.

2. Anisotropic Filtering

This can mostly be maxed out on my RTX 3070 in VR. Antialiasing is normally limited to 4X with the TRX 3070.

  • What it Does: Enhances texture clarity at oblique angles (e.g., ground textures at a distance).
  • Recommended Setting: Set to 8x or 16x in both X-Plane and your GPU control panel.

3. Texture Quality

  • Recommended Setting: Set to Maximum. The RTX 3070’s 8GB VRAM should handle this without issues. This sounds true! The truth is I have recently being warned by the X Plane 12 system popup that I was out of VRAM on several occasions when tuning my graphics settings. I am still questioning this because my monitoring software still showed I had 1 Gig of the 8 gig Vram spare. Its possible other items were using the rest that didn’t show as textures.
Premium Quality X-Plane 12 Graphics

4. World Objects and Draw Distance

Very self explanatory, this is the amount of building and trees you will see at one time. It controls how far away you will see items on the ground. Mostly at high or maximum depending on other settings. Its really a frustrating balancing act without a top teatr system.

  • Recommended Setting: Set World Objects to “High” or “Maximum” for detailed scenery. Increase draw distance to reduce blurriness along the horizon but lower it in dense areas to maintain FPS.

5. Enable Vulkan/Metal

  • Ensure Vulkan (Windows/Linux) or Metal (Mac) is enabled for improved rendering efficiency and reduced artifacts. Go to Settings > Graphics and check the Vulkan/Metal option.

6. Atmospheric Settings

  • Adjust weather visibility to reduce haze. Consider plugins like X-Visibility for finer control.

Tailored Optimization for AMD Ryzen 5600X and RTX 3070

THese settings are a response to my frustration so I asked Chat GPT 4.0 for recommendations for my system. What I noticed was a mention of an Auto TUning LUA Script. I previously have not used LUA scripts for anything but I thought why not try this LUA script along with the graphics recommendations.

I followed the recommendations below to the letter then used the LUA SCRIPT below. I have been using this for a little while now and it works pretty well. Its not quite the silver bullet but im happy with how its keeping my frustration to a minimum.

Premium Quality X-Plane 12 Graphics

NVIDIA Control Panel Settings

  1. Power Management Mode: Set to Prefer Maximum Performance.
  2. Texture Filtering – Quality: Choose High Performance.
  3. Antialiasing – Mode: Use Enhance the application setting for better results.
  4. Anisotropic Filtering: Set to 16x.
  5. Vertical Sync: Enable Adaptive V-Sync to prevent screen tearing.

CPU and RAM Configuration

  1. Enable Precision Boost Overdrive (PBO) in the BIOS for enhanced CPU performance.
  2. Ensure RAM is running at its full 3200MHz speed by activating XMP/DOCP profiles in BIOS.
  3. In Windows, set the power plan to High Performance or AMD Ryzen High Performance.

Virtual Reality (VR) Settings for X-Plane 12

1. VR Graphics Settings

  • Texture Quality: Keep this at High or Maximum for sharp visuals in VR.
  • World Objects: Set to Medium to balance performance, as VR is more demanding.
  • Antialiasing: Use 2x SSAA+FXAA or lower to maintain smooth frame rates in VR.

2. Refresh Rate and FPS

  • Set the VR headset’s refresh rate to match your system’s capability (e.g., 90Hz for most headsets).
  • Aim for a stable 45 FPS (as many VR systems use reprojection to double perceived frame rates).

3. VR-Specific Plugins and Tools

  • Use FlyWithLua scripts to dynamically adjust settings in VR.
  • Plugins like Oculus Tray Tool (for Oculus users) or SteamVR settings allow for additional customization such as supersampling.

4. Supersampling (SS)

Premium Quality X-Plane 12 Graphics
Example ONLY – NOT MY SETTINGS.
  • Increase supersampling in SteamVR or your headset software to improve clarity but balance it with performance. Start with 1.2x and increase incrementally.
  • Oculus Tray Tool is what I use with my RIFT S. It offers ASW (Asynchronous Space Warp) improving performance and smoothness as well as an option to increase the supersampling achieving more clarity but it can cost FPS or increase frame generation time.

5. Optimize Controllers and Interaction

  • Ensure VR controller bindings are customized for ease of interaction in the cockpit.
  • Use a physical yoke or joystick alongside VR for better realism and reduced strain on VR tracking systems.

Plugins and Tools for Enhanced Visuals

  1. X-Visibility: Reduces atmospheric haze for a clearer horizon.
  2. Enhanced Skyscapes or xEnviro: Improves sky and cloud visuals.
  3. Ortho4XP: Adds real-world satellite imagery for ground textures.
Premium Quality X-Plane 12 Graphics

FlyWithLua Scripts (e.g., 3jFPS): Dynamically adjusts settings for optimal FPS.

to achieve premium quality X-Plane 12 Graphics here’s an example of a Lua script for FlyWithLua that dynamically adjusts graphics settings based on FPS in X-Plane 12. This script is designed to prioritize FPS stability by tweaking settings like world objects and shadow detail in real time. Save this script as a .lua file and place it in the FlyWithLua/Scripts folder within your X-Plane installation.Lua Script 1: Dynamic Graphics Adjustment for Monitors (1080p, 1440p, 4K)

VR LUA SCRIPT for Smooth Performance.

Virtual Reality requires precise optimization to ensure smooth performance and avoid discomfort caused by low FPS. This script is tailored for VR, focusing on FPS stability by adjusting world objects and antialiasing settings.

-- Dynamic Graphics Adjustment Script for X-Plane 12
-- Place in FlyWithLua/Scripts folder

-- Settings and thresholds
local target_fps = 45
local fps_buffer = 5  -- FPS buffer before adjustments are triggered
local min_world_objects = 1
local max_world_objects = 4

-- Function to monitor FPS and adjust settings
function dynamic_graphics_adjustment()
    local fps = SASL.getFPS()  -- Get current FPS
    local world_objects = get("sim/private/controls/reno/draw_fft_plan")
    
    -- If FPS drops below target and buffer, reduce world objects
    if fps < (target_fps - fps_buffer) and world_objects > min_world_objects then
        set("sim/private/controls/reno/draw_fft_plan", world_objects - 1)
        logMsg(string.format("[FlyWithLua] FPS low: Reduced world objects to %d", world_objects - 1))
    -- If FPS is above target and buffer, increase world objects
    elseif fps > (target_fps + fps_buffer) and world_objects < max_world_objects then
        set("sim/private/controls/reno/draw_fft_plan", world_objects + 1)
        logMsg(string.format("[FlyWithLua] FPS stable: Increased world objects to %d", world_objects + 1))
    end
end

-- Register the function to run every frame
do_every_frame("dynamic_graphics_adjustment()")

Script Explanation:

  1. Target FPS: The script aims to maintain a stable FPS of around 45. You can adjust this value to suit your preferences.
  2. Thresholds: The fps_buffer defines a tolerance range around the target FPS before adjustments are triggered.
  3. World Objects: The script dynamically modifies the world objects setting (draw_fft_plan) within a specified range (from min_world_objects to max_world_objects).
  4. Logging: The logMsg function outputs changes to the X-Plane log for transparency.

Instructions:

  1. Save this script with a filename like DynamicGraphicsAdjustment.lua.
  2. Place the file in the FlyWithLua/Scripts directory.
  3. Start X-Plane 12, and the script will automatically adjust settings based on FPS.
Premium Quality X-Plane 12 Graphics

Feel free to adjust the thresholds or expand the script to control other settings like shadows, texture quality, or antialiasing. Let me know if you need help tailoring this further!

Monitor LUA Script for Supreme Performance.

This script dynamically achieves premium quality X-Plane 12 graphics by adjusting world objects and other graphics settings based on your FPS, ensuring smooth performance while flying in different scenarios. It’s ideal for maintaining optimal visuals across resolutions like 1080p, 1440p, and 4K.

—————————————————————————————–

— Dynamic Graphics Adjustment Script for X-Plane 12
— Place in FlyWithLua/Scripts folder

— Settings and thresholds
local target_fps = 60
local fps_buffer = 5 — FPS buffer before adjustments are triggered
local min_world_objects = 1
local max_world_objects = 4

— Function to monitor FPS and adjust settings
function dynamic_graphics_adjustment()
local fps = SASL.getFPS() — Get current FPS
local world_objects = get(“sim/private/controls/reno/draw_fft_plan”)

-- If FPS drops below target and buffer, reduce world objects
if fps < (target_fps - fps_buffer) and world_objects > min_world_objects then
    set("sim/private/controls/reno/draw_fft_plan", world_objects - 1)
    logMsg(string.format("[FlyWithLua] FPS low: Reduced world objects to %d", world_objects - 1))
-- If FPS is above target and buffer, increase world objects
elseif fps > (target_fps + fps_buffer) and world_objects < max_world_objects then
    set("sim/private/controls/reno/draw_fft_plan", world_objects + 1)
    logMsg(string.format("[FlyWithLua] FPS stable: Increased world objects to %d", world_objects + 1))
end

end

— Register the function to run every frame
do_every_frame(“dynamic_graphics_adjustment()”)

————————————————————————

Premium Quality X-Plane 12 Graphics

Conclusion.

I hope you’ve found this blog and the LUA SCRIPTS useful and have a new take on performance for your system. Again, I have used them both with good results and much less frustration in the FPS and frame time challenge. If you vastly out graphically perform your system the LUA SCRIPTS will still struggle. If you have it pretty ok but its not smooth as you transition from more populated areas to sparcer areas then they both will help in their situation. All the best!

Brendon McAliece - Gunnie and a Jabiru 170
Brendon McAliece Jabiru 170

Please let me know in the comments if you try the scripts and how you find them. Thanks!

Author

Brendon McAliece (Aka Gunnie) is a military veteran with 23 years working on Jet Fighters, their weapons systems and ejection seat/module systems as well as munitions and R&D. Involved with flight simulation since the 1980s, he has flown all the major flight simulators over the years.

He is an Australian expat who has lived in Malaysia, UK, Saudi Arabia and more recently Thailand. He is a multi-lingual blogger who loves to share his life experiences here on LetsFlyVFR.com and DreamingGuitar.com, with his lifestyle and Travel experiences Blog plus his Dreaming Coffee website.

Learn More @ DreamingGuitar.com – DreamingCoffee.com – LetsFlyVFR.com

HOME – BLOG – SHOP – ABOUT )

As an Amazon affiliate I may benefit from qualifying sales.

Leave a Reply

Your email address will not be published. Required fields are marked *