Performance and Memory
How do I display frame rate?
From the main menu bar, select Settings
-> Data Output. (V7 and up, click the Output tab if it's not already
selected.) In the menu that comes up, look for "Frame rate / time
ratio"
in the upper left. Click the right hand button next to it.
When I switch to external view
my frame rate tanks
The plane probably has an externally
visible cockpit object. Adding it to the rendering load has overloaded
your video card. To get your frame rate back, either reduce your
rendering load by turning off features or switching to 16 bit mode, or
open the plane in PlaneMaker and remove the cockpit object. For a
detailed explanation, see the
video
card FAQ page.
How can I improve frame rate in X-Plane?
X-Plane's frame rate is mostly determined
by how much work it has to do to render your current view. The
following
factors affect frame rate:
- Visibility (in Settings -> Weather Atmosphere). The farther
you can see, the more terrain and stuff X-Plane needs to render.
- Field of view (in Settings -> Rendering Options). Same deal:
a
wider field of view lets you see more and makes X-Plane do more work.
- Clouds (in Settings -> Weather Atmosphere). The scattered and
broken clouds in V6 have a modest frame rate cost. The V7+ 3D clouds
(what you get with scattered or broken clouds) are build up out of a
great many texture objects and cause a major frame rate hit.
- Cloud shadows and reflections (V7+) have a substantial frame rate
cost.
- Textured lights have a modest frame rate cost.
- Resolution (in Settings -> Rendering Options). Higher
resolution means more data for your graphics card to handle for each
frame. This covers both screen size and texture detail. Note higher
resolution also requires more VRAM in your graphics card. When you're
close to running out of VRAM there is an abrupt drop in frame rate,
typically going to zero in short order.
- Objects (in Settings -> Rendering Options). All the scenery
and eye candy goodies cost frame rate. This means trees, air traffic,
objects, plane exterior, and forest fires. Autogen and object density
and visibility distance translate directly into rendering load.
- Instrument panel. The glass cockpit instruments, especially the
EFIS map, cost frame rate.
- 3D panels substantially increase the graphics load and consume
more VRAM. because of implementation issues they cause an especially
bad
hit if you're running in 16 bit mode.
- Same goes for externally visible cockpit objects.
- Location. For better frame rate, stay away from areas with lots
of buildings and complex airports. LAX is a good example.
The following factors do not affect frame
rate:
- Custom Scenery Textures. Lots of terrain textures in custom
scenery require more memory but don't affect frame rate.
- Memory (except for extreme cases). In Mac OS8/9, X-Plane either
has enough memory or it doesn't. In the latter case, it hangs. In
paging
operating systems (Windows, Mac OSX) you had better have enough memory
for the basic flight mode. If you don't your frame rate will go through
the floor (and OSX will give you the spinning beachball). Marginal
memory will cause pauses in changes in view and when you bring up
menus, and will substantially slow down loading of aircraft and scenery.
I have a
really powerful video card, and I still get frame rate warnings and fog
You're probably running out of cpu
power, rather than rendering power in the video card.
This is most likely to happen with high object density (lots of
buildings and trees, streets, taxiways, etc.) For details, seet the
video card FAQ page.
How do X-Plane's resolution
settings affect VRAM and frame rate?
Thanks to Ben Supnik:
In X-Plane every texture is downsampled
from its on disk size based on the resolution settings:
- For object, aircraft, autogen, and most non-special-case
non-terrain textures, the size of the texture is divided by two for
each
resolution size below "very high". (So high = divide by two, normal =
divide by four, etc.)
- For terrain textures, the textures size is divided by two for
every size below "extreme".
- Some textures such as the aircraft panel markings (both blend
and
test) and the main UI texture as well as a few others are never made
smaller because they would not function properly.
Please note that under normal
conditions,
terrain textures are always reduced in half one more time than all
others! The only exception is extreme res, where everything is seen as
it is on disk.
X-Plane uses linear interpolation to
'smooth' textures as they are downsampled; this can blur fine lines,
etc.
All textures must be a power of 2 on each
side, e.g. 1024, 512, 256 pixels, etc. The max texture size is 1024,
the
min is 4.
The masks and terrain textures are stored
separately, so you can reduce the masks used to create texture borders
and save VRAM without reducing the textures themselves. This is already
done to a limited extent; most 256x256 textures have 128x128 masks.
Terrain textures are stored in 24-bit RGB, but alphas are stored in
8-bit alpha, so terrain takes up 3 x the VRAM per square pixel as
masks.
X-Plane's terrain-drawing framerate is
partly a function of the number of types of unique terrain (as defined
by distinct bitmap, not distinct land use!!!) and even more so by the
number of quads that have multiple terrains visible at once. So by
using
the same bitmap for more kinds of similar terrain, you can both save
VRAM and improve framerate. For example, if you use one forest bitmap
for all of the forests defined in the land_use.txt file, the sim will
get faster and use less VRAM (since only one bitmap is loaded, and
borders between kinds of forests become continuous forest).
You can artificially influence the ratio
of VRAM used for objects vs. scenery by resizing the terrain bitmaps to
be smaller and then running the sim at a higher resolution.
Saving VRAM will not improve frame rate
beyond a certain point; once everything is in VRAM, frame rate is
limited by CPU, polygon and fill rate of the graphics card. For 8 MB
cards VRAM is very important, but for a 16 MB card running at 'high'
resolution, you're probably well within the card's VRAM capacity.
[These
are old numbers. 16MB is currently the absolute minimum for X-Plane,
and
64MB can be considered "comfortable".]
How can I get acceptable frame rate in V7-8
on an old machine?
There a couple of serious frame rate
killers in X-Plane V7+, compared to earlier versions: 3D clouds, cloud
shadows, and new runway textures. You can get frame rates comparable to
or better than V6 by doing the following:
- Don't use scattered or broken clouds (Settings-> Weather->
Atmosphere). Use Haze Layer or High Cirrus instead.
- Turn off cloud shadows in the Settings-> Rendering Options
menu.
- Reduce texture resolution in the Settings-> Rendering Options
menu.
- Use the generation 7 scenery if you're running V8 (see the Scenery page).
- Use an aircraft with a simple panel. Each instrument consumes
VRAM and presents a rendering load.
- Use an aircraft without a visible cockpit object.
- Revert to the V6 runway textures. The V7 textures are a lot
bigger and may tax old graphics cards. Each of these has the texture
files for that kind of surface. The texture file used for general
pavement is named rway_pave.bmp. All the other files have special
markings (lines, numbers, touch-down zone, etc.) Simply copy over the
corresponding files from X-Plane V6.70. [Caveat: This advice worked
going from 6.70 to early V7 versions. I haven't tried it in a while and
it may or may not work with later V7.x versions. Don't even think about
it for V8.x.]
I have noticed that when I am running X-Plane
every once in a while X-Plane freezes for a while.
X-Plane is loading new scenery. The
scenery is organized into one degree squares. The Low Enroute window
contains a 3x2 degree patch of the terrain and X-Plane keeps you more
or less in the center of that window by loading whole degrees of
scenery as you move.
(The remaining discussion only applies to X-Plane versions 6.x and
earlier. In X-Plane version 7 and later all scenery is on the HD.)
If you want to speed this up, have a look in the DATA folder on the
X-Plane CD. You'll see folders named something like +40-080. Each
folder
covers a 10x10 degree square and the name is the latitude and longitude
of the lower right corner of the square. So for example +40-080 covers
the northeastern USA and southern Quebec. Simply copy the folders for
the areas you fly in to your X-Plane folder on your hard drive, into Resources\Earth Nav Data.
Note!! The X-Plane install includes the
+30-120 and +30-130 folders to cover parts of the US west coast. These
folders are not fully populated; the remaining scenery files are on the
CD. DO NOT simply copy the complete +30-120 and +30-130 folders
from the CD to the HD. A couple of the scenery files on the CD are
wierd
and are not recognized by X-Plane. The folders in the install contain
good copies. Only copy files from the CD that are not yet on the HD.
I copied all the scenery to the hard drive
and X-Plane still pauses occasionally.
Scenery loads still take time even if all the scenery is on the
HD. There's a lot more than just reading the scenery in; all the
scenery textures have to scaled according to the rendering options. The
more recent versions of X-Plane make multiple copies of the textures at
varying precomputed resolutions to optimize graphics performance.
On the Macintosh the CD may still spin even though you have all the
scenery on the HD. The problem is the MacOS file system, which
occasionally hits the CD for file metadata even though the app is not
making any explicit references to the CD. You can make the pauses go
away by switching back to the Finder after X-Plane has started up and
ejecting the CD.
I'm
getting a lot of short pauses running X-Plane
There may be other applications or
system processes running that are taking up cpu time.
As of V8.32, the pauses may be caused by incremental scenery loading,
if "background loading" is disabled. Here's what Ben has to say on the
subject:
Regarding scenery pauses:
The bad news: the end result is lots of small pauses. NOT what people
wanted but necessary for implementation reasons.
The good news: at least on my 1.8 ghz G5 the stuttering is very slight
with appropriate rendering settings (NOT "insane") and they don't
happen all the time.
All of this applies only IF you disable background loading. You should
only disable background loading if you get thread failures. (You will
know this because the alert box in xp830b11 will say "turn off bkgnd
loading".
Anyway, in the fallback mode there will be a series of stutters 4 times
per DSF file, roughly (so about every 25 km). The number of stutters
and length is a function of the scenery settings...at "none" there are
none, at default they are few and small and at "insane" they are
numerous and large. So if you have to kick into non-threaded mode, I
recommend turning the 3-d down.
More info in my current blog entry:
http://xplanescenery.blogspot.com/
I am still working on debugging this, so I hope that more and more
users can run with background loading in 830, 840, 850. It is my
speculation that the thread problems happen on heavily overloaded
machines, but since Austin and I have never seen this, we just don't
know.
When I try to run X-Plane on my OS8/9
Macintosh, it comes part way up and then hangs.
You're probably running out of memory.
Check the memory requirements for your current version. You can turn on
virtual memory and run X-Plane in real memory that's about 2/3 the
stated requirement if you're willing to put up with pauses in view
switches, menus, scenery loads, etc.
Other causes of crashing on startup are
extension conflicts and OpenGL versions. OpenGL 1.1.3 has been reported
to be troublesome. Upgrade to OpenGL 1.2.1.
In general, it's a good idea to keep your
extension set to a minimum when running X-Plane, both to conserve
memory
and to minimize conflicts and pauses.
Does adding memory help X-Plane on Mac
OS8/9?
(This discussion applies to X-Plane
declared memory size on Mac OS 8/9.)
Only if it doesn't run. Adding more
memory than needed will not increase frame rate. X-Plane keeps a
considerable amount of data in memory - airports, navaids, textures,
etc. If it runs out of memory it usually hangs. The memory size X-Plane
ships with is adequate for normal use. If you use custom scenery with a
lot of custom textures, you may need to increase X-Plane's memory size.
Does adding RAM help on
other systems?
On more modern operating systems like
Mac OSX and Windows 2000 and XP, X-Plane will page fault if you don't
have enough RAM. In extreme cases this will affect your frame rate.
However, you can get away with running X-Plane in less than the
required
memory (say, 256MB on a PC instead of the required 512MB for X-Plane
V7.x) if you're willing to tolerate a slower startup and occasional
delays when you switch views or bring up a map. As long as the flight
model code, and rendering code and data for the current view fit in RAM
you're OK. Note with X-Plane V8.x minimum RAM requirement is 512MB;
you'll get nowhere with less.
Back to the
configuration page
Back to the main page