]> git.mxchange.org Git - flightgear.git/blob - docs-mini/FlightGear-FAQ.html
Remove some left over debugging output.
[flightgear.git] / docs-mini / FlightGear-FAQ.html
1 <html lang="en">
2   <!-- $Id$ -->
3   <head>
4     <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
5     <title>FlightGear FAQ</title>
6     <style type="text/css">
7         .indent { margin-left: 2em; margin-right: 1em; }
8       </style>
9   </head>
10   <body>
11   
12     <h1 align="center">FlightGear FAQ</h1>
13     <hr noshade>
14     
15     
16     <h2>Introduction</h2>
17       <p>Welcome to the FlightGear FAQ.  Here you will find the answers to
18       some questions that are frequently asked on our mailing lists.  If
19       you have a question that is not answered here, feel free to ask
20       us on our mailing lists.  Enjoy</p>
21     
22   <hr noshade>
23     <h2>
24       <a name="toc">Table of Contents</a>
25     </h2>
26     <h4>1 -
27     <a href="#1">The FAQ</a>
28     </h4>
29     <div class="indent">1.1 -
30       <a href="#1.1">Where can I get the latest version of this FAQ?</a>
31     </div>
32     <div class="indent">1.2 -
33       <a href="#1.2">Who do I contact if I have comments about this FAQ?</a>
34     </div>
35     <div class="indent">1.3 -
36       <a href="#1.3">How old is this document?</a>
37     </div>
38     <div class="indent">1.4 -
39       <a href="#1.4">What other important documentation should I read?</a>
40     </div>
41     <br>
42     <h4>2 -
43     <a href="#2">Distribution</a>
44     </h4>
45     <div class="indent">2.1 -
46       <a href="#2.1">Where can I get FlightGear?</a>
47     </div>
48     <div class="indent">2.2 -
49       <a href="#2.2">What is the password for the FTP server?</a>
50     </div>
51     <div class="indent">2.3 -
52       <a href="#2.3">Why won't the FTP server let me in with the right login info?</a>
53     </div>
54     <div class="indent">2.4 -
55       <a href="#2.4">Where can I find the latest development source code?</a>
56     </div>
57     <div class="indent">2.5 -
58       <a href="#2.5">What is SimGear, and why do I need it?</a>
59     </div>
60     <div class="indent">2.6 -
61       <a href="#2.6">Where can I fly and where do I get the scenery?</a>
62     </div>
63     <div class="indent">2.7 -
64       <a href="#2.7">Where can I get different 3D models for my plane?</a>
65     </div>
66     <div class="indent">2.8 -
67       <a href="#2.8">How current is the data in FlightGear compared to the real world?</a>
68     </div>
69     <div class="indent">2.9 -
70       <a href="#2.9">Where is the moving map?</a>
71     </div>
72     <div class="indent">2.10 -
73       <a href="#2.10">Why don't you charge money for this?</a>
74     </div>
75     <br>
76     <h4>3 -
77     <a href="#3">Compiling</a>
78     </h4>
79     <div class="indent">3.1 -
80       <a href="#3.1">Why won't FlightGear compile?</a>
81     </div>
82     <div class="indent">3.2 -
83       <a href="#3.2">I'm using RedHat 7, and ...?</a>
84     </div>
85     <br>
86     <h4>4 -
87     <a href="#4">Configuring</a>
88     </h4>
89     <div class="indent">4.1 -
90       <a href="#4.1">How do I install new scenery?</a>
91     </div>
92     <div class="indent">4.2 -
93       <a href="#4.2">How do I setup my joystick(s)?</a>
94     </div>
95     <div class="indent">4.3 -
96       <a href="#4.3">What format should my personal .fgfsrc file be in?</a>
97     </div>
98     <br>
99     <h4>5 -
100     <a href="#5">Running</a>
101     </h4>
102     <div class="indent">5.1 -
103       <a href="#5.1">Why do I get an error loading libopenal.so.0?</a>
104     </div>
105     <div class="indent">5.2 -
106       <a href="#5.2">Why do I get "ssgInit called without a valid OpenGL context"?</a>
107     </div>
108     <div class="indent">5.3 -
109       <a href="#5.3">What happened to the panel, keyboard, etc?</a>
110     </div>
111     <div class="indent">5.4 -
112       <a href="#5.4">Why doesn't audio work properly under Irix?</a>
113     </div>
114     <div class="indent">5.5 -
115       <a href="#5.5">Why is FlightGear so slow?</a>
116     </div>
117     <div class="indent">5.6 -
118       <a href="#5.6">Why is my SGI machine so slow?</a>
119     </div>
120     <div class="indent">5.7 -
121       <a href="#5.7">How do I see the frame rate?</a>
122     </div>
123     <div class="indent">5.8 -
124       <a href="#5.8">Stuck upside down after "crash"?</a>
125     </div>
126     <div class="indent">5.9 -
127       <a href="#5.9">Why does FlightGear die on startup saying "time zone reading failed"?</a>
128     </div>
129     <br>
130     <h4>6 -
131     <a href="#6">Hacking</a>
132     </h4>
133     <div class="indent">6.1 -
134       <a href="#6.1">What language is FlightGear written in?</a>
135     </div>
136     <div class="indent">6.2 -
137       <a href="#6.2">How do I design a flight dynamics model for a new aircraft?</a>
138     </div>
139     <div class="indent">6.3 -
140       <a href="#6.3">How do I import planes from Microsoft Flight Simulator?</a>
141     </div>
142     <div class="indent">6.4 -
143       <a href="#6.4">How do I import BGL scenery from Microsoft Flight Simulator?</a>
144     </div>
145     <div class="indent">6.5 -
146       <a href="#6.5">How do I design or modify a panel?</a>
147     </div>
148     <div class="indent">6.6 -
149       <a href="#6.6">How do I place objects, like buildings, into FlightGear?</a>
150     </div>
151     <div class="indent">6.7 -
152       <a href="#6.7">Where can I learn 3D programming and how do I get involved?</a>
153     </div>
154     <div class="indent">6.8 -
155       <a href="#6.8">How do I add an airport?</a>
156     </div>
157     <div class="indent">6.9 -
158       <a href="#6.9">How do I generate my own scenery?</a>
159     </div>
160     <br>
161     <h4>7 -
162     <a href="#7">Flying</a>
163     </h4>
164     <div class="indent">7.1 -
165       <a href="#7.1">Where can I learn about instrument flying and navigation?</a>
166     </div>
167     <div class="indent">7.2 -
168       <a href="#7.2">What is the difference between Aileron and Rudder?</a>
169     </div>
170     <div class="indent">7.3 -
171       <a href="#7.3">Is there support for multi-player flying?</a>
172     </div>
173     <div class="indent">7.4 -
174       <a href="#7.4">Is there support for any military scenarios like dog fighting or bomb dropping?</a>
175     </div>
176     <br>
177     <h4>8 -
178     <a href="#8">FlightGear v0.7.6</a>
179     </h4>
180     <div class="indent">8.1 -
181       <a href="#8.1">Why do I get an error in viewer.cxx about `exit' being undeclared?</a>
182     </div>
183     <br>
184
185   
186     <hr>
187     <h2>
188       <a name="1">1 -
189     The FAQ</a>
190     </h2>
191         <b>
192       <a name="1.1">1.1 -
193     <u>Where can I get the latest version of this FAQ?</u>
194       </a>
195     </b>
196         <div class="indent">
197           <p>
198           <a href="http://flightgear.org/Docs/FlightGear-FAQ.html">http://flightgear.org/Docs/FlightGear-FAQ.html</a>
199           </p>
200         </div>
201       
202         <b>
203       <a name="1.2">1.2 -
204     <u>Who do I contact if I have comments about this FAQ?</u>
205       </a>
206     </b>
207         <div class="indent">
208           <p>First contact the author.  If you get no response, send your
209           comments to the FlightGear-Users mailing list.</p>
210         </div>
211       
212         <b>
213       <a name="1.3">1.3 -
214     <u>How old is this document?</u>
215       </a>
216     </b>
217         <div class="indent">
218           <p>See the <i>About This Document</i> section at the end of the FAQ.</p>
219         </div>
220       
221         <b>
222       <a name="1.4">1.4 -
223     <u>What other important documentation should I read?</u>
224       </a>
225     </b>
226         <div class="indent">
227           <p>Most FlightGear documentation is linked to from
228           <a href="http://flightgear.org/Docs/">http://flightgear.org/Docs/</a>.
229           Definitely check out the <i>FlightGear Installation and Getting
230           Started</i> document available from the aforementioned location.</p>
231           <p>Also see the <code>FlightGear/docs-mini/</code> directory in the
232           source distribution for various other helpful documents.</p>
233         </div>
234       
235
236     <hr>
237     <h2>
238       <a name="2">2 -
239     Distribution</a>
240     </h2>
241         <b>
242       <a name="2.1">2.1 -
243     <u>Where can I get FlightGear?</u>
244       </a>
245     </b>
246         <div class="indent">
247           <p>The official download page is 
248           <a href="http://flightgear.org/Downloads/">http://flightgear.org/Downloads/</a>.
249           Source code is our primary form of distribution, but precompiled
250           binaries are available for Windows and SGI IRIX.</p>
251           <p>Alternatively, FlightGear is packaged for Linux by SuSE, Debian
252           (sid), and Mandrake (Cooker) and can be directly installed through
253           those distributions.</p>
254         </div>
255       
256         <b>
257       <a name="2.2">2.2 -
258     <u>What is the password for the FTP server?</u>
259       </a>
260     </b>
261         <div class="indent">
262           <p>The FTP server uses standard anonymous login procedures.  Login
263           with the username "anonymous" and use your email address as the
264           password.  Most FTP clients and web browsers will do this
265           automatically for you.</p>
266         </div>
267       
268         <b>
269       <a name="2.3">2.3 -
270     <u>Why won't the FTP server let me in with the right login info?</u>
271       </a>
272     </b>
273         <div class="indent">
274           <p>This generally means that the server is at it's capacity.  You
275           should receive a message saying such, but your FTP client may be
276           hiding it from you.  Your options are to keep trying until a slot
277           opens up or try connecting to one of our <i>FTP</i> mirrors listed at
278           <a href="http://flightgear.org/mirrors.html">http://flightgear.org/mirrors.html</a>.</p>
279         </div>
280       
281         <b>
282       <a name="2.4">2.4 -
283     <u>Where can I find the latest development source code?</u>
284       </a>
285     </b>
286         <div class="indent">
287           <p>The latest development code is available for everyone through our
288           CVS repository.  See
289           <a href="http://flightgear.org/cvsResources/">http://flightgear.org/cvsResources/</a> for details.
290           </p>
291           <p>Otherwise, you can get relatively up-to-date snapshots of the
292           development tree at
293           <a href="ftp://flightgear.sourceforge.net/pub/flightgear/Devel/Snapshots/">ftp://flightgear.sourceforge.net/pub/flightgear/Devel/Snapshots/</a>.
294           </p>
295         </div>
296       
297         <b>
298       <a name="2.5">2.5 -
299     <u>What is SimGear, and why do I need it?</u>
300       </a>
301     </b>
302         <div class="indent">
303           <p>SimGear is a library of supporting code.  SimGear is only needed
304           if you plan on compiling FlightGear -- it is not needed to run
305           precompiled binaries.  For more information see
306           <a href="http://www.simgear.org/">http://www.simgear.org/</a>.</p>
307         </div>
308       
309         <b>
310       <a name="2.6">2.6 -
311     <u>Where can I fly and where do I get the scenery?</u>
312       </a>
313     </b>
314         <div class="indent">
315           <p>While the base package only comes with scenery for the San Francisco
316           Bay area, you can currently fly just about anywhere in the world.
317           See the <i>"Additional Scenery"</i> section of
318           <a href="http://flightgear.org/Downloads/">http://flightgear.org/Downloads/</a>
319           for more information or go directly to our graphical downloader at
320           <a href="http://flightgear.org/Downloads/world-scenery.html">http://flightgear.org/Downloads/world-scenery.html</a>.
321           </p>
322           <p>Also visit our <i>"Places to Fly"</i> section of the website
323           (<a href="http://flightgear.org/Places/">http://flightgear.org/Places/</a>)
324           for some help navigating to some awesome locations.</p>
325         </div>
326       
327         <b>
328       <a name="2.7">2.7 -
329     <u>Where can I get different 3D models for my plane?</u>
330       </a>
331     </b>
332         <div class="indent">
333           <p>While we are working toward building our own 3D models, we have
334           been given permission by several people to convert their models (which
335           where originally intended for use with <i>Microsoft Flight
336           Simulator</i>) to use with FlightGear.  See Wolfram's Hangar
337           (<a href="http://home.t-online.de/home/Wolfram.Kuss/">http://home.t-online.de/home/Wolfram.Kuss/</a>)
338           for a list of what we currently have available as well as
339           information on how to convert models yourself.</p>
340         </div>
341       
342         <b>
343       <a name="2.8">2.8 -
344     <u>How current is the data in FlightGear compared to the real world?</u>
345       </a>
346     </b>
347         <div class="indent">
348           <p>We use the same navaid and airport dataset that <i>X-Plane</i> uses.  The
349           current dataset can be found in the <code>$FGROOT/Navaids/</code> and
350           <code>$FGROOT/Airports/</code> directories.  If you have updates or
351           corrections to the dataset, see
352           <a href="http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html">http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html</a>
353           for instructions on contacting the database maintainer.</p>
354         </div>
355       
356         <b>
357       <a name="2.9">2.9 -
358     <u>Where is the moving map?</u>
359       </a>
360     </b>
361         <div class="indent">
362           <p>A popular moving map display is avaliable under a separate
363           project called <i>Atlas</i>.  See
364           <a href="http://atlas.sf.net/">http://atlas.sf.net/</a>.</p>
365         </div>
366       
367         <b>
368       <a name="2.10">2.10 -
369     <u>Why don't you charge money for this?</u>
370       </a>
371     </b>
372         <div class="indent">
373           <p>We could do that, since the initial download is about 25
374           megabytes.  Especially for people who have to pay per-minute charges
375           for internet access, buying a CD is a convenient and possibly
376           cheaper option.  Although we offer that service (see the website), we
377           encourage other groups to redistribute it for their users, especially
378           within an operating system distribution which makes installation even
379           faster and easier for new users.</p>
380         </div>
381       
382
383     <hr>
384     <h2>
385       <a name="3">3 -
386     Compiling</a>
387     </h2>
388         <b>
389       <a name="3.1">3.1 -
390     <u>Why won't FlightGear compile?</u>
391       </a>
392     </b>
393         <div class="indent">
394           <p>Well, that depends.  First make sure you are using the appropriate
395           versions of FlightGear, SimGear, plib, zlib.  If any of
396           the packages are out of sync with the others, compilation may fail.</p>
397           <p>The FlightGear <i>Downloads</i> page
398           (<a href="http://flightgear.org/Downloads/">http://flightgear.org/Downloads/</a>)
399           should tell you what versions you need if you are trying to compile
400           the latest stable release.  If you are using a development snapshot,
401           make sure all three packages are up-to-date.</p>
402           <p>Also ensure that you have some implementation of OpenGL with glut
403           support with the appropriate header files.  Linux users with nVidia
404           cards should make sure you have the latest drivers from nVidia.  Other
405           Linux users make sure you have Mesa3D
406           (<a href="http://mesa3d.org/">http://mesa3d.org/</a>)
407           and your X server installed correctly.  Windows users see
408           <a href="http://www.x-plane.com/SYSREQ/v5ibm.html">http://www.x-plane.com/SYSREQ/v5ibm.html</a>,
409           and Mac users see
410           <a href="http://www.x-plane.com/SYSREQ/v5mac.html">http://www.x-plane.com/SYSREQ/v5mac.html</a>.
411           </p>
412           <p>If your problems persist, subscribe to our FlightGear-Users mailing
413           list and let us know what problem you're having.  See
414           <a href="http://flightgear.org/mail.html">http://flightgear.org/mail.html</a> for help with this.
415           </p>
416         </div>
417       
418         <b>
419       <a name="3.2">3.2 -
420     <u>I'm using RedHat 7, and ...?</u>
421       </a>
422     </b>
423         <div class="indent">
424           <p>Update your gcc packages.  See
425           <a href="http://redhat.com/errata/">http://redhat.com/errata/</a>
426           to fix it and
427           <a href="http://www.gnu.org/software/gcc/gcc-2.96.html">http://www.gnu.org/software/gcc/gcc-2.96.html</a>
428           for an explanation why.</p>
429         </div>
430       
431
432     <hr>
433     <h2>
434       <a name="4">4 -
435     Configuring</a>
436     </h2>
437         <b>
438       <a name="4.1">4.1 -
439     <u>How do I install new scenery?</u>
440       </a>
441     </b>
442         <div class="indent">
443           <p>The scenery archive files (ie. w100n30.tar.gz) should be untarred
444           into the <code>Scenery/Terrain</code> directory in your
445           <code>$FG_ROOT</code>.</p>
446         </div>
447       
448         <b>
449       <a name="4.2">4.2 -
450     <u>How do I setup my joystick(s)?</u>
451       </a>
452     </b>
453         <div class="indent">
454           <p>FlightGear should come with a helpful program called <i>`fgjs`</i>
455           that can help configure your joystick.  Run <i>`fgjs`</i> and then
456           copy the dot file it created into your home directory or add its
457           contents to your existing rc file.</p>
458           <p>Also, see the README.Joystick file located in the
459           <code>FlightGear/docs-mini/</code> directory of the source
460           distribution.  This document is mirrored at
461           <a href="http://rockfish.net/fg/README.Joystick">http://rockfish.net/fg/README.Joystick</a>.
462           </p>
463         </div>
464       
465         <b>
466       <a name="4.3">4.3 -
467     <u>What format should my personal .fgfsrc file be in?</u>
468       </a>
469     </b>
470         <div class="indent">
471           <p>Your <code>.fgfsrc</code> file should simply be a list of
472           command-line options with one option per line.  The file is <b>not</b>
473           an XML file.</p>
474           <p>If you would rather use an XML configuration file, you can add
475           something like the following in your <code>.fgfsrc</code>
476       </p>
477           <p>
478         <code>--config=/path/to/my/config.xml</code>
479       </p>
480           <p>Almost every option corresponds to a property, so you can choose
481           to use whichever method best suits your needs.</p>
482         </div>
483       
484
485     <hr>
486     <h2>
487       <a name="5">5 -
488     Running</a>
489     </h2>
490         <b>
491       <a name="5.1">5.1 -
492     <u>Why do I get an error loading libopenal.so.0?</u>
493       </a>
494     </b>
495         <div class="indent">
496           <p>With the default installation, libopenal.so.0 is installed into
497           <code>/usr/local/lib</code>.  You need to ensure that that path is
498           listed in <code>/etc/ld.so.conf</code>, then run <i>`ldconfig`</i>as
499           root.</p>
500         </div>
501       
502         <b>
503       <a name="5.2">5.2 -
504     <u>Why do I get "ssgInit called without a valid OpenGL context"?</u>
505       </a>
506     </b>
507         <div class="indent">
508           <p>In short, your GL libraries are broken.  So far only Red Hat 7.x
509           users have experienced this (see
510           <a href="http://www.redhat.com/bugzilla/show_bug.cgi?id=18867">http://www.redhat.com/bugzilla/show_bug.cgi?id=18867</a>).
511           The only solutions are possibly complicated ones: you can either
512           change distributions (most of us prefer Debian) or upgrade/downgrade
513           your Mesa libs.</p>
514           <p>
515         <i>
516           <u>Why do some other GL applications work though?</u>
517         </i>  Well,
518           Steve Baker (Mr. PLIB) has explained this on the plib-users list
519           (<a href="http://www.geocrawler.com/lists/3/SourceForge/1867/0/6470648/">http://www.geocrawler.com/lists/3/SourceForge/1867/0/6470648/</a>).
520           </p>
521         </div>
522       
523         <b>
524       <a name="5.3">5.3 -
525     <u>What happened to the panel, keyboard, etc?</u>
526       </a>
527     </b>
528         <div class="indent">
529           <p>The problem is almost certainly that your base package is out of
530           sync with FlightGear.  Many configurable parts of FlightGear are
531           defined in XML files contained in the base package.</p>
532         </div>
533       
534         <b>
535       <a name="5.4">5.4 -
536     <u>Why doesn't audio work properly under Irix?</u>
537       </a>
538     </b>
539         <div class="indent">
540           <p>FlightGear (as of June 2001) uses the Portable Libraries (PLIB)
541           for playing audio. The audio queue implementation of PLIB is far from
542           optimal (in fact it's just wrong).  This seems to work on other
543           platforms quite well, but Irix expects things to be programmed
544           properly.</p>
545           <p>There has been discussion about using OpenAL
546           (<a href="http://www.openal.org/">http://www.openal.org/</a>)
547           for the next release of both PLIB and FlightGear.  Tests show that
548           the OpenAL audio implementation does the job right, meaning that
549           these audio problems should be gone by then. In the mean time it is
550           best to disable audio on Irix completely (by adding --disable-sound
551           either on the command line or to your <code>$HOME/.fgfsrc</code>
552           file).</p>
553         </div>
554       
555         <b>
556       <a name="5.5">5.5 -
557     <u>Why is FlightGear so slow?</u>
558       </a>
559     </b>
560         <div class="indent">
561           <p>FlightGear supports hardware acceleration, but it seems not to be
562           activated.  Make sure you have OpenGL libraries installed and
563           configured properly and make sure you have the latest drivers for your
564           video card.</p>
565           <p>
566         <b>Linux users</b>:  If you are an nVidia user, follow their
567           directions on getting your card working.  For most other users, make
568           sure Mesa is installed property and ensure that you have the
569           appropriate kernel device drivers for your card.  Most people (and
570           distributions) use modules for their video card device drivers; run
571           <i>`lsmod`</i> as root to see what modules are loaded.  You should also
572           make sure that you are loading the appropriate modules in your
573           XF86Config and that your video device section is correct.  Now try
574           running an OpenGL application (other than FlightGear) to see how it
575           performs.  You can try the <i>gears</i> demo from Mesa or something
576           like <i>Quake3</i>.</p>
577         </div>
578       
579         <b>
580       <a name="5.6">5.6 -
581     <u>Why is my SGI machine so slow?</u>
582       </a>
583     </b>
584         <div class="indent">
585           <p>First of all, one of the most common mistakes on SGI hardware is to
586           forget to specify --fog-fastest. On most SGI machines the EXP2 shading
587           model isn't hardware supported resulting in frame rates below 1 frame
588           per second (fps).</p>
589           <p>FlightGear makes extensive use of the OpenGL z-buffer feature,which
590           on most older SGI hardware is only supported in software. This means
591           that the CPU has to do all the z-buffer calculations in addition to the
592           other tasks FlightGear involves (flight dynamics, scenery tracking,
593           pushing commands into the graphics queue, etc).  The following features
594           are software rendered on low-end SGI machines (like Indy and
595           Indigo):</p>
596           <ul>
597             <li>stencil and accumulation buffer</li>
598             <li>depth queuing and depth buffering</li>
599             <li>fogging, lighting, clipping and transforms</li>
600             <li>texturing</li>
601           </ul>
602           <p>This means that running FlightGear with the following options may not
603           even get the desired result:</p>
604           <p>
605         <code>./runfgfs --fog-disable --shading-flat --disable-skyblend \</code>
606         <br>
607           <code>--disable-textures --disable-clouds --disable-sound \</code>
608         <br>
609           <code>--disable-panel --enable-hud --disable-anti-alias-hud</code>
610       </p>
611           <p>I could even imagine that adding --enable-wireframe doesn't work on
612           these machines (I would be happy to be proven wrong though).</p>
613           <p>On a machine like O2 the following options give an acceptable
614           result:</p>
615           <code>./runfgfs --fog-fastest --disable-sound</code>
616           <p>Since I don't have access to other SGI hardware I can't tell which
617           options would be appropriate for your situation.</p>
618         </div>
619       
620         <b>
621       <a name="5.7">5.7 -
622     <u>How do I see the frame rate?</u>
623       </a>
624     </b>
625         <div class="indent">
626           <p>There are two ways.  One way is to hide the panel without the HUD
627           showing.  To hide the panel, use <i>Shift+P</i>; To make the HUD
628           disappear, use <i>H</i>.  The second way is to use the alternative
629           HUD by <i>Shift+I</i> (Use <i>I</i> to switch back).</p>
630         </div>
631       
632         <b>
633       <a name="5.8">5.8 -
634     <u>Stuck upside down after "crash"?</u>
635       </a>
636     </b>
637         <div class="indent">
638           <p>In his infinite wisdom the FlightGear Grand Master decided that
639           planes were to valuable to allow them to be destroyed by novice pilots
640           who seemed to crash a lot.  The fact that nobody has bothered to model
641           crashes may have something to do with it too.  :-)</p>
642           <p>The result of this as you have noticed is that with a little
643           practice an ingenuity you can trim the ship to fly inverted along the
644           ground.</p>
645           <p>The quick answer is to hit Ctrl+U (with the default key bindings)
646           to warp the plane up 1000ft.</p>
647           <p>For the stubborn people out there:  The trick to learn is to roll
648           back to normal (non inverted) do this by nursing the elevator to get
649           to about 500 feet or so and use the ailerons to snap roll 180*.
650           This is all good avionics except for the plane not destroying
651           itself.  Remember the controls work in reverse when you are inverted
652           and keep that airspeed up!!!</p>
653         </div>
654       
655         <b>
656       <a name="5.9">5.9 -
657     <u>Why does FlightGear die on startup saying "time zone reading failed"?</u>
658       </a>
659     </b>
660         <div class="indent">
661           <p>This is probably caused by a line-ending problem in the timezone
662           files.  Win32 users can resolve the problem by downloading a DOS to
663           UNIX conversion utility available at
664           <a href="http://www.nottingham.ac.uk/~eazdluf/d2u.zip">http://www.nottingham.ac.uk/~eazdluf/d2u.zip</a>.
665           Run as `<i>d2u *.tab</i>` from within the timezone directory to fix
666           your timezone files.</p>
667         </div>
668       
669
670     <hr>
671     <h2>
672       <a name="6">6 -
673     Hacking</a>
674     </h2>
675         <b>
676       <a name="6.1">6.1 -
677     <u>What language is FlightGear written in?</u>
678       </a>
679     </b>
680         <div class="indent">
681           <p>Mostly C++ with some supporting C code that's primary contained
682           within SimGear.</p>
683         </div>
684       
685         <b>
686       <a name="6.2">6.2 -
687     <u>How do I design a flight dynamics model for a new aircraft?</u>
688       </a>
689     </b>
690         <div class="indent">
691           <p>To define an aircraft for FlightGear's primary FDM (JSBSIM),
692           see <a href="http://jsbsim.sf.net/">http://jsbsim.sf.net/</a>.</p>
693           <p>If you want a simpler FDM to work with, try your hand at YASim,
694           an alternative FDM.  For an guide on creating a YASim aircraft,
695           look in the FlightGear base package for
696           <code>Aircraft-yasim/README.yasim</code>.</p>
697         </div>
698       
699         <b>
700       <a name="6.3">6.3 -
701     <u>How do I import planes from Microsoft Flight Simulator?</u>
702       </a>
703     </b>
704         <div class="indent">
705           <p>You can import the 3D model and textures, but the flight dynamics
706           (the .AIR file) must be completely redone for FlightGear.  See
707           <a href="http://home.t-online.de/home/Wolfram.Kuss/">http://home.t-online.de/home/Wolfram.Kuss/</a>
708           for help importing .MDL files and textures.</p>
709           <p>If you wish to import a model made with gmax, you will need to
710           convert it to .MDL format using <i>Microsoft's MakeMDL SDK</i> which
711           is available at
712           <a href="http://zone.msn.com/flightsim/FS02DevDeskSDK08.asp">http://zone.msn.com/flightsim/FS02DevDeskSDK08.asp</a>.
713           </p>
714         </div>
715       
716         <b>
717       <a name="6.4">6.4 -
718     <u>How do I import BGL scenery from Microsoft Flight Simulator?</u>
719       </a>
720     </b>
721         <div class="indent">
722           <p>See
723           <a href="http://chiangt.virtualave.net/BGL/bgl_index.html">http://chiangt.virtualave.net/BGL/bgl_index.html</a>.
724           </p>
725         </div>
726       
727         <b>
728       <a name="6.5">6.5 -
729     <u>How do I design or modify a panel?</u>
730       </a>
731     </b>
732         <div class="indent">
733           <p>See the README.xmlpanel file located in the
734           <code>FlightGear/docs-mini/</code> directory of the source
735           distribution.  This document is mirrored at
736           <a href="http://rockfish.net/fg/README.xmlpanel">http://rockfish.net/fg/README.xmlpanel</a>.
737           </p>
738         </div>
739       
740         <b>
741       <a name="6.6">6.6 -
742     <u>How do I place objects, like buildings, into FlightGear?</u>
743       </a>
744     </b>
745         <div class="indent">
746           <p>First, ensure that you have v0.7.7 or later, the scenery files
747           where you plan to place the object, the actual model, and the
748           longitude and latitude where you plan to place the object.</p>
749           <p>Now get the altitude for your point.  If you don't want to
750           calculate this yourself, start FlightGear at your location and take
751           note of the altitude.  Here's an example command:</p>
752           <p>
753         <code>fgfs --lat=45.50 --lon=-75.73 2&gt;&amp;1 | tee fgfs.log</code>
754       </p>
755           <p>The altitude is probably in feet, so divide the starting altitude
756           by 3.28.</p>
757           <p>Search the output log file for the first occurrence of the string
758           "Loading tile" and take note of the filename.  In the above example,
759           the output line looks like:</p>
760           <p>
761         <code>Loading tile /usr/local/Scenery/w080n40/w076n45/1712601</code>
762       </p>
763           <p>Copy a 3D model in a format that Plib understands to the same
764           directory as the tile file.  Edit the text file in that directory
765           consisting of the tile name with the extension ".stg".  The file will
766           already exist if there is an airport on the tile; otherwise, you can
767           create it from scratch.  In our example, the filename is:</p>
768           <p>
769         <code>/usr/local/Scenery/w080n40/w076n45/1712601.stg</code>
770       </p>
771           <p>At the end of the file, add a new entry for your object,
772           consisting of the word "OBJECT_STATIC" followed by the model name,
773           the longitude in degrees, the latitude in degrees, the altitude in
774           meters, and the heading in degrees.  In our example the line looks
775           like:</p>
776           <p>
777         <code>OBJECT_STATIC Towerax.ac -75.73 45.40 60 0</code>
778       </p>
779           <p>Save the changes to the .stg file, restart FlightGear, and
780           enjoy.</p>
781           <p>NOTE: The above information was taken from the following mailing
782           list post:
783           <a href="http://www.geocrawler.com/archives/3/11854/2001/6/0/5991409/">http://www.geocrawler.com/archives/3/11854/2001/6/0/5991409/</a>.
784           See that page if this one doesn't make sense.</p>
785           <p>An alternative approach using PPE is described at
786           <a href="http://mail.flightgear.org/pipermail/flightgear-devel/2001-December/002239.html">http://mail.flightgear.org/pipermail/flightgear-devel/2001-December/002239.html</a>
787           by Norman Vine.</p>
788         </div>
789       
790         <b>
791       <a name="6.7">6.7 -
792     <u>Where can I learn 3D programming and how do I get involved?</u>
793       </a>
794     </b>
795         <div class="indent">
796           <p>Contributing to the 2D panel doesn't require any coding at all,
797           just a minimal knowledge of XML syntax (i.e. five minutes' worth)
798           and good skills with drawing and/or paint programs.  Every instrument
799           on the current panel, with the partial exception of the magnetic
800           compass, is defined entirely in XML with no custom C++  code.  If
801           you want to get started, take a look at John Check's excellent intro
802           (<a href="http://rockfish.net/fg/README.xmlpanel">http://rockfish.net/fg/README.xmlpanel</a>).
803           </p>
804           <p>Likewise, if you want to create a 3D cockpit for FlightGear, or to
805           create buildings, external aircraft models, etc., your help is
806           *desperately* needed.  The only rule is to go easy on the triangles
807           -- a model with 50,000 triangles probably won't be usable in
808           FlightGear, and one with 5,000 triangles, only marginally.  If you
809           can design a nice 3D cockpit interior for a Cessna 172 (for example)
810           in a 3D design program such as ac3D or ppe, we have coders who will
811           be happy to add the support code in the C++.</p>
812           <p>If, on the other hand, you really want to get your hands dirty
813           with C++ coding, you'll have to buy a good OpenGL book eventually.
814           However, FlightGear uses a high-level library, plib, that hides most 
815           of the details of OpenGL.  To get started with 3D C++ coding, you
816           can take a look at the plib documentation and learn only as much
817           OpenGL as you need, when you need it.</p>
818         </div>
819       
820         <b>
821       <a name="6.8">6.8 -
822     <u>How do I add an airport?</u>
823       </a>
824     </b>
825         <div class="indent">
826           <p>You can add your airport to the
827           <code>$FGROOT/Airports/default.apt.gz</code> file, but to get the
828           airport to show up visually, you will have to rebuild the scenery
829           around the airport.  The format of the default.apt file is
830           documented at
831           <a href="http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html">http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html</a>.</p>
832         </div>
833       
834         <b>
835       <a name="6.9">6.9 -
836     <u>How do I generate my own scenery?</u>
837       </a>
838     </b>
839         <div class="indent">
840           <p>Yes, though it can be a difficult task.  FlightGear's scenery
841           generation is handled by a sister project, TerraGear.  For more
842           details, see
843           <a href="http://terragear.org/">http://terragear.org/</a>.</p>
844         </div>
845       
846
847     <hr>
848     <h2>
849       <a name="7">7 -
850     Flying</a>
851     </h2>
852         <b>
853       <a name="7.1">7.1 -
854     <u>Where can I learn about instrument flying and navigation?</u>
855       </a>
856     </b>
857         <div class="indent">
858           <p>
859           <a href="http://www.navfltsm.addr.com/">http://www.navfltsm.addr.com/</a>
860           is a very good site for learning techniques for navigation.  Also see
861           <a href="http://www.monmouth.com/~jsd/how/">http://www.monmouth.com/~jsd/how/</a>.
862           </p>
863         </div>
864       
865         <b>
866       <a name="7.2">7.2 -
867     <u>What is the difference between Aileron and Rudder?</u>
868       </a>
869     </b>
870         <div class="indent">
871           <p>There is a bit of info on aileron vs. rudder here:
872           <a href="http://www.monmouth.com/~jsd/how/">http://www.monmouth.com/~jsd/how/</a>.
873           </p>
874         </div>
875       
876         <b>
877       <a name="7.3">7.3 -
878     <u>Is there support for multi-player flying?</u>
879       </a>
880     </b>
881         <div class="indent">
882           <p>We have an initial stab at this that is incomplete and only seems
883           to work under Linux.  We'd love to find someone to pick up the
884           slack here and develop this further.  Specifically, plib now has
885           some low level networking support for mult-player games.  It would
886           also be nice to develop support for the DIS protocol.</p>
887         </div>
888       
889         <b>
890       <a name="7.4">7.4 -
891     <u>Is there support for any military scenarios like dog fighting or bomb dropping?</u>
892       </a>
893     </b>
894         <div class="indent">
895           <p>No, not at this time.  Most of our developers are primarily
896           interested and focused on civilian aviation.  We aren't explicitly
897           excluding these features -- we just haven't had anyone who seriously
898           wanted to develop these areas.</p>
899         </div>
900       
901
902     <hr>
903     <h2>
904       <a name="8">8 -
905     FlightGear v0.7.6</a>
906     </h2>
907         <b>
908       <a name="8.1">8.1 -
909     <u>Why do I get an error in viewer.cxx about `exit' being undeclared?</u>
910       </a>
911     </b>
912         <div class="indent">
913           <p>This error cropped up after the release of v0.7.6.  To fix the
914           problem, add "<code>#include &lt;stdlib.h&gt;</code>" to the top of viewer.cxx.</p>
915         </div>
916       
917
918   
919 <hr noshade>
920     <a name="about">
921       <h2>About This Document</h2>
922     </a>
923     <b>FlightGear FAQ</b>
924     <br>$Revision$<br>$Date$<br>
925     <p>
926       <small>
927         This document generated from XML using
928         <a href="http://gingerall.com/charlie/ga/xml/p_sab.xml">Sablotron</a>.
929       </small>
930     </p>
931   </body>
932   <!-- vim: set ts=2 et nowrap: -->
933 </html>