Video and Hardware
What's a good
PC configuration for X-Plane?
Generally speaking, the more money
(hardware) you throw at X-Plane the faster it will run and/or the
fancier the scenery it can manage. What you get depends greatly on what
you can afford. The availability and prices of PC components change
daily. Tony Gondola maintains web pages with recommended components for
low end and
high end PC
configurations. Also see the
X-Plane system requirements
for recommended configurations and links.
What graphics cards are best for X-Plane?
The ATI Radeon and nVidia GeForce
cards
are your only real choice. Both work well, have good OpenGL support,
and
both have their religious adherents.
Note!! ATI's OpenGL drivers for
Linux are not very good. If you're running X-Plane on Linux nVidia is
your only choice.
Which model you
get
depends on how powerful the rest of your system is and how much money
you feel like spending. Remember that OpenGL is implemented in both
hardware and software. A top end graphics card in a 2 year old PC is a
waste of money; conversely, a mediocre graphics card will cripple a
cutting edge CPU.
Avoid the GeForce MX and
Radeon
SE series. These are cost-reduced cards with substantially lower
performance and capability than their non-MX or non-SE counterparts.
Certain video manufacturers do not ship proper OpenGL drivers. For
example, Matrox cards does not work well with X-Plane and show visual
anomolies or poor performance due to an inadequate OpenGL
implementation. Some folks are quite happy with the results they get
with Matrox Parhelia cards, but I've also heard claims that their
OpenGL performance lags their Direct3D performance.
How do ATI and nVidia
cards compare in performance?
See
this chart
that ranks the cards according to comparable performance.
I have a PC with an Intel
integrated video chip
How well will this work with X-Plane?
It may or may not. I've seen mixed results posted in the tech list.
It works OK for some people, runs but with lousy performance for
others, doesn't work at all for still others. Results vary greatly,
depending on the particular generation of Intel chipset and the rest of
the machine. For example, I've had a report that the Core 2 Duo
MacBooks run X-Plane quite decently. If you're considering a machine
with Intel graphics, try the demo before you buy anything!
Here's Ben Supnik's answer on the subject:
I have gotten reports of Intel integrated graphics not working; I have
not gotten any reports that it does, but people don't tell me
"everything's okay".
This is a little bit awkward, but X-Plane 802 raised the bar a little
bit for what we require out of drivers...it would have been nicer to
have that requirement right out of the box, because people ask us to
'put it back', but really we should be using the implementation we have
now.
X-Plane 802 uses Vertex Buffer Objects for terrain, and X-Plane 820
uses them for terrain and objects. They represent a significant
improvement in our geometry processing compared to display lists, which
is why we use them more and more. Unfortunately they seem to not always
be handled well by current drivers, perhaps because they are a newer
OGL feature.
So can I upgrade this
machine to run X-Plane?
It depends on whether it has a real
video card slot - either AGP or (on newer machines) a 16-way
PCI-Express (PCIe) slot. If it does, buy yourself a real video card
(see rest of this page) and ignore the on-board video. If not, it's a
good machine for email and web browsing, but trying to run X-Plane on
it will only lead to frustration.
Where can I get detailed reviews
of video cards?
Are there benchmarks of X-Plane
configurations?
Recent versions of X-Plane have a built
in benchmark feature that allows you to run repeatable performance
tests. You use it by running X-Plane from a command line with the
--fps_test switch. For details on running X-Plane from a command line,
see
Ben
Supnik's blog entry on the subject.
There is no currently available list of benchmark results.
Eric Fourchault used to
run a
benchmark
page. If you want to benchmark your own system,
get his benchmark
procedure. [This page is currently offline. If it remains offline I
will remove this link.]
Why is it getting foggy?
As I fly, the fog rolls in and there is less
and less visibility. What's going on?
X-Plane reduces visibility if your frame rate drops below a certain
threshold - usually 20fps. Flying into an area with a lot of objects -
structures or taxiways - will cause a drop in frame rate.
While I was flying, it got increasingly
foggy and then X-Plane hung.
You've probably run out of Video RAM. Frame rate starts to drop
sharply when you're close to running out. Reduce your screen resolution
or texture resolution.
I have a
widescreen LCD monitor, and X-Plane's display is all distorted
Problem is you've let the monitor scale
X-Plane's display and mess up the display's aspect ratio. You need to
fix it in X-Plane's Rendering Options menu. You have a couple of
options:
- Uncheck the "Set display resolution" checkbox. This means your
display will be left at its original (presumably max resolution)
setting when you start up X-Plane. Of course, now X-Plane will be
running in a little window instead of filling the screen, so...
- Change the display size in X-Plane's Rendering Options to match
your screen size. This will fill your screen. However, in the 2D panel
view, you won't have any panel image on the sides. There's no way to
fix this, other than to always fly using the 3D cockpit view.
- If your video card is acting overloaded because of the increased
display size, pick a lower resolution for the monitor that preserves
the aspect ratio (1280x768 is a possible example).
- If you want to stay with the 2D panel view but don't like the
clear views on the side, set X-Plane up with a display resolution whose
height matches the height of your monitor setting and whose width makes
a 4:3 aspect ratio (1024x768 to match the 1280x768 example above).
For display resolution tradeoffs, read on...
I have a fast CPU
and video card and a
wide-screen display. What's the best resolution setting for X-Plane?
There are some tradeoffs and decisions you have to make. Different
answers will be right for different people. Let's say you have one of
those cool wide-screen flat panel displays with a resolution of
1440x900...
If you're using the 2D cockpit view:
The cockpit bitmaps may range from a
4:3 aspect ratio to 1:1.
X-Plane typically displays a 4:3 maximum aspect ratio view and and
allows you to scroll an extended panel up and down. You can set any
display size you like (within limits) in the Settings ->
Rendering Options menu. X-Plane scales the cockpit view to fit the
smaller of the horizontal and vertical dimensions of the resolution you
declare, relative to the 4:3 ratio. The larger dimension is filled out
with additional field of view. However, if you declare a more square
cockpit view, you will see more of an extended panel.
So, for example, you could set up a resolution of 1200x900, and
X-Plane would scale the panel to match. If you declare the full
1440x900
resolution, the panel won't scale any larger, but you'll get additional
field of view on either side. Problem is this only looks good with the
glider and fighter cockpits that have complete side boundaries. The
others just cut off, and you'll have an open view where there should be
more panel.
In the 3D cockpit view, X-Plane simply fills the screen size
you've selected with the 3D cockpit view, so if you have a wide screen
and want a wide cockpit view, just go for it.
There are some potential issues with scaling up the panel:
- You will increasing the rendering load on your graphics card,
requiring more VRAM and reducing frame rate.
- Prior to version 8, X-Plane did a lousy job of scaling the text
on the panel (instrument readouts and labels) - it looks blocky and
distorted. This problem is substantially fixed in V8 - the panel
instruments and text look a little "grainy" when they're scaled up, but
are quite acceptable.
So in terms of filling your screen, you have a tradeoff. You'll
get the cleanest and sharpest view of the scenery (and the airport
you're trying to land at) if you run the display at maximum resolution
and declare that to X-Plane's Rendering Options. However, your graphics
card has to work harder and in versions prior to V8 text will look
lousy. Or you can leave X-Plane's resolution at 1024x768 and set your
display resolution to 1024x768, allowing your display hardware to scale
the display to full size. This gets you better frame rate and a cleaner
text and panel view in older versions, but the scenery will look a
little fuzzy. Display resolution is just another piece of the rendering
load that you can trade for visibility, roads and buildings, etc.
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.) While the video card turns the 3D objects
descriptions into a 2D view, the cpu must decide which of the many
objects are currently in view and transmit the geometry descriptions of
those objects to the video card - every frame. X-Plane uses relatively
simple rendering techniques but has huge object counts if you're flying
over a densely built up area, so it's typically the cpu that gives up
first. If you have a very powerful video card, you can take advantage
of it by increasing your screen and texture resolution and turning up
anti-aliasing.
Does X-Plane
support multiple monitors?
For example, so I can get the panel view on one and
another
view on another?
As of V8.15, there is limited dual monitor support (e.g., scenery view
on one monitor and panel or map or instructor console on the other).
For
details, see the V8.15 detail page.
Other than that, however, X-Plane only supports one display
per computer. You can get multiple monitor support for a single
extended view using the Matrox
Triple Head to Go product. This gadget makes three monitors look to
the system as if they were a single superwide monitor.
For more flexible use such as multiple different views, you can get
multi-head support (among other
features) with networking.
Why doesn't X-Plane
support multiple monitors on a single computer?
X-Plane uses up pretty much all the
compute resources available on a single machine. A modest amount of
that goes
to the flight model, but most of the compute resources are used by the
graphics. (On the other hand, as of V8.60 all aircraft use a full
flight model, so putting many aircraft in the sky will run up the cpu
load quickly.)
Most of OpenGL is handled in the video card, but there is still plenty
of work left over for the CPU. Yes, there are dual processor systems
around, as well as systems with two video card slots,
and X-Plane doesn't do a lot with multi-threading (yet). Dual processor
systems haven't been around long enough to motivate the X-Plane
developers to support multiple views within a single copy of X-Plane.
People have run multiple copies of X-Plane on a single machine, each
with its own display. However, you need a really powerful
multiprocessor system to do this, and running multiple instances of a
single application and having them network with each other using local
connections is a tricky business.
Future development trends in X-Plane suggest an emphasis at using
multiple cpus to perform other tasks such as scenery loading and the
flight model, not running multiple copies of the rendering
engine. So
to run X-Plane with multiple monitors you need to use
networking.
I have a really powerful
computer and video card with two monitors, and my frame rate is nowhere
near as good as it should be
Turn off 3D acceleration on the other
monitor (i.e., the one you're not running X-Plane on). Just having 3D
acceleration enabled uses a significant part of the video card's
capacity.
When
I switch to the external view or the 3D panel view my frame rate tanks
This problem results from the way
X-Plane renders the panel in 3D views. Ben Supnik explains:
The way we do the 3-d cockpit object is: first we draw the 2-d panel.
We then copy it from the back buffer to a texture. We then draw the
world, draw the cockpit object using this texture, and then we skip the
2-d panel draw that would have come later.
The problem is that sometimes rather than transfer from screen to VRAM
strictly on the card, instead OpenGL decides to transfer the texture
back to system RAM, process it by hand, and send it to the card. This
round-trip is what murders framerate, and it's a question of driver
support... some drivers only do this at certain bit depths, which is
why I mention it.
It is worse in 820 because starting in 820, we do the full 1024x1024 in
two transfers, rather than 1024x768. This makes life easier for authors
but means we transfer 30% more data.
Probably the optimization we need is to not use the panel texture in
external views...but there may be cases where the plane will not render
correctly without it. This is a tricky issue because it divides the
X-Plane worlds into "haves" (for whom these things cause ZERO framerate
hit) and the "have-nots" (for which the sim becomes unusable).
When I record a Quicktime move
or take a screenshot,
it comes out all black.
This is a known problem with ATI video
cards and drivers. You need to turn off anisotropic filtering in your
ATI control panel and/or in X-Plane's Rendering Options.
The letters and numbers in the panel look
all blocky and distorted
This problem applies only to X-Plane
versions earlier than V8. (I'm not sure exactly when it was fixed, but
8.0 is a good guess, given how much got reworked at that point.)
The problem is that X-Plane's "native"
resolution is 1024x768 (800x600 in version 5). All the lettering is
rendered with a bitmap font sized for 1024x768 (or 800x600), and the
image is subsequently scaled to whatever screen resolution you've
selected. Bitmap fonts looks terrible when you scale them, especially
by
a small ratio like 800x600 vs 832x624.
My terrain textures are confused
The terrain texture seems to get
confused and picks up object
textures too. It took me a while to work out why I was getting red, blue and yellow
surface colours until I viewed it from
5000ft and could clearly read the MacDonalds and Texaco adverts! It seems to run in stripes with the
proportion of correct texture to object
texture being related to the amount by which I set the rendering size over the size of the
primary screen.
This sounds like texture memory corruption. It usually happens because
you're out of VRAM. I don't know whether this is X-Plane's or OpenGL's
fault, but one or the other is not real good about running out of
memory
cleanly. Try reducing your texture resolution in the rendering options
(worst comes to worst, try cutting back to 16 bit color) and see if
this
makes the problem go away.
The display doesn't look right
<Insert your bizarre display symptom
here.> Most strange display problems are solved by getting new
OpenGL
drivers for your video card. Newer versions of X-Plane have started
using progressively more and newer OpenGL features. Check your
manufacturer's download site or
the OpenGL sites. Macintosh users running OS 10.3.x are strongly
encouraged to ugrade to 10.4.x.
Older video cards may not support some of
the newer OpenGL features and may have trouble with details of
X-Plane's display, such as runway lighting. Some display problems may
be cured (at the cost of reduced frame rate) by disabling sprites or
vertex buffer objects, by running X-Plane from a command line with the
--nosprites or --novbos switches. For details on running X-Plane from a
command line, see Ben
Supnik's blog entry on the subject.
Terrain polygons are flashing around
borders
and coastlines
Austin's following reply applies to
version 6.12 and up:
This is because I now handle the depth
buffer in a way that works better MOST of the time, but results in the
flashing on CERTAIN ATI VIDEO CARDS.
If you are one of the people that has
such a card, NO PROBLEM! Just go to the RENDERING OPTIONS SCREEN and
turn on the z-buffer offset button in the upper right. That should
solve
the issue.
Basically, we are at the point here where
we are "fine-tuning" the algorithm for each video card, and this button
lets you do that.
I would rather NOT have any buttons for
you to set at all, but at this point I see no good way to automate
this,
so you can just experiment with it both ways to see which works better
for you. OFF is the recomended setting.
Back to the main
page