fsx.cfg tweaking guide – how to improve FSX performance and solve common issues. Explanations of FSX tweaks and configuration suggestions.
Necessary / obligatory tweaks & modifications
UIAutomationCore.dll – dll library file that improves 32-application performance in 64-bit systems. You need to download it an place in your main FSX folder to prevent OOM errors (among others). Not necessary in FSX Steam Edition.
Highmemfix=1 – place under [GRAPHICS] headline in your FSX.cfg file. Fix required for correct memory addressing during texture loading (helps prevent OOM errors). Not necessary in FSX Steam Edition.
Not a tweak per se but I feel it is important to mention that you need to have a proper FSX version installed. That means:
- FSX with SP1 and SP2 (installed in this order)
- FSX with Acceleration pack (service packs included – do not install)
- FSX:SE (Steam Edition – service packs and Acceleration included – do not install)
All other fsx.cfg modifications and tweaks are not obligatory. Some may improve your performance or quality. There are some outdated tweaks – leftovers from earlier version of FSX (SP1 or base version without any Service Packs) or even earlier version of Flight Simulator.
FSX Settings vs fsx.cfg
I will indicate in this guide which values change positions of sliders in FSX settings. Be aware that changes in FSX settins may overwrite your fsx.cfg tweaks. In my opinion it’s best not to use FSX display menu at all.
It is a simple configuration file that uses single line commands containing a name of the setting and value with “=” character in between.
Section headers are wrapped in square brackets. For example: [GRAPHICS].
Double slash – // – marks comment – a part of line (or the whole line) that will be ignored by FSX.
Your fsx.cfg may include more lines that I described here. I omitted elements that should not be edited and some that are not relevant to performance and graphics.
Tweaking – the general idea and procedure
As I already wrote – make sure that you have SP2 or Acceleration or FSX:SE installed. Add UIAutomationCore.dll to your FSX folder. Then navigate to your fsx.cfg location and make a backup copy. Then you may proceed with obligatory HIGHMEMFIX.
Now you are ready to start tweaking and testing your FSX. There are no settings that are always correct! Remember this. Use settings that are appropriate to your setup (Hardware + FSX + Add-ons). Different add-ons (planes, sceneries, even weather settings) may require different tweaks and different configuration.
All your tweaks and settings have to be adjusted to your personal preferences. Some people will be ok with 20 frames per second and better graphics. Others will settle with lower quality and constant 30 fps.
My personal preference is to keep the highest quality that will allow at least a stable 18-20 frames on approach to the heaviest scenery that I use at the moment. It means that I have constant 30 frames inflight and I have no stutters in this difficult part of flight.
You need to consider VAS (virtual address space). Too much scenery or autogen objects may cause OOM (out of memory) error. The same may happen when loading a large number of high quality textures.
Currently I am using several fsx.cfg files for different situations – depending mostly on the autogen and objects of the scenery I use, plane I fly and textures that both plane and scenery use.
Test, test and once again – TEST!
It is a process of trial and error. Use this guide and set your FSX. Then test it. Then tweak it again and test. If you see improvement – use your new settings. If not – try something different.
Even if you have a “perfect” set of tweaks – do a small change from time to time. And let it work for a few days. Maybe it will be better.
Do a long test
It is hard to test tweaks in a single flight. Even if you have a test flight (same weather, airport, plane, date, time of day, traffic) – you may see different results with no change at all. You may see improvement even if the long term change is for worse. So do not trust a single test unless the difference is obvious and very strong.
FSX setting first -> FSX.cfg tweaks later (overwrite problem)
Some fsx.cfg settings may have higher values then full right position of a slider in FSX settings. From what I observed these are:
- clouds settings
That is why you should not do any changes in FSX display settings after you set this values in fsx.cfg.
How I described this tweaks
The following guide will follow my fsx.cfg file and I put section headers as text headlines (bold font, square brackets). Settings and values will be placed under their sections. My comments (and the meaning of each setting) will be place after comment mark – //. If an option is written behind a comment – it is not included in my fsx.cfg and I do not use this option. I placed it in this guide only to explain why.
Some tweaks are (or will be) explained in detail in another article. There will be a link to this article – look for arrow (») character.
Effects on performance
Settings that heavily affect FSX performance are red.
Setting that somehow affect FSX performance are orange.
Settings that slightly affect FSX performance are green.
There is no sense in placing gray settings in your fsx.cfg. These may be neutral or harmful.
Black settings do not affect performance.
When you see the values – this are my current settings for my FSX Acceleration with payware planes and sceneries, Active Sky Next weather, REX Direct sky textures, REX soft clouds, EZDOK camera for controlling views. My FSX runs on Intel firstname.lastname@example.orgGHz with GTX660Ti GPU, 8GB of RAM and Windows 10.
fsx.cfg file contents (selected parts)
BLOOM_EFFECTS=0 // light glow; nice but usually very heavy on framerates; 0 – OFF; 1 – ON
ChangeTime=1.000000 // how long will your view information be displayed in upper right corner; default – 4.0 (seconds); 0.00000 – if you want to turn it off
InfoBrakesEnable=True // show “brakes” message when wheel brakes are engaged; True – ON, False – OFF
InfoLowerLeftBackGroundColor=255,0,0,128 // set the information texts background color
InfoLowerLeftTextColor=255,255,255 // set the information texts color
InfoLowerRightBackGroundColor=255,0,0,128 // set the information texts background color
InfoLowerRightTextColor=255,255,255 // set the information texts color
InfoOverspeedEnable=True // overspeed warning text; True – ON, False – OFF
InfoParkingBrakesEnable=True // parking brake text shows when parking brake is engaged; True – ON, False – OFF
InfoPauseEnable=True // pause text shows when you pause FSX; True – ON, False – OFF
InfoSlewEnable=True // text informing you about engaging slew mode; True – ON, False – OFF
InfoStallEnable=True // show stall text when aircraft stalls; True – ON, False – OFF
InfoUpperRightBackGroundColor=0,0,0,0 // set the information texts background color
InfoUpperRightTextColor=255,0,0 // set the information texts color
NonActiveWindowTitleBackGroundColor=24,33,87,64 // set the non active window title background color
NonActiveWindowTitleTextColor=255,255,255 // set the non active window title color
SKINNED_ANIMATIONS=1 // turn advanced animations on; 0 – OFF; 1 – ON
TEXTURE_BANDWIDTH_MULT=40 // does not work if you limit your frame rate externally
TransitionTime=4.000000 // how long it takes between information texts change; default 4.0 (seconds)
UPPER_FRAMERATE_LIMIT=0 // 0 – unlimited, you can use numbers like 10, 20, 30 or 50 – FSX will limit it’s frame rate to this value (it is better to set external frame rate limit and keep unlimited frames in FSX)
WideViewAspect=True // set True if you have a wide screen, False if your screen is closer to 4:3 ratio.
// TextureMaxLoad=30 // related to TEXTURE_BANDWIDTH_MULT
AC_SELF_SHADOW=1 // aircraft parts will cast shadow on a plane; 0 – OFF; 1 – ON
AIRCRAFT_REFLECTIONS=1 // according to my tests – inactive setting
AIRCRAFT_SHADOWS=1 // aircraft casts shadow on the ground; 0 – OFF; 1 – ON
COCKPIT_HIGH_LOD=1 // high resolution of cockpit textures; 0 – OFF; 1 – ON;
D3D10=1 // DirectX 10 Preview; without DX10 Fixer software it may cause problems with textures (I use DX10 Fixer and this setting improves performance)
EFFECTS_QUALITY=2 // effects quality (smokes and alike); 0, 1 or 2 (max value)
GROUND_SHADOWS=1 // scenery objects cast shadows; 0 – OFF; 1 – ON
HIGHMEMFIX=1 // memory addressing improved with a new graphics cards; 0 – OFF; 1 – ON; obligatory on a modern PC; turned on – improves performance; off or missing – may cause OOM errors!
IMAGE_QUALITY=0 // looks like an outdated setting – tests show no difference in performance and quality
LANDING_LIGHTS=1 // looks like an outdated setting – tests show no difference in performance and quality
NUM_LIGHTS=8 // looks like an outdated setting – tests show no difference in performance and quality
See_Self=1 //show my plane in external view; I have no idea why someone would choose not to see his plane in external view… 0 – OFF; 1 – ON
SHADER_CACHE_PRIMED=1693500672 // set by system – no need to change this
SHADER_CACHE_PRIMED_10=1693500672 // set by system – no need to change this
TEXTURE_MAX_LOAD=4096 // max size of a loaded texture mipmap – explained in detail later; available values – 512, 1024, 2048, 4096; far right position value of FSX slider – 1024
TEXTURE_QUALITY=3 // looks like an outdated setting – tests show no difference in performance and quality
Text_Scroll=1 // scroll the info text; 0 – OFF; 1 – ON
DisablePreload=1 // turn off preloading of your default flight when FSX is opened – speeds up FSX opening; 0 – OFF; 1 – ON
HideMenuFullscreen=1 // hide menu in full screen mode; 0 – OFF; 1 – ON
HideMenuNormal=0 // hide menu in windowed mode; 0 – OFF; 1 – ON
Location=440,129,1480,908,\\.\DISPLAY1 // remember window position
Maximized=2 // 0 – open in windowed mode, 1 – open in full screen, 2 – open in windowed mode, maximized
PerfBucket=7 // PC rating according to FSX – 1-7 scale, affects only the default settings – just leave it as it is
ProcSpeed=16649 // processor speed rated by FSX – just like with PerfBucket – affects only the default settings – no need to change
SimObjectPaths.0=SimObjects\Airplanes // airplane folder path
SimObjectPaths.1=SimObjects\Rotorcraft //helicopter folder path
SimObjectPaths.2=SimObjects\GroundVehicles // ground vehicles folder path
SimObjectPaths.3=SimObjects\Boats // boats and ships folder path
SimObjectPaths.4=SimObjects\Animals //animals folder path
SimObjectPaths.5=SimObjects\Misc // misc folder path
User Objects=Airplane, Helicopter // objects visible in aircraft selection window – use it to point to correct folders from above: Airplanes – Airplane; Animals -Animal; Boats – Boat; Ground Vehicles- GroundVehicle; Misc -SimpleObject; Rotorcraft -Helicopter
DAWN_DUSK_SMOOTHING=1 // there are opinions that this corrects some scenery errors at dusk and dawn – I tested both settings and there was no difference – I am using the default – 1
IMAGE_COMPLEXITY=5 // scenery complexity slider from FSX display settings; range from 0 to 5
LENSFLARE=1 // lens flare effect (light shining inside a lens); 0 – OFF; 1 – ON
SmallPartRejectRadius=0 // eliminates small objects – if an objects is smaller then X pixels – it will be not shown, 0 i 1 – nothing will be omitted, 2, 4, 8 and so on – objects of this size will be omitted – may cause “popping” effect when large objects come to view
// TERRAIN_MAX_AUTOGEN_TREES_PER_CELL=100 // limits tree number in each sector – it is complicated how this tweak works because it depends on how the autogen was placed – results are random or negligible (depending on the scenery) – it is better to set correct autogen value
// TERRAIN_MAX_AUTOGEN_BUILDINGS_PER_CELL=100 // limits building number in sector – described here in detail
AUTOGEN_DENSITY=5 // autogen density slider from FSX display menu; range 0-5
DETAIL_TEXTURE=1 // detailed textures; 0 – OFF; 1 – ON
LOD_RADIUS=6.500000 // range in which the terrain will be drown in high quality; range – from 0 to infinity but id rarely makes sense to set more then 10.5; FSX radius slider full right position sets it to 4.5
MESH_COMPLEXITY=100// mesh (terrain shape) complexity – the more, the better; 0-100; equivalent of FSX menu slider
MESH_RESOLUTION=25 // resolution of mesh; equivalent of FSX menu slider
TEXTURE_RESOLUTION=29 // max resolution of scenery textures, equivalent of FSX menu slider
WATER_EFFECTS=7 // water settings – equivalent of FSX menu slider
AirlineDensity=0 // airline traffic density; equivalent of FSX menu slider
AIRPORT_SCENERY_DENSITY=0 // airport vehicles density / number; equivalent of FSX menu slider
FreewayDensity=0 // road traffic density; equivalent of FSX menu slider
GADensity=0 // general aviation traffic density; equivalent of FSX menu slider
IFROnly=0 // never tested this option
LeisureBoatsDensity=0 // boats density; equivalent of FSX menu slider
ShipsAndFerriesDensity=0 // ships and ferries density; equivalent of FSX menu slider
// the gauges and add-on modules that you set as trusted and FSX can use it
AdjustForMagVarInDialog=1 // show magnetic wind direction; 0 – OFF; 1 – ON
CLOUD_COVERAGE_DENSITY=12 // clouds density, equivalent of FSX menu slider, slider range 0-8, max value in fsx.cfg file – 12
CLOUD_DRAW_DISTANCE=12 // cloud drawing range; equivalent of FSX menu slider, slider range – 0-8, fsx.cfg range – unlimited but high settings may cause errors
DETAILED_CLOUDS=1 // high quality clouds; 0 – OFF; 1 – ON
DisableTurbulence=0 // disable turbulence; 0 – turbulence turned ON, 1 – turbulence turned OFF
DownloadWindsAloft=0 // download wind data for high altitudes; I do not use FSX weather settings and I do not know if this setting still works
DynamicWeather=0 // dynamic weather; FSX default weather settings
THERMAL_VISUALS=0 // show thermals (raising air – important for novice glider pilots); 0 – turned off, 1 & 2 – thermal visualization ON (green spirals or birds)
TurbulenceScale=1.000000 // turbulence scale
// I omitted most of default weather settings – I do not use FSX built in weather
What is important
BLOOM_EFFECTS=0 // in my opinion it harms performance too much to consider the slight improvement in quality
UPPER_FRAMERATE_LIMIT=0 // set this to 0 and limit frame-rates using graphics card tools (for example nVidia Inspector).
AC_SELF_SHADOW=0 lub 1 // if you need to improve performance – start here; I turn it off when flying over complex sceneries
AIRCRAFT_SHADOWS=0 lub 1 // if you need to improve performance – start here; I turn it off when flying over complex sceneries
GROUND_SHADOWS=0 lub 1 // if you need to improve performance – start here; I turn it off when flying over complex sceneries
HIGHMEMFIX=1 // A must have!
TEXTURE_MAX_LOAD=1024, 2048 or 4096. // In short – choose one of this values and make sure that your add-on manual does not suggest setting higher (2048 or 4096) value. The higher, the better. Performance cost may be significant if your add-ons actually use 2048 of 4096 texture mip-maps. You will see no impact at all if your add-ons use mip-maps of lower size or does not use mip maps at all.
I chose 4096 as a default setting and in rare cases I decrease it to 2048 (helpful during very long flights that can be prematurely ended by OOM error).
DisablePreload=1. Suggested setting – 1.
IMAGE_COMPLEXITY=5. Scenery density slider coded in fsx.cfg. Suggested settings – 4 or 5.
LENSFLARE=1. I like to see the lens flare. Performance impact is negligible – it’s more aesthetic choice than performance tweak. I turn it off for bad weather flights – sun flare can be seen even under overcast clouds.
SmallPartRejectRadius=0. I am not sure if the minimal value is 0 or 1 but my test show no difference between these settings. By definition – both 0 and 1 should have the same effect. If you look for performance improvement – you can try setting it to 2, but the quality loss (objects appearing suddenly in close distance) is in my opinion unacceptable. SmallPartRejectRadius=4 looks awful – 4px objects appearing in sight make a very strange effect.
TERRAIN_MAX_AUTOGEN_TREES_PER_CELL=6000. 6000 for higher forest density. Low values may be considered but read tweak description before trying to change this.
TERRAIN_MAX_AUTOGEN_BUILDINGS_PER_CELL=6000. It is difficult to explain the value (or the lack of sense) of this tweak in one sentence. Please read the full description.
AUTOGEN_DENSITY=5. Autogen density slider coded in fsx.cfg. Suggested settings – 4 for high end PCs.
LOD_RADIUS=5.500000. The default value for far right slider is 4.5. I use 5.5 by default and increase it for some sceneries to 8.5 or even higher. if I experience high VAS usage – I decrease it’s value to 4.5 or even 3.5 in some very rare cases.
MESH_COMPLEXITY=100. Mesh complexity – I see no sense in decreasing this value. In the range between 80 and 100 performance impact is negligible. If lowering this value causes visible changes in terrain shape – performance may be slightly better.
MESH_RESOLUTION=25. 25 equals to 1m of mesh resolution. I have only a few sceneries that use 1m mesh. Advanced sceneries usually use 5m or 10m mesh. Setting FSX to use 1m mesh does not change terrain shape and does not impact performance if the scenery uses lower resolution mesh (lower resolution = higher value in meters).
TEXTURE_RESOLUTION=29. Ground textures resolution. May impact the resolution of photoscenery and ground textures (roads, runway textures, runway and taxiway markings etc.). I chose the highest setting. If this setting is higher than texture resolution – there will be no change in what is displayed and no change in performance.
WATER_EFFECTS=7. How good the water will look. Water slider coded in fsx.cfg.
1-3: slider in the range of 1.x. 4-7: slider in the range of 2.x.
4 – sun, sky and plane reflections. 5 – additional cloud reflections. 6 – additional terrain reflections. 7 – scenery objects reflections. I mostly use values of 5, 6 and 7 – depending on what I fly and where. In a floatplane high settings may improve the experience (at the cost of performance). Using 5 or 6 in airliner makes no sense. 6 (terrain reflections) makes no sense over flat terrain (terrain reflections will not be visible but there will be a performance loss compared to 5).
AirlineDensity, GADensity. Traffic sliders coded in fsx.cfg. High performance cost (both on framerates and on VAS). If you have an additional AI traffic software – performance loss may be huge. Depending on where I fly I use values between 30 and 100. I do not use AI traffic (0) in online flights on Vatsim network.
AIRPORT_SCENERY_DENSITY. Airport vehicles. I always keep it at 1.
FreewayDensity=0. Road traffic – performance killer. I use no more than 6 or 8. When flying over sparsely populated terrain – 0.
LeisureBoatsDensity, ShipsAndFerriesDensity. Default maritime traffic does not cause severe performance issues. I set both values according to region where I fly – tons of yachts, boats and ships look great in Greece but make terrible impression at the coast of Somalia (I visit Mogadishu often).
CLOUD_COVERAGE_DENSITY=8. FSX setting slider allows to set it in the range between 0 and 8. Going up to 12 will increase cloud density – especially for default clouds or OPUS FSX software. I do not see a reason to use this value (12) with Active Sky Next.
CLOUD_DRAW_DISTANCE=12. A very strange tweak that I am still testing. Theoretically – this is a cloud drawing distance. Theoretically max. setting in FSX equals to 110 miles… but I am sure that I can see cloud cover edge at a smaller distance. I played with values between 12 and 35 – sometimes I felt that there is a difference, sometimes there was no difference at all. I will update this part when I reach some conclusions.
DETAILED_CLOUDS=1. I see no choice here – 1.
What not to use or use only with caution…
My test gave no results that I could share with you.
Affinitymask – sets the number of cores to be used by FSX. To be explained later. My recommendation is – do not use this tweak.
FIBER_FRAME_TIME_FRACTION, TEXTURE_BANDWIDTH_MULT – this tweaks should not affect FSX:Acceleration, FSX SP2 and FSX:SE.