FSX FAQ (Part 1)

Q: What the heck is the FSX FAQ?

A:   This will be a living document designed to answer frequently asked questions about Flight Simulator X.  I am not an expert in every field regarding Flight Simulator. I am merely the technical art lead for the studio.  So my main focus will be in answering art-related SDK type questions.  I will however try to cover some other areas as well.  Since this is a living document, it will grow and develop with the life of the product.  Likely it will get too big to navigate as one document (hence the "Part 1" above).  The first question after this one will be the most recent question I have answered, so if you recognize the question then you don't have to read any further.  Enjoy!

Q: Where the heck did all the .cfg files go?

A:   For security reasons as well as organizational and multi-user scenarios, we moved all of the configs.  The FSX.cfg now lives here:  C:\Documents and Settings\[YourUserName]\Application Data\Microsoft\FSX.  The scenery.cfg now lives here:  C:\Documents and Settings\All Users\Application Data\Microsoft\FSX. 

Q: How do I view the 2d panel in an aspect ratio besides 4:3 without it stretching and looking funny?

A:   For reasons why we didn't author multiple resolution 2d panels, see my related blog post. There are two ways of doing this:

1.  Put the game into "windowed" mode and rescale the window to 4:3 aspect ratio when flying with 2d Panels turned on.  Admittedly, this is annoying and a bit of a hack, but if you really don't like stretched panels and no blank space, it will do the trick.

2.  You can turn off panel stretching in FSX.CFG:

[PANELS]

PANEL_STRETCHING=0 

Q: I keep reading about "the blurries" on the various Flightsim forums. What are they and how do I get rid of them?

A:   Ah, the mythical (okay, not so mythical) "blurries".  What better way to start off then with this oft-complained about issue.  I will say that great steps have been taken during this product cycle to eliminate this problem.  However, there are still a few cases where the blurries appear.  Our excellent terrain developer Adam Szofran has put a post on Avsim that answers this question very clearly, and without further ado, here it is:

"During the development of Flight Simulator X (FSX), we observed the following conditions that could cause the blurries:

1. Inadequate CPU resources being allocated to the terrain texture loader, causing high-resolution textures to load very slowly, leaving low-resolution textures on the terrain.

2. Exhaustion of video memory, causing high-resolution mipmaps to be dropped in favor of lower-resolution mipmaps.

3. Poor bilinear, trilinear, or anisotropic filtering parameters, causing overaggressive mipping of textures viewed at oblique angles, such as distant terrain near the horizon.

Now I'd like to address each one of these problems in turn.

1. Inadequate CPU resources for the terrain texture loader.

The symptom of this problem is increasingly blurry terrain textures the further and faster you fly. When you slow down or stop, high-resolution textures eventually appear after some delay. This is probably the more traditional and most frequent cause of the blurries people have seen in Combat Flight Simulator 2 (CFS2), Flight Simulator 2002 (FS8), and Flight Simulator 2004 (FS9). This problem was caused by the scheduler for background tasks in the FS engine putting too much emphasis on maintaining high and even frame rates and not enough emphasis on preventing a backlog of background work, such as loading terrain textures.

To reduce this cause of the blurries, we reworked how Flight Simulator's scheduler prioritizes background tasks in FSX. Now much more CPU time is devoted to loading scenery data, including terrain textures, at the expense of somewhat lower frame rates. These changes occurred after the beta and demo builds went public, so you'll have to wait until the final version of FSX becomes available before seeing the improvement. In my opinion, this change has mostly solved this cause of the blurries, although the scenery loader can still get behind at extremely low frame rates (less than 10 fps) or at very large airspeeds (faster than 600 knots).

There are several ways to adjust how much CPU time FS devotes to loading scenery and textures. The easiest way is to set the target frame rate slider to a value that your machine can consistently achieve. The lower you set the slider, the more CPU time is diverted from rendering to loading data. Another thing you can do is to modify the following variable in FSX.CFG:

FIBER_FRAME_TIME_FRACTION=0.33

This variable determines the amount of CPU time given to loading scenery data as a fraction of the time spent rendering. For example, the default value of 0.33 means that for every 3 milliseconds spent rendering, FS will give 1 millisecond to the scenery loader. If necessary, you can use a larger value to devote more time to loading. Or, if you don't have a problem with the blurries and you want slightly higher frame rates, then you can use a smaller value. Again, this variable is only available in the final release version of FSX and is not available in the beta or demo.

2. Exhaustion of video memory.

I recently posted about this in another thread on AvSim entitled "Blurries still there :(". If a particular scene requires more video memory than your video card has available, the Flight Simulator graphics engine has no choice but to remove some of the highest resolution mipmaps from video memory to save space, leaving only lower-resolution mipmaps for rendering. This usually appears as a sudden change. One moment, all the textures in the scene are sharp and full-resolution and suddenly everything becomes more blurry. It can also get progressively worse over several frames as FS works to fit more textures into video memory.

There are several ways to combat this problem.

a) If you are running at a very high screen resolution, lower it slightly to free up additional video memory.

b) Some video cards use lots of video memory for anti-aliasing, so try turning it off.

c) Turn down the setting of the "Global Max Texture Size" slider.

d) Lower the setting of the AutoGen and scenery complexity sliders.

e) Reduce the setting of the terrain texture resolution slider.

f) Turn down the amount of AI traffic.

3. Poor filtering settings.

Unfortunately, not all video cards and drivers respond the same way when Flight Simulator interacts with Direct3D to set up bilinear, trilinear, or anisotropic filtering. This means that in spite of our best efforts, the texture filter on your video card may not be set up to perform optimally. This can result in textures looking excessively blurry when viewed at an oblique angle. To fix this, try each of the different filter modes (bilinear, trilinear, anisotropic) to see if any of them perform better. If not, then try overriding Flight Simulator's filter settings with the settings in your display driver. You can do this with ATI and NVIDIA drivers by clicking on the ATI or NVIDIA icon in the tray next to the clock on your desktop and making the appropriate selections."

Q: Why does my totally amazing dual core Ahtlon machine show up with all of the settings set to the lowest possible setting?

A:   When we sniff our user's machine to determine performance buckets, we look at a few different things.  As the most important part of the equation we look at video memory, system memory and CPU.  For some reason, (I don't know all the technical issues behind this, so I won't even venture a guess) this information is not available for AMD chipsets, which puts a big fat zero in part of the equation.  So even if you have the most smoking graphics card ever and a terrabyte of system memory, the CPU still shows up as nothing, which means that there's nothing to process all this information, which means your default settings go all the way to zero.  This is an annoying problem (especially since both of my machines are Athlons) but the alternative is to make some arbitrary assumption that may end up giving the end user a very poor experience right out of the box.  Granted, really low resolution on everything is not the best experience, but it is better than a really pretty slide show.  Which brings me to:

Q: I've got a brand new machine with the best hardware available. Why can't I put all of my sliders to the max and get 60 frames per second?

A:   Flight Simulator is a very different product than most games.  The shelf life of most games is about 6 months at the most.  Occasionally you'll get some mod communities (Half-Life and Counterstrike come to mind) that will extend the shelf life of a game to a couple of years.  However, take a quick jaunt over to some of the forums (Avsim, Flightsim.com, etc.) and you'll find people who are still flying FS2000 six years later because they have $2500 invested in add-ons.  Because our shelf life is so long, we tend to push the boundaries of what you can do with the performance of new machines.  As with every release of Flightsim we've ever done, it will be about 2 years or so before hardware catches up.  We do this very deliberately because as people upgrade their machines down the road (and are still playing Flightsim), we want their experience to develop and grow.

Q: Yeah, but if you are aiming for hardware 2 years from now, doesn't mean that my current experience will be sucky?

A:   In short, no.  In long, we make a very special effort to make sure the default experience on your machine for Flight Simulator X right out of the box is equivalent to FS2004, with a lot more going on.  As an example, on my machine in FS2004, I can slide the autogen slider all the way to the right and get great performance.  In FSX, I can slide it somewhere in the middle and get great performance.  This would at first blush seem like FSX is performing worse than FS2004.  The reality is that the highest setting of Autogen in FS2004 meant that 600 objects per kilometer are being rendered.  In FSX, the highest setting means that 6000 objects are being rendered.  So even at the mid point in FSX, you're likely getting twice the autogen density as you were in FS2004.  Additionally, you may be rendering living world traffic in the form of boats, cars on roads and vehicles at airports which didn't even exist in FS2004.  Also, if you're running a 2.0 shader card or better, you're also rendering full per-pixel shaders with normal maps, specular and reflection that you weren't rendering in FS2004.  Plus, you're not getting "the blurries" like you were in FS2004 and you're rendering full 1 meter per-pixel resolution terrain textures which were at 5 meters per-pixel in FS2004 (and were still not loading in fast enough). 

So no, you can't crank all the sliders up to the max and expect performance to be great.  However if you play with the sliders a little bit, you will definitely get a better experience than you did in FS2004, with a richer, more realistic world that still performs great.  One of the sliders I recommend you play with is the target framerate slider.  I keep this at 20, get great performance, can crank the sliders up reasonably high, and really don't notice any kind of slow framerate at all.