https://wiki.flightgear.org/w/api.php?action=feedcontributions&user=Simstick&feedformat=atomFlightGear wiki - User contributions [en]2024-03-29T06:18:42ZUser contributionsMediaWiki 1.39.6https://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=12852OpenSceneGraph2009-05-25T22:22:09Z<p>Simstick: </p>
<hr />
<div>As of October 29th 2006, [[FlightGear]] has migrated from [[PLIB]] to '''OpenSceneGraph'''. [[FlightGear 1.9.0]], released Decemeber 22, 2008, marked the release of the OSG version of FlightGear.<br />
<br />
Thanks to Mathias Fröhlich and Tim Moore, we can use an current OpenSceneGraph SVN version <br />
<br />
[[Image:Flightgear uml associations class diagram.png|thumb|270px|An [[UML Diagrams|UML]] class diagram disclosing the associations between some classes of the FlightGear source code.]]<br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
'''Download the latest stable release '''<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
'''Various mirrors in case the main OSG site is down (frequently)'''<br />
<br />
http://www.freebsd.org/cgi/pds.cgi?ports/graphics/osg<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. Since OSG version 2.7.3 (8th Oct 2008) to build it there is a relatively new version of cmake needed. According to OSGs CMakeLists.txt it's 2.6.1 but cmake 2.6.0-5 from [http://backports.org/dokuwiki/doku.php backports.org] for Debian/Etch does the trick.<br />
It's also possible to comment out lines 25 to 27 in OSGs CMakeLists.txt:<br />
# if(POLICY CMP0008)<br />
# cmake_policy(SET CMP0008 OLD)<br />
# endif(POLICY CMP0008)<br />
<br />
<br />
A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
<br />
<br />
<br />
== Regressions in CVS/HEAD ==<br />
This section is meant to always remain up to date with the latest version in CVS/HEAD, please make sure to add/delete items as necessary.<br />
* feature to disable scenery rendering via /sim/rendering/draw-otw property is not working at the moment (11/2008)<br />
<br />
== Current issues (very out of date) ==<br />
<br />
* <strike>The 2D Panels and the rendering order of instruments ... is wrong.</strike><br />
<br />
* transparency issues:<br />
** <strike>runway lights shine through panel:</strike><br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* <strike>Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer</strike><br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED (<b>NOTE:</b> the list is out of date.)<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* <strike>3D clouds</strike> 3D clouds back thanks to Stuart Buchanan still have some visual artifacts<br />
<br />
* <strike>Rendering of some scenes is not perfect.</strike><br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscellaneous OSG benefits ==<br />
* Models and scenery load in a separate thread<br />
* Tree shaders allow "forests" of trees<br />
* Improved precipitation modeling<br />
* "Pick" animations enable greater realism and ease of creation for 3D cockpits<br />
* Multi-monitor views<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External link ==<br />
* http://www.openscenegraph.org/<br />
<br />
{{Building}}<br />
<br />
[[Category:Software]]</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=12851OpenSceneGraph2009-05-25T22:18:50Z<p>Simstick: Page not rendering correctly. Changing image location.</p>
<hr />
<div><br />
<br />
<br />
[[Image:Flightgear uml associations class diagram.png|thumb|270px|An [[UML Diagrams|UML]] class diagram disclosing the associations between some classes of the FlightGear source code.]]<br />
As of October 29th 2006, [[FlightGear]] has migrated from [[PLIB]] to '''OpenSceneGraph'''. [[FlightGear 1.9.0]], released Decemeber 22, 2008, marked the release of the OSG version of FlightGear.<br />
<br />
Thanks to Mathias Fröhlich and Tim Moore, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
'''Download the latest stable release '''<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
'''Various mirrors in case the main OSG site is down (frequently)'''<br />
<br />
http://www.freebsd.org/cgi/pds.cgi?ports/graphics/osg<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. Since OSG version 2.7.3 (8th Oct 2008) to build it there is a relatively new version of cmake needed. According to OSGs CMakeLists.txt it's 2.6.1 but cmake 2.6.0-5 from [http://backports.org/dokuwiki/doku.php backports.org] for Debian/Etch does the trick.<br />
It's also possible to comment out lines 25 to 27 in OSGs CMakeLists.txt:<br />
# if(POLICY CMP0008)<br />
# cmake_policy(SET CMP0008 OLD)<br />
# endif(POLICY CMP0008)<br />
<br />
<br />
A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
<br />
<br />
<br />
== Regressions in CVS/HEAD ==<br />
This section is meant to always remain up to date with the latest version in CVS/HEAD, please make sure to add/delete items as necessary.<br />
* feature to disable scenery rendering via /sim/rendering/draw-otw property is not working at the moment (11/2008)<br />
<br />
== Current issues (very out of date) ==<br />
<br />
* <strike>The 2D Panels and the rendering order of instruments ... is wrong.</strike><br />
<br />
* transparency issues:<br />
** <strike>runway lights shine through panel:</strike><br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* <strike>Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer</strike><br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED (<b>NOTE:</b> the list is out of date.)<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* <strike>3D clouds</strike> 3D clouds back thanks to Stuart Buchanan still have some visual artifacts<br />
<br />
* <strike>Rendering of some scenes is not perfect.</strike><br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscellaneous OSG benefits ==<br />
* Models and scenery load in a separate thread<br />
* Tree shaders allow "forests" of trees<br />
* Improved precipitation modeling<br />
* "Pick" animations enable greater realism and ease of creation for 3D cockpits<br />
* Multi-monitor views<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External link ==<br />
* http://www.openscenegraph.org/<br />
<br />
{{Building}}<br />
<br />
[[Category:Software]]</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=12450OpenSceneGraph2009-05-10T04:28:36Z<p>Simstick: /* The latest OSG version from svn */</p>
<hr />
<div>[[Image:Flightgear uml associations class diagram.png|thumb|A [[UML Diagrams|UML]] class diagram disclosing the associations between some classes of the FlightGear source code.]]<br />
<br />
__TOC__<br />
<br />
As of October 29th 2006, FlightGear has migrated from [[PLIB]] to OpenSceneGraph. [[FlightGear 1.9.0]], released Decemeber 22, 2008, marked the release of the OSG version of FlightGear.<br />
<br />
Thanks to Mathias Fröhlich and Tim Moore, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
'''Download the latest stable release '''<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
'''Various mirrors in case the main OSG site is down (frequently)'''<br />
<br />
http://www.freebsd.org/cgi/pds.cgi?ports/graphics/osg<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. Since OSG version 2.7.3 (8th Oct 2008) to build it there is a relatively new version of cmake needed. According to OSGs CMakeLists.txt it's 2.6.1 but cmake 2.6.0-5 from [http://backports.org/dokuwiki/doku.php backports.org] for Debian/Etch does the trick.<br />
It's also possible to comment out lines 25 to 27 in OSGs CMakeLists.txt:<br />
# if(POLICY CMP0008)<br />
# cmake_policy(SET CMP0008 OLD)<br />
# endif(POLICY CMP0008)<br />
<br />
<br />
A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
<br />
<br />
<br />
== Regressions in CVS/HEAD ==<br />
This section is meant to always remain up to date with the latest version in CVS/HEAD, please make sure to add/delete items as necessary.<br />
* feature to disable scenery rendering via /sim/rendering/draw-otw property is not working at the moment (11/2008)<br />
<br />
== Current issues (very out of date) ==<br />
<br />
* <strike>The 2D Panels and the rendering order of instruments ... is wrong.</strike><br />
<br />
* transparency issues:<br />
** <strike>runway lights shine through panel:</strike><br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* <strike>Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer</strike><br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED (<b>NOTE:</b> the list is out of date.)<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* <strike>3D clouds</strike> 3D clouds back thanks to Stuart Buchanan still have some visual artifacts<br />
<br />
* <strike>Rendering of some scenes is not perfect.</strike><br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscellaneous OSG benefits ==<br />
* Models and scenery load in a separate thread<br />
* Tree shaders allow "forests" of trees<br />
* Improved precipitation modeling<br />
* "Pick" animations enable greater realism and ease of creation for 3D cockpits<br />
* Multi-monitor views<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External links ==<br />
http://www.openscenegraph.org/<br />
<br />
{{Building}}<br />
[[Category:Software]]</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=12449OpenSceneGraph2009-05-10T04:25:19Z<p>Simstick: add line space</p>
<hr />
<div>[[Image:Flightgear uml associations class diagram.png|thumb|A [[UML Diagrams|UML]] class diagram disclosing the associations between some classes of the FlightGear source code.]]<br />
<br />
__TOC__<br />
<br />
As of October 29th 2006, FlightGear has migrated from [[PLIB]] to OpenSceneGraph. [[FlightGear 1.9.0]], released Decemeber 22, 2008, marked the release of the OSG version of FlightGear.<br />
<br />
Thanks to Mathias Fröhlich and Tim Moore, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
'''Download the latest stable release '''<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
Various mirrors in case the main OSG site is down (frequently)<br />
<br />
http://www.freebsd.org/cgi/pds.cgi?ports/graphics/osg<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. Since OSG version 2.7.3 (8th Oct 2008) to build it there is a relatively new version of cmake needed. According to OSGs CMakeLists.txt it's 2.6.1 but cmake 2.6.0-5 from [http://backports.org/dokuwiki/doku.php backports.org] for Debian/Etch does the trick.<br />
It's also possible to comment out lines 25 to 27 in OSGs CMakeLists.txt:<br />
# if(POLICY CMP0008)<br />
# cmake_policy(SET CMP0008 OLD)<br />
# endif(POLICY CMP0008)<br />
<br />
<br />
A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
<br />
<br />
<br />
== Regressions in CVS/HEAD ==<br />
This section is meant to always remain up to date with the latest version in CVS/HEAD, please make sure to add/delete items as necessary.<br />
* feature to disable scenery rendering via /sim/rendering/draw-otw property is not working at the moment (11/2008)<br />
<br />
== Current issues (very out of date) ==<br />
<br />
* <strike>The 2D Panels and the rendering order of instruments ... is wrong.</strike><br />
<br />
* transparency issues:<br />
** <strike>runway lights shine through panel:</strike><br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* <strike>Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer</strike><br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED (<b>NOTE:</b> the list is out of date.)<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* <strike>3D clouds</strike> 3D clouds back thanks to Stuart Buchanan still have some visual artifacts<br />
<br />
* <strike>Rendering of some scenes is not perfect.</strike><br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscellaneous OSG benefits ==<br />
* Models and scenery load in a separate thread<br />
* Tree shaders allow "forests" of trees<br />
* Improved precipitation modeling<br />
* "Pick" animations enable greater realism and ease of creation for 3D cockpits<br />
* Multi-monitor views<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External links ==<br />
http://www.openscenegraph.org/<br />
<br />
{{Building}}<br />
[[Category:Software]]</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=12448OpenSceneGraph2009-05-10T04:24:41Z<p>Simstick: added section to add mirror url's for OSG source /* The latest OSG version from svn */</p>
<hr />
<div>[[Image:Flightgear uml associations class diagram.png|thumb|A [[UML Diagrams|UML]] class diagram disclosing the associations between some classes of the FlightGear source code.]]<br />
<br />
__TOC__<br />
<br />
As of October 29th 2006, FlightGear has migrated from [[PLIB]] to OpenSceneGraph. [[FlightGear 1.9.0]], released Decemeber 22, 2008, marked the release of the OSG version of FlightGear.<br />
<br />
Thanks to Mathias Fröhlich and Tim Moore, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
'''Download the latest stable release '''<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
Various mirrors in case the main OSG site is down (frequently)<br />
http://www.freebsd.org/cgi/pds.cgi?ports/graphics/osg<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. Since OSG version 2.7.3 (8th Oct 2008) to build it there is a relatively new version of cmake needed. According to OSGs CMakeLists.txt it's 2.6.1 but cmake 2.6.0-5 from [http://backports.org/dokuwiki/doku.php backports.org] for Debian/Etch does the trick.<br />
It's also possible to comment out lines 25 to 27 in OSGs CMakeLists.txt:<br />
# if(POLICY CMP0008)<br />
# cmake_policy(SET CMP0008 OLD)<br />
# endif(POLICY CMP0008)<br />
<br />
<br />
A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="${MY_PREFIX}" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
<br />
<br />
<br />
== Regressions in CVS/HEAD ==<br />
This section is meant to always remain up to date with the latest version in CVS/HEAD, please make sure to add/delete items as necessary.<br />
* feature to disable scenery rendering via /sim/rendering/draw-otw property is not working at the moment (11/2008)<br />
<br />
== Current issues (very out of date) ==<br />
<br />
* <strike>The 2D Panels and the rendering order of instruments ... is wrong.</strike><br />
<br />
* transparency issues:<br />
** <strike>runway lights shine through panel:</strike><br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* <strike>Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer</strike><br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED (<b>NOTE:</b> the list is out of date.)<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* <strike>3D clouds</strike> 3D clouds back thanks to Stuart Buchanan still have some visual artifacts<br />
<br />
* <strike>Rendering of some scenes is not perfect.</strike><br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscellaneous OSG benefits ==<br />
* Models and scenery load in a separate thread<br />
* Tree shaders allow "forests" of trees<br />
* Improved precipitation modeling<br />
* "Pick" animations enable greater realism and ease of creation for 3D cockpits<br />
* Multi-monitor views<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External links ==<br />
http://www.openscenegraph.org/<br />
<br />
{{Building}}<br />
[[Category:Software]]</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Building_FlightGear_-_Linux&diff=10864Building FlightGear - Linux2009-03-03T21:00:52Z<p>Simstick: "change compiled in one shoot " to "one shot"</p>
<hr />
<div>__TOC__<br />
<br />
This section describes how to build FlightGear on Linux system.<br />
<br />
Compiling FlightGear is not a task for novice users. Thus, if you're a beginner (we all were once) on a platform which binaries are available for, we recommend postponing this task and just starting with the binary distribution to get you flying.<br />
<br />
'''October 29th 2006, Flightgear CVS MAIN Branch switched to OSG support.'''<br />
Plib support remains available in CVS using PRE_OSG_PLIB_20061029 Branch.<br />
(cvs up -rPRE_OSG_PLIB_20061029)<br />
<br />
== Requirements ==<br />
Before you can compile FlightGear, you need to have the following installed on your computer:<br />
<br />
'''C++ compiler'''<br />
<br />
These are: c++, cpp, gcc, g++ found under the /usr/bin directory. You will also need to have the tools '''autoconf''' and '''automake1.9''' installed.<br />
<br />
'''CVS'''<br />
<br />
Yes, the program is called 'CVS'. This is used for downloading the latest set of source code. Windows developers may wish to see [[Using TortoiseCVS with FlightGear]].<br />
<br />
'''[[OpenGL]] support'''<br />
<br />
More specifically, your system needs the support for hardware accelerated graphics. You can check for this by running the following in a [[command line]]:<br />
<br />
glxinfo | grep direct<br />
<br />
Note: To run the above command, you need to have the tool '''mesa-utils''' installed.<br />
<br />
You should then see:<br />
<br />
direct rendering: Yes<br />
<br />
This means you are good to go as far as OpenGL support is concerned.<br />
<br />
If you see:<br />
<br />
direct rendering: No<br />
<br />
Don't panic yet. This may just mean some required libraries for hardware accelerated graphic are missing. Go ahead and try installing plib1.8.4 and its dependencies first. If you still get the above message, then you will need to do some googling and troubleshoot yourself.<br />
<br />
== Dependencies ==<br />
FlightGear is dependent on quite a few number of libraries. You do not need to compile all of them yourself, but you will at least need to have their development version installed. For example, the development version for package plib1.8.5 is plib1.8.5'''-dev'''.<br />
<br />
The dependency is summarized in the following tree. Please note that each library has its own dependencies, and most of these are not shown here.<br />
<br />
* FlightGear<br />
** [http://openal.org OpenAL and ALUT]<br />
** SimGear<br />
*** [http://plib.sourceforge.net/ PLIB] (until version 0.9.10 release sources, PRE_OSG_PLIB_20061029 CVS branch). Since march 2008, you will need version 1.8.5 - your distro probably supplies 1.8.4 still.<br />
**** For versions pre march/2008: (Free)GLUT or SDL (We recommend the use of SDL over Free/GLUT, [http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg16153.html however since march 2008, FreeGLUT as well as SDL are both considered depreciated in CVS/HEAD, please only use --enable-osgviewer during configuration instead]) <br />
*** [[ OpenSceneGraph ]] (svn trunk)<br />
**** libfreetype6-dev<br />
**** libjpeg62-dev<br />
**** libungif4-dev<br />
**** libtiff4-dev<br />
**** libpng12-dev<br />
**** libxmu-dev<br />
**** libxi-dev<br />
<br />
If you attack the above dependencies in the order listed below, you should be good:<br />
<br />
1. Glut. Most distributions include glut packages, although you may have to hunt for them. Make sure you install both the glut and glut-devel packages, otherwise FlightGear may be able to compile but won't run correctly.<br />
<br />
2. Zlib. Most distributions install the basic zlib libraries by default, but not the development portions. If you don't have zlib.h, you probably need to install the zlib-devel package for your distribution. <br />
<br />
3. Plib - portability libraries and scene graph. <br />
<br />
4. [[ OpenSceneGraph ]]<br />
<br />
5. SimGear - Simulation support libraries. If you are building FlightGear from CVS, you need the CVS version of SimGear. If you have strange build errors, one of the first things to check is that you have an up-to-date version of SimGear built and installed.<br />
<br />
==== APT-GET List ====<br />
This is a list of all the apt-get commands I had to do while compiling FG, SG, and OSG on a mostly clean Ubuntu 64 system. It is a list of all the libraries you and your computer needs to compile FG, SG, OSG, and PLib. All you have to do is copy the full command, paste it in Terminal, enter your password, and it will download all the packages for you, and install them too. The full command is at the bottom, and I hope someone finds it useful :) sub-dependencies (dependencies of the dependencies) are not included as they are installed automatically by apt-get. If anyone sees something missing, please add it.<br />
<br />
cvs - to get SG and FG <br><br />
subversion - to get OSG <br><br />
build-essential - to build (includes GCC, and other build tools) <br><br />
cmake - OSG Uses this <br><br />
libpng-dev - to enable FG to use PNG textures<br><br />
libfreetype6-dev - fonts<br><br />
libjpeg-dev<br><br />
libungif4-dev<br><br />
libtiff-dev<br><br />
libxmu-dev<br><br />
libxi-dev<br><br />
libalut-dev - sound<br><br />
libboost-dev - makes coding for some developers easier<br><br />
automake - needed by ./autogen.sh files<br><br />
autoconf - needed by ./autogen.sh files<br><br />
libfltk1.1-dev - You will need this if you will be using FGRun<br><br />
-----------<br />
<pre><br />
sudo apt-get install cvs subversion build-essential cmake libpng-dev libfreetype6-dev libjpeg-dev libungif4-dev libtiff-dev libxmu-dev libxi-dev<br />
libalut-dev libboost-dev automake autoconf libfltk1.1-dev<br />
</pre><br />
-----------<br />
Total size is about 230 MB, depending on what you already have from other applications.<br />
<br />
This list might seem a bit short, but the sub-dependencies all add up :) The dependencies will be listed by apt-get when you use the command.<br />
<br />
== Compiling ==<br />
Assuming you are root, do:<br />
cd /usr/local/src<br />
<br />
<b>Note:</b> When tracking a fast changing software like FlightGear/CVS it is highly advisable to install it in a separate directory. That way one can also easily build and reinstall without being root, which greatly reduces the risk of messing up one's system.<br />
To install in a directory of your choice add the <tt>--prefix</tt> argument to configure. E.g. <tt>./configure --prefix=$HOME/FlightGear</tt>. I would recommend installing all of OSG, plib, SimGear and FlightGear with the same prefix.<br />
<br />
=== Getting and compiling SimGear ===<br />
<br />
'''Step 1:'''<br />
<br />
Login to the cvs server and checkout the latest version of SimGear's source code with:<br />
cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login<br />
CVS passwd: guest<br />
<br />
cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source<br />
<br />
'''Step 2:'''<br />
<br />
Since all the source code will be downloaded into a directory called '''source''', you will need to rename the directory into something more meaningful.<br />
<br />
Rename the above directory by doing:<br />
mv source simgear<br />
<br />
Next, go into the directory and make preparations for the compilation:<br />
cd simgear<br />
./autogen.sh<br />
./configure<br />
<br />
Note that if you don't want to install simgear globally on the system but in a specific directory, you can do so by adding --prefix=/path/to/your/fgInstallation to the ./configure command<br />
<br />
'''Step 3:'''<br />
<br />
Compile and install SimGear by doing:<br />
make; make install.<br />
<br />
<br />
''Note:'' with gcc 4.2 or later,on some platforms, you can get compiling errors about alc.h like: <br />
<br />
'<anonymous>' has incomplete type <br />
take a look at http://bugs.gentoo.org/166723<br />
<br />
=== Getting and compiling FlightGear ===<br />
<br />
'''Step 1:'''<br />
<br />
To login to the cvs version and checkout the latest version of Flightgear's source code, use:<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login<br />
CVS passwd: guest<br />
<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co source<br />
<br />
A directory with the name '''source''' will then be created with all of Flightgear's source code downloaded into it.<br />
<br />
'''Step 2:'''<br />
<br />
To rename the above directory, use the following command:<br />
mv source flightgear<br />
<br />
Next, go into the folder and make preparations for the compilation:<br />
cd flightgear<br />
./autogen.sh<br />
./configure<br />
<br />
Note that if you don't want to install simgear globally on the system but in a specific directory, you can do so by adding --prefix=/path/to/your/fgInstallation to the ./configure command.<br />
If you are building the OSG-version of FlightGear and didn't install OSG globally, you have to pass the OSG directory to the configure-command like this:<br />
./configure --prefix=/path/to/fgInstallation --with-osg=/path/to/osg/source/build.osg --enable-osgviewer<br />
In this case you have to tell your system where to find the OSG libraries before you can run flightgear:<br />
export LD_LIBRARY_PATH=/path/to/fgInstallation/lib:$LD_LIBRARY_PATH<br />
<br />
'''Step 3:'''<br />
<br />
Now you can compile and install Flightgear by:<br />
make; make install<br />
<br />
'''Step 4:'''<br />
<br />
Get the data directory:<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co data<br />
<br />
And install it in (or as) /usr/local/share/FlightGear<br />
mv data /usr/local/share/FlightGear<br />
<br />
== Ubuntu and Debian users ==<br />
If you wish you can use the [[Scripted_Compilation_on_Linux_Debian/Ubuntu]] script to have Flightgear compiled in one shot under both Ubuntu and Debian systems.<br />
<br />
== External links ==<br />
=== Instructions ===<br />
* [[ MSYS ]]<br />
* [[ MinGW/cross-compiler ]]<br />
* [[ CodeBlocks IDE ]]<br />
* [[ OpenSUSE 10.1 10.2 ]]<br />
* [http://www.geoffmclane.com/fg/fgmsvc7.htm MSVC7 *.Net]<br />
* [http://www.oflebbe.de/oflebbe/FlightGear/index.html MSVC8 aka Visual 2005]<br />
* [http://macflightgear.sourceforge.net/home/documents/ Mac OS X (0.9.10 and CVS)]<br />
<br />
{{Building}}<br />
<br />
''If you are lost see [[Portal:User]] or [[Portal:Developer]]''</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Building_FlightGear_-_Linux&diff=10743Building FlightGear - Linux2009-02-22T13:33:26Z<p>Simstick: Inserted a space between words</p>
<hr />
<div>__TOC__<br />
<br />
This section describes how to build FlightGear on Linux system.<br />
<br />
Compiling FlightGear is not a task for novice users. Thus, if you're a beginner (we all were once) on a platform which binaries are available for, we recommend postponing this task and just starting with the binary distribution to get you flying.<br />
<br />
'''October 29th 2006, Flightgear CVS MAIN Branch switched to OSG support.'''<br />
Plib support remains available in CVS using PRE_OSG_PLIB_20061029 Branch.<br />
(cvs up -rPRE_OSG_PLIB_20061029)<br />
<br />
== Requirements ==<br />
Before you can compile FlightGear, you need to have the following installed on your computer:<br />
<br />
'''C++ compiler'''<br />
<br />
These are: c++, cpp, gcc, g++ found under the /usr/bin directory. You will also need to have the tools '''autoconf''' and '''automake1.9''' installed.<br />
<br />
'''CVS'''<br />
<br />
Yes, the program is called 'CVS'. This is used for downloading the latest set of source code. Windows developers may wish to see [[Using TortoiseCVS with FlightGear]].<br />
<br />
'''[[OpenGL]] support'''<br />
<br />
More specifically, your system needs the support for hardware accelerated graphics. You can check for this by running the following in a [[command line]]:<br />
<br />
glxinfo | grep direct<br />
<br />
Note: To run the above command, you need to have the tool '''mesa-utils''' installed.<br />
<br />
You should then see:<br />
<br />
direct rendering: Yes<br />
<br />
This means you are good to go as far as OpenGL support is concerned.<br />
<br />
If you see:<br />
<br />
direct rendering: No<br />
<br />
Don't panic yet. This may just mean some required libraries for hardware accelerated graphic are missing. Go ahead and try installing plib1.8.4 and its dependencies first. If you still get the above message, then you will need to do some googling and troubleshoot yourself.<br />
<br />
== Dependencies ==<br />
FlightGear is dependent on quite a few number of libraries. You do not need to compile all of them yourself, but you will at least need to have their development version installed. For example, the development version for package plib1.8.5 is plib1.8.5'''-dev'''.<br />
<br />
The dependency is summarized in the following tree. Please note that each library has its own dependencies, and most of these are not shown here.<br />
<br />
* FlightGear<br />
** [http://openal.org OpenAL and ALUT]<br />
** SimGear<br />
*** [http://plib.sourceforge.net/ PLIB] (until version 0.9.10 release sources, PRE_OSG_PLIB_20061029 CVS branch). Since march 2008, you will need version 1.8.5 - your distro probably supplies 1.8.4 still.<br />
**** For versions pre march/2008: (Free)GLUT or SDL (We recommend the use of SDL over Free/GLUT, [http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg16153.html however since march 2008, FreeGLUT as well as SDL are both considered depreciated in CVS/HEAD, please only use --enable-osgviewer during configuration instead]) <br />
*** [[ OpenSceneGraph ]] (svn trunk)<br />
**** libfreetype6-dev<br />
**** libjpeg62-dev<br />
**** libungif4-dev<br />
**** libtiff4-dev<br />
**** libpng12-dev<br />
**** libxmu-dev<br />
**** libxi-dev<br />
<br />
If you attack the above dependencies in the order listed below, you should be good:<br />
<br />
1. Glut. Most distributions include glut packages, although you may have to hunt for them. Make sure you install both the glut and glut-devel packages, otherwise FlightGear may be able to compile but won't run correctly.<br />
<br />
2. Zlib. Most distributions install the basic zlib libraries by default, but not the development portions. If you don't have zlib.h, you probably need to install the zlib-devel package for your distribution. <br />
<br />
3. Plib - portability libraries and scene graph. <br />
<br />
4. [[ OpenSceneGraph ]]<br />
<br />
5. SimGear - Simulation support libraries. If you are building FlightGear from CVS, you need the CVS version of SimGear. If you have strange build errors, one of the first things to check is that you have an up-to-date version of SimGear built and installed.<br />
<br />
==== APT-GET List ====<br />
This is a list of all the apt-get commands I had to do while compiling FG, SG, and OSG on a mostly clean Ubuntu 64 system. It is a list of all the libraries you and your computer needs to compile FG, SG, OSG, and PLib. All you have to do is copy the full command, paste it in Terminal, enter your password, and it will download all the packages for you, and install them too. The full command is at the bottom, and I hope someone finds it useful :) sub-dependencies (dependencies of the dependencies) are not included as they are installed automatically by apt-get. If anyone sees something missing, please add it.<br />
<br />
cvs - to get SG and FG <br><br />
subversion - to get OSG <br><br />
build-essential - to build (includes GCC, and other build tools) <br><br />
cmake - OSG Uses this <br><br />
libpng-dev - to enable FG to use PNG textures<br><br />
libfreetype6-dev - fonts<br><br />
libjpeg-dev<br><br />
libungif4-dev<br><br />
libtiff-dev<br><br />
libxmu-dev<br><br />
libxi-dev<br><br />
libalut-dev - sound<br><br />
libboost-dev - makes coding for some developers easier<br><br />
automake - needed by ./autogen.sh files<br><br />
autoconf - needed by ./autogen.sh files<br><br />
libfltk1.1-dev - You will need this if you will be using FGRun<br><br />
-----------<br />
<pre><br />
sudo apt-get install cvs subversion build-essential cmake libpng-dev libfreetype6-dev libjpeg-dev libungif4-dev libtiff-dev libxmu-dev libxi-dev<br />
libalut-dev libboost-dev automake autoconf libfltk1.1-dev<br />
</pre><br />
-----------<br />
Total size is about 230 MB, depending on what you already have from other applications.<br />
<br />
This list might seem a bit short, but the sub-dependencies all add up :) The dependencies will be listed by apt-get when you use the command.<br />
<br />
== Compiling ==<br />
Assuming you are root, do:<br />
cd /usr/local/src<br />
<br />
<b>Note:</b> When tracking a fast changing software like FlightGear/CVS it is highly advisable to install it in a separate directory. That way one can also easily build and reinstall without being root, which greatly reduces the risk of messing up one's system.<br />
To install in a directory of your choice add the <tt>--prefix</tt> argument to configure. E.g. <tt>./configure --prefix=$HOME/FlightGear</tt>. I would recommend installing all of OSG, plib, SimGear and FlightGear with the same prefix.<br />
<br />
=== Getting and compiling SimGear ===<br />
<br />
'''Step 1:'''<br />
<br />
Login to the cvs server and checkout the latest version of SimGear's source code with:<br />
cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login<br />
CVS passwd: guest<br />
<br />
cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source<br />
<br />
'''Step 2:'''<br />
<br />
Since all the source code will be downloaded into a directory called '''source''', you will need to rename the directory into something more meaningful.<br />
<br />
Rename the above directory by doing:<br />
mv source simgear<br />
<br />
Next, go into the directory and make preparations for the compilation:<br />
cd simgear<br />
./autogen.sh<br />
./configure<br />
<br />
Note that if you don't want to install simgear globally on the system but in a specific directory, you can do so by adding --prefix=/path/to/your/fgInstallation to the ./configure command<br />
<br />
'''Step 3:'''<br />
<br />
Compile and install SimGear by doing:<br />
make; make install.<br />
<br />
<br />
''Note:'' with gcc 4.2 or later,on some platforms, you can get compiling errors about alc.h like: <br />
<br />
'<anonymous>' has incomplete type <br />
take a look at http://bugs.gentoo.org/166723<br />
<br />
=== Getting and compiling FlightGear ===<br />
<br />
'''Step 1:'''<br />
<br />
To login to the cvs version and checkout the latest version of Flightgear's source code, use:<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login<br />
CVS passwd: guest<br />
<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co source<br />
<br />
A directory with the name '''source''' will then be created with all of Flightgear's source code downloaded into it.<br />
<br />
'''Step 2:'''<br />
<br />
To rename the above directory, use the following command:<br />
mv source flightgear<br />
<br />
Next, go into the folder and make preparations for the compilation:<br />
cd flightgear<br />
./autogen.sh<br />
./configure<br />
<br />
Note that if you don't want to install simgear globally on the system but in a specific directory, you can do so by adding --prefix=/path/to/your/fgInstallation to the ./configure command.<br />
If you are building the OSG-version of FlightGear and didn't install OSG globally, you have to pass the OSG directory to the configure-command like this:<br />
./configure --prefix=/path/to/fgInstallation --with-osg=/path/to/osg/source/build.osg --enable-osgviewer<br />
In this case you have to tell your system where to find the OSG libraries before you can run flightgear:<br />
export LD_LIBRARY_PATH=/path/to/fgInstallation/lib:$LD_LIBRARY_PATH<br />
<br />
'''Step 3:'''<br />
<br />
Now you can compile and install Flightgear by:<br />
make; make install<br />
<br />
'''Step 4:'''<br />
<br />
Get the data directory:<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co data<br />
<br />
And install it in (or as) /usr/local/share/FlightGear<br />
mv data /usr/local/share/FlightGear<br />
<br />
== External links ==<br />
=== Instructions ===<br />
* [[ MSYS ]]<br />
* [[ MinGW/cross-compiler ]]<br />
* [[ CodeBlocks IDE ]]<br />
* [[ OpenSUSE 10.1 10.2 ]]<br />
* [http://www.geoffmclane.com/fg/fgmsvc7.htm MSVC7 *.Net]<br />
* [http://www.oflebbe.de/oflebbe/FlightGear/index.html MSVC8 aka Visual 2005]<br />
* [http://macflightgear.sourceforge.net/home/documents/ Mac OS X (0.9.10 and CVS)]<br />
<br />
{{Building}}<br />
<br />
''If you are lost see [[Portal:User]] or [[Portal:Developer]]''</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Howto:Translate_FlightGear&diff=4839Howto:Translate FlightGear2008-01-03T01:17:12Z<p>Simstick: minor edit of grammar and usage</p>
<hr />
<div>===Introduction===<br />
This is a how-to that explains translating FlightGear's menus and messages to your language.<br />
<br />
Flightgear has bad I18N (internationalization) support.<br />
More information here :<br />
http://www.mail-archive.com/flightgear-users@lists.sourceforge.net/msg05761.html<br />
<br />
WARNING :<br />
You can only use [http://en.wikipedia.org/w/index.php?title=American_Standard_Code_for_Information_Interchange&section=5#ASCII_printable_characters ASCII] characters for translating strings in your language.<br />
<br />
== The How to ==<br />
<br />
1) You need to have flightgear installed on your computer<br />
For example : Flightgear on Windows is in the directory :<br />
C:\Program Files\FlightGear-1.0.0<br />
<br />
Strings to translate are between the XML tags <label> and <legend>.<br />
<br />
2) You need to translate the english strings in the xml file C:\Program Files\FlightGear-1.0.0\data\gui\menubar.xml <br />
For exemple, in the file menubar.xml, <br />
the english text string <label>Save</label><br />
will become <label>Sauvegarder</label> in french<br />
<br />
3) You need to translate the english strings in the xml files that are in<br />
the directory C:\Program Files\FlightGear-1.0.0\data\gui\dialogs<br />
<br />
4a)Create a copy of the file C:\Program Files\FlightGear-1.0.0\data\Translations\strings-default.xml in the directory C:\Program Files\FlightGear-1.0.0\data\Translations<br />
<br />
4b)Rename the copy of the file strings-default.xml with a new name like strings-language_code.xml where language_code is the international code for your language.<br />
For example , fr for french or de for german.<br />
<br />
5)Translate all the english text strings in your strings-language_code.xml file in your language.<br />
<br />
6) Edit the file C:\Program Files\FlightGear-1.0.0\data\Translations\locale.xml<br />
and add the section for your language :<br />
<br />
<locale><br />
<lang type="string">language_code</lang><br />
<lang type="string">language_code.character_set</lang><br />
<strings>Translations/strings-language_code.xml</strings><br />
</locale><br />
<br />
For example, in german, you have this :<br />
<locale><br />
<lang type="string">de</lang><br />
<lang type="string">de_AT</lang><br />
<lang type="string">de_CH</lang><br />
<lang type="string">de_AT.ISO8859-15</lang><br />
<lang type="string">de_DE.ISO8859-15</lang><br />
<lang type="string">de_CH.ISO8859-15</lang><br />
<strings>Translations/strings-de.xml</strings><br />
</locale></div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Howto:Multiplayer&diff=4825Howto:Multiplayer2007-12-30T14:46:00Z<p>Simstick: del mserver05 references. web page announces it will close down on 12/21/07.</p>
<hr />
<div>= Using the Windows launcher / fgrun =<br />
Select your [[aircraft]] and starting airport as normal. On the next screen, tick the "Multiplayer" box. Also tick the "AI models" box or you will not be able to see the other pilots' aircraft. Enter the callsign of your choice, enter mpserver01.flightgear.org in the "Hostname" box and 5000 into both the "in" and "out" boxes. Click run and you'll soon be flying with other pilots!<br />
<br />
To confirm that it's working, you can go to the multiplayer map at; http://mpmap02.flightgear.org/ (in Hong Kong).<br />
You will also notice chat messages that say "Hello" indicating pilots that are online and then as they join. <br />
[[Image:Multiplayer.jpg|thumb|300px|Multiplayer options in [[FlightGear Wizard|FG Launcher]]]]<br />
You may wish to use a different server (i.e. "Hostname" entry); <br />
<br />
mpserver01.flightgear.org (in Germany)<br />
mpserver02.flightgear.org (in Hong Kong) [T]<br />
mpserver03.flightgear.org (in Germany) [T]<br />
mpserver04.flightgear.org (UK)<br />
mpserver06.flightgear.org (Sweden)<br />
<br />
Servers marked with [T] above log all flights in the [http://fgfs.i-net.hu/modules/fgtracker/ FlighGear flight tracker].<br />
<br />
'''Please Note:''' The multiplayer servers are interconnected; you '''do not''' need to connect to a specific server in order to see other pilots who are on that server. For best performance, you should connect to the server that is geographically closest to you or has the lowest latency (ping time).<br />
[[Image:MP_Server.jpg|thumb|300px]]<br />
<br />
= Multiplayer Chat =<br />
<br />
To chat with other pilots, go to the "View" menu and select "Chat" at the bottom of the menu. Note that the other pilots may not have their chat box open, so they may not see your messages.<br />
NOTE: Multiplayer chat is not supported by FlightGear 0.9.10 or older.<br />
<br />
= Using fgfs from the command line =<br />
<br />
First, for those who are very impatient and have a vague idea about what they're doing, the basic arguments to pass to fgfs for multiplayer are these;<br />
<br />
--multiplay=out,10,server.ip.address,portnumber<br />
--multiplay=in,10,your.ip.address,portnumber<br />
--callsign=anything <br />
<br />
Where portnumber is usually 5000 or 5002 and your.ip.address is the ip address of the network interface being used by FG to connect to the server - even if that's a local 192.168 type address. Please note that although this limitation has been removed in the most recent versions of the FG server; you should still specify a valid (non-loopback, i.e. not 127.0.0.1) IP address to keep the FG client happy.<br />
<br />
Port 5000 is usually for the latest stable version of FlightGear. Currently 0.9.10<br />
<br />
Port 5002 is mainly used for development, i.e. stable version of FlightGear might or might not work with this server, depending on the server's development stage.<br />
<br />
== Now, going more slowly for those who are completely lost... ==<br />
<br />
Try the above first, and if it doesn't work, read on.<br />
<br />
First of all, you need to know the IP address of the network interface you'll be using for multiplayer FG. If your Internet connection is via an ADSL modem that plugs directly into your computer with a USB connection, you should be able to find your IP address by visiting http://www.whatismyip.com . Please note that your ISP might not give you the same IP address each time - if MP stops working, check this first.<br />
<br />
Otherwise, your connection is likely via some kind of router that connects to your computer via an RJ-45, or "Ethernet" connector (similar shape to most Western telephone plugs), or by a wireless link. You need to find the IP address of that network interface.<br />
<br />
Under linux, this can be found by logging in as root and typing "ifconfig". You may find more than one interface listed, beginning with "lo" - ignore that one. You should have something like "eth0" or "wlan0" also listed - look through this block of text for "inet addr". This will be followed directly by the number you're looking for, e.g. "inet addr:192.168.0.150"<br />
<br />
Under Windows XP, click start, run, and type "cmd". In the terminal window which appears, type "ipconfig" This should show you your IP address - write it down.<br />
<br />
With Windows 98, click start, run, and type "winipcfg" to get information about your IP address.<br />
<br />
This section _ought_ to be unnecessary now with recent versions of the FG server. If you have problems though, it won't hurt to follow through.<br />
<br />
Now, all(!) that remains is to configure your router to forward UDP port 5000 or 5002 to the IP address you've just found. This is not something that can be described in step-by-step detail, because each manufacturer's configuration interfaces differ greatly. Some tips are given here - if you get stuck, ask nicely on the [irc://irc.flightgear.org/flightgear FlightGear IRC channel] for help (details on the flightgear website).<br />
<br />
You should know how to log on to your router's configuration page, usually via a web browser. You are looking for settings pertaining to "port forwarding" "virtual server" "Forwarding Rules" or similar. When you have found the relevant settings, you need to add a rule that forwards port 5000 or 5002 (depending on which server you wish to join - add both if you like) to the IP address you discovered earlier. If there is a choice given, ensure it is UDP ports that are forwarded. If there is no choice, you may assume that both TCP and UDP are being forwarded. Save your configuration, and most routers will probably then need to be rebooted to apply the changes.<br />
<br />
Note: (for BSD users) If you are using a ADSL modem, you might have to put the port forward command into the ppp.conf file rather than firewall. This is because the firewall script will only run each time the machine is booted rather than the ppp line coming back online.<br />
<br />
Finally, start FG using the command line given right at the start (if you're using the windows launcher you will find entry boxes for Multiplayer arguments - insert the relevant details there). You will end up with something like this;<br />
<br />
<br />
fgfs --callsign=MyName --multiplay=in,10,192.168.0.2,5000 --multiplay=out,10,mpserver02.flightgear.org,5000 --airport=KSFO --runway=28R --aircraft=hunter <br />
<br />
Choose your own callsign - this is currently limited to seven characters.<br><br />
<br />
Once you have started FG, you should, if others are flying, see messages in the terminal from which FG was started, similar to the following;<br />
<br />
Initialising john51a using 'Aircraft/ufo/Models/ufo.xml' <br />
FGMultiplayRxMgr::ProcessRxData - Add new player. IP: 10.0.0.36, <br />
Call: john51a,model: Aircraft/ufo/Models/ufo.xml <br />
<br />
You MUST give your local, behind-the-router IP address for MultiPlayer to work. Trust me on this one!<br />
<br />
You should check that your firewall is not causing problems - either turn it off _temporarily_ or add an exception to allow incoming connections on port 5000 and 5002.<br />
<br />
If it's still just not working for you, ask nicely on the [irc://irc.flightgear.org/flightgear FlightGear IRC channel] and someone should be able to assist.<br />
Multiplayer Map<br />
There is a very nice online map which displays the location of online pilots at http://mpmap02.flightgear.org . You will also find this useful to check that you are successfully connecting to the server.<br />
<br />
THE FLIGHTGEAR MULTIPLAYER ROUGH HOWTO<br />
<br />
2006-05-27<br />
<br />
[[Category:Howto]]</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=4747OpenSceneGraph2007-12-16T16:10:32Z<p>Simstick: /* The latest OSG version from svn */</p>
<hr />
<div>__TOC__<br />
<br />
As of October 29th 2006, FlightGear has migrated from PLIB to OpenSceneGraph.<br />
<br />
Thanks to Mathias Fröhlich, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
'''Download the latest stable release '''<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
=== The patched version (NOTE: The patched version should not be needed anymore) ===<br />
OpenSceneGraph-SVN is now up to date with the required patches and should serve as well for running FlightGear. <br />
<br />
The MSVC8 (Visual Sudio 2005) win32 build dependencies for OpenSceneGraph can be found at http://www.oflebbe.de/oflebbe/FlightGear. Look out for the link to http://www.oflebbe.de/oflebbe/FlightGear/3rdparty-2006-11-25.zip.<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
=== Compilation work arounds ===<br />
<br />
If you get errors when compiling the patched OpenSceneGraph after having compiled (and installed) OpenThreads and Producer successfully (happens on Arch Linux), you may have to add the following to your 'make':<br />
<br />
'''make PRODUCER_INC_DIR=/usr/local/include \'''<br />
'''PRODUCER_LIB_DIR=/usr/local/lib \'''<br />
'''OPENTHREADS_INC_DIR=/usr/local/include \'''<br />
'''OPENTHREADS_LIB_DIR=/usr/local/lib'''<br />
<br />
== Current issues ==<br />
<br />
* The 2D Panels and the rendering order of instruments ... is wrong.<br />
<br />
* transparency issues:<br />
** runway lights shine through panel:<br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* "Near clipping problem" (nearby objects are partially clipped at left and right window boarder, ie seats in C172 inside)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* panel hotspots are not correctly displayed in 3D panels using the 2D hotspot hack; are hidden behind 3D model geometry<br />
<br />
* Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer<br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* 3D clouds<br />
<br />
* Rendering of some scenes is not perfect.<br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscelaneous OSG benefits ==<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interrest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External links ==<br />
http://www.openscenegraph.org/index.php?page=CVS.CVS</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=3724OpenSceneGraph2007-09-14T03:31:43Z<p>Simstick: /* The latest OSG version from svn */</p>
<hr />
<div>__TOC__<br />
<br />
As of October 29th 2006, FlightGear has migrated from PLIB to OpenSceneGraph.<br />
<br />
Thanks to Mathias Fröhlich, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
'''Download the latest stable release 2.0'''<br />
<br />
released 15th June 2007 which is what the current FlightGear OSG branch is building against:<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
=== The patched version (NOTE: The patched version should not be needed anymore) ===<br />
OpenSceneGraph-SVN is now up to date with the required patches and should serve as well for running FlightGear. <br />
<br />
The MSVC8 (Visual Sudio 2005) win32 build dependencies for OpenSceneGraph can be found at http://www.oflebbe.de/oflebbe/FlightGear. Look out for the link to http://www.oflebbe.de/oflebbe/FlightGear/3rdparty-2006-11-25.zip.<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
=== Compilation work arounds ===<br />
<br />
If you get errors when compiling the patched OpenSceneGraph after having compiled (and installed) OpenThreads and Producer successfully (happens on Arch Linux), you may have to add the following to your 'make':<br />
<br />
'''make PRODUCER_INC_DIR=/usr/local/include \'''<br />
'''PRODUCER_LIB_DIR=/usr/local/lib \'''<br />
'''OPENTHREADS_INC_DIR=/usr/local/include \'''<br />
'''OPENTHREADS_LIB_DIR=/usr/local/lib'''<br />
<br />
== Current issues ==<br />
<br />
* The 2D Panels and the rendering order of instruments ... is wrong.<br />
<br />
* transparency issues:<br />
** runway lights shine through panel:<br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* "Near clipping problem" (nearby objects are partially clipped at left and right window boarder, ie seats in C172 inside)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* panel hotspots are not correctly displayed in 3D panels using the 2D hotspot hack; are hidden behind 3D model geometry<br />
<br />
* Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer<br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* 3D clouds<br />
<br />
* Rendering of some scenes is not perfect.<br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscelaneous OSG benefits ==<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interrest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External links ==<br />
http://www.openscenegraph.org/index.php?page=CVS.CVS</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=3723OpenSceneGraph2007-09-14T03:18:36Z<p>Simstick: /* The latest OSG version from svn */</p>
<hr />
<div>__TOC__<br />
<br />
As of October 29th 2006, FlightGear has migrated from PLIB to OpenSceneGraph.<br />
<br />
Thanks to Mathias Fröhlich, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
To download the latest Stable Release 2.0, released 15th June 2007<br />
which is what the current FlightGear OSG branch is building against<br />
<br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
=== The patched version (NOTE: The patched version should not be needed anymore) ===<br />
OpenSceneGraph-SVN is now up to date with the required patches and should serve as well for running FlightGear. <br />
<br />
The MSVC8 (Visual Sudio 2005) win32 build dependencies for OpenSceneGraph can be found at http://www.oflebbe.de/oflebbe/FlightGear. Look out for the link to http://www.oflebbe.de/oflebbe/FlightGear/3rdparty-2006-11-25.zip.<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
=== Compilation work arounds ===<br />
<br />
If you get errors when compiling the patched OpenSceneGraph after having compiled (and installed) OpenThreads and Producer successfully (happens on Arch Linux), you may have to add the following to your 'make':<br />
<br />
'''make PRODUCER_INC_DIR=/usr/local/include \'''<br />
'''PRODUCER_LIB_DIR=/usr/local/lib \'''<br />
'''OPENTHREADS_INC_DIR=/usr/local/include \'''<br />
'''OPENTHREADS_LIB_DIR=/usr/local/lib'''<br />
<br />
== Current issues ==<br />
<br />
* The 2D Panels and the rendering order of instruments ... is wrong.<br />
<br />
* transparency issues:<br />
** runway lights shine through panel:<br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* "Near clipping problem" (nearby objects are partially clipped at left and right window boarder, ie seats in C172 inside)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* panel hotspots are not correctly displayed in 3D panels using the 2D hotspot hack; are hidden behind 3D model geometry<br />
<br />
* Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer<br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* 3D clouds<br />
<br />
* Rendering of some scenes is not perfect.<br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscelaneous OSG benefits ==<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interrest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External links ==<br />
http://www.openscenegraph.org/index.php?page=CVS.CVS</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=OpenSceneGraph&diff=3722OpenSceneGraph2007-09-14T02:26:01Z<p>Simstick: /* The latest OSG version from svn */</p>
<hr />
<div>__TOC__<br />
<br />
As of October 29th 2006, FlightGear has migrated from PLIB to OpenSceneGraph.<br />
<br />
Thanks to Mathias Fröhlich, we can use an current OpenSceneGraph SVN version <br />
<br />
== Getting OpenSceneGraph ==<br />
<br />
=== The latest OSG version from svn ===<br />
<br />
The OpenSceneGraph project uses [http://svnbook.red-bean.com/nightly/en/index.html Subversion (SVN)].<br />
<br />
<br />
To check out OpenSceneGraph:<br />
<br />
svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph <br />
<br />
The OpenSceneGraph repository includes all parts of OSG you need.<br />
<br />
To check out Latest Stable Release 2.0, released 15th June 2007<br />
which is what the current FlightGear OSG branch is building against<br />
svn co http://www.openscenegraph.org/svn/osg/OpenSceneGraph/tags/OpenSceneGraph-2.0.0 OpenSceneGraph<br />
For more information including a zip download <br />
http://www.openscenegraph.org/projects/osg/wiki/Downloads<br />
<br />
=== The patched version (NOTE: The patched version should not be needed anymore) ===<br />
OpenSceneGraph-SVN is now up to date with the required patches and should serve as well for running FlightGear. <br />
<br />
The MSVC8 (Visual Sudio 2005) win32 build dependencies for OpenSceneGraph can be found at http://www.oflebbe.de/oflebbe/FlightGear. Look out for the link to http://www.oflebbe.de/oflebbe/FlightGear/3rdparty-2006-11-25.zip.<br />
<br />
== Compiling OpenSceneGraph ==<br />
<br />
OpenSceneGraph uses cmake. A minimal build instruction for unix systems is<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
ccmake ../path/to/osg/source<br />
make<br />
make install<br />
<br />
On other systems the steps might be different.<br />
<br />
Recommended options to set in the ccmake menus:<br />
* Build type: Release<br />
* You don't need to build the examples, wrappers or applications.<br />
<br />
=== Installing OpenSceneGraph and FlightGear with --prefix ===<br />
<br />
If you use --prefix to choose were to install FlightGear and do not want to install OSG globally on the system this can be done with the following method:<br />
<br />
OpenSceneGraph uses cmake so to build it do<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
or if you want to avoid needing to set LD_LIBRARY_PATH<br />
<br />
mkdir build.osg<br />
cd build.osg<br />
cmake -D CMAKE_BUILD_TYPE="Release" -D CMAKE_CXX_FLAGS="-O3" -D CMAKE_C_FLAGS="-O3" \<br />
-D CMAKE_INSTALL_PREFIX:PATH="$(MY_PREFIX)" -D CMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOLEAN="true" ../path/to/osg/source<br />
make<br />
make install<br />
<br />
<br />
Configure and build SimGear and FlightGear with --prefix as usual.<br />
<br />
No need to install any quickly changing software globally.<br />
<br />
Installing with --prefix is a very nice way to keep several distinct and independent versions of FlightGear around. To start a new $PREFIX directory you'll also need to install plib in it, but that is easy. Most other needed dependencies are usually available through the package system of most Linux distributions (e.g. FreeGLUT, SDL, ALSA, etc).<br />
<br />
=== Compilation work arounds ===<br />
<br />
If you get errors when compiling the patched OpenSceneGraph after having compiled (and installed) OpenThreads and Producer successfully (happens on Arch Linux), you may have to add the following to your 'make':<br />
<br />
'''make PRODUCER_INC_DIR=/usr/local/include \'''<br />
'''PRODUCER_LIB_DIR=/usr/local/lib \'''<br />
'''OPENTHREADS_INC_DIR=/usr/local/include \'''<br />
'''OPENTHREADS_LIB_DIR=/usr/local/lib'''<br />
<br />
== Current issues ==<br />
<br />
* The 2D Panels and the rendering order of instruments ... is wrong.<br />
<br />
* transparency issues:<br />
** runway lights shine through panel:<br />
** runway lights shine through cloud layers in an awkward way:<br />
** 2D-cloud layers flood into cockpit<br />
** The prop of the C172 block the view on the waves of the carrier<br />
** The reflector gun sight on the Seahawk causes other transparent objects (carrier wake etc.) to disappear<br />
** A new overhead window in the C172 (inside out)<br />
<br />
* "Near clipping problem" (nearby objects are partially clipped at left and right window boarder, ie seats in C172 inside)<br />
<br />
* Runway lighting seems to have rendering artefacts on ATI Cards.<br />
<br />
* Enhanced runway lighting option in the drop-down menu seems to have no effect - light always appear enhanced.<br />
<br />
* panel hotspots are not correctly displayed in 3D panels using the 2D hotspot hack; are hidden behind 3D model geometry<br />
<br />
* Seneca II HSI: upper instrument clipping issue for NAV/HDG flags, heading bug, pointer<br />
<br />
<br />
[[List of 'compatible' aircrafts]] TO BE CONTINUED<br />
<br />
== Missing features ==<br />
Due to the migration from PLIB to OSG, some of the features seen in past versions of FlightGear are now temporarily non-functional. These are:<br />
<br />
<br />
* 3D clouds<br />
<br />
* Rendering of some scenes is not perfect.<br />
<br />
* Shadows<br />
<br />
* Exhaust shader<br />
<br />
* Weather Radar is there, but of course not showing any clouds<br />
<br />
* cloud layers don't follow the curve of the earth<br />
<br />
* Menu Items have no effect<br />
** Enhanced Runway Lights<br />
** Bump Mapped Clouds<br />
<br />
== Miscelaneous OSG benefits ==<br />
<br />
Mathias: "I think that we should make use in the longer term of the Producers <br />
capabilities for multiple view installations.<br />
But not only multipipe installs will benefit from that. The Producer will also <br />
help to get benefit from multicore SMP machines.<br />
For that the following article is of huge interrest:<br />
http://www.donburns.net/OSG/Articles/OSGMP/"<br />
<br />
== Getting the PLIB Code ==<br />
<br />
Use the tag <tt>PRE_OSG_PLIB_20061029</tt> for checking out the branch with the plib scenegraph.<br />
<br />
<br />
For SimGear, this works (more or less) as follows:<br />
<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source'''<br />
'''cd source'''<br />
'''cvs up -rPRE_OSG_PLIB_20061029'''<br />
<br />
<br />
For FlightGear, you have to update the "source" directory:<br />
<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login'''<br />
'''CVS passwd: guest'''<br />
'''cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co -rPRE_OSG_PLIB_20061029 source<br />
'''<br />
The data directory should be the CVS HEAD version. Some aircraft, however, have a PRE_OSG_PLIB_20061029 branch that works better with FlightGear/plib, e.g Hawker Hunter.<br />
<br />
== External links ==<br />
http://www.openscenegraph.org/index.php?page=CVS.CVS</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Building_FlightGear_-_Linux&diff=3493Building FlightGear - Linux2007-05-14T02:22:26Z<p>Simstick: /* Requirements */</p>
<hr />
<div>__TOC__<br />
<br />
This section describes how to build FlightGear on Linux system.<br />
<br />
Compiling FlightGear is not a task for novice users. Thus, if you're a beginner (we all were once) on a platform which binaries are available for, we recommend postponing this task and just starting with the binary distribution to get you flying.<br />
<br />
'''October 29th 2006, Flightgear CVS MAIN Branch switched to OSG support.'''<br />
Plib support remains available in CVS using PRE_OSG_PLIB_20061029 Branch.<br />
(cvs up -rPRE_OSG_PLIB_20061029)<br />
<br />
== Requirements ==<br />
Before you can compile FlightGear, you need to have the following installed on your computer:<br />
<br />
'''C++ compiler'''<br />
<br />
These are: c++, cpp, gcc, g++ found under the /usr/bin directory. You will also need to have the tools '''autoconf''' and '''automake1.9''' installed.<br />
<br />
'''CVS'''<br />
<br />
Yes, the program is called 'CVS'. This is used for downloading the latest set of source code.<br />
<br />
'''OpenGL support'''<br />
<br />
More specifically, your system needs the support for hardware accelerated graphics. You can check for this by running:<br />
<br />
glxinfo | grep direct<br />
<br />
Note: To run the above command, you need to have the tool '''mesa-utils''' installed.<br />
<br />
You should then see:<br />
<br />
direct rendering: Yes<br />
<br />
This means you are good to go as far as OpenGL support is concerned.<br />
<br />
If you see:<br />
<br />
direct rendering: No<br />
<br />
Don't panic yet. This may just mean some required libraries for hardware accelerated graphic are missing. Go ahead and try installing plib1.8.4 and its dependencies first. If you still get the above message, then you will need to do some googling and troubleshoot yourself.<br />
<br />
== Dependencies ==<br />
FlightGear is dependent on quite a few number of libraries. You do not need to compile all of them yourself, but you will at least need to have their development version installed. For example, the development version for package plib1.8.4 is plib1.8.4'''-dev'''.<br />
<br />
The dependency is summarized in the following tree. Please note that each library has its own dependencies, and most of these are not shown here.<br />
<br />
* FlightGear<br />
** [http://openal.org OpenAL and ALUT]<br />
** SimGear<br />
*** [http://plib.sourceforge.net/ PLIB] (until version 0.9.10 release sources, PRE_OSG_PLIB_20061029 CVS branch)<br />
**** (Free)GLUT or SDL (We recommend the use of SDL)<br />
*** [[ OpenSceneGraph ]] (svn trunk)<br />
**** OpenThreads<br />
**** Producer<br />
**** libfreetype6-dev<br />
**** libjpeg62-dev<br />
**** libungif4-dev<br />
**** libtiff4-dev<br />
**** libpng12-dev<br />
**** libxmu-dev<br />
**** libxi-dev<br />
<br />
If you attack the above dependencies in the order listed below, you should be good:<br />
<br />
1. Glut. Most distributions include glut packages, although you may have to hunt for them. Make sure you install both the glut and glut-devel packages, otherwise FlightGear may be able to compile but won't run correctly.<br />
<br />
2. Zlib. Most distributions install the basic zlib libraries by default, but not the development portions. If you don't have zlib.h, you probably need to install the zlib-devel package for your distribution. <br />
<br />
3. Plib - portability libraries and scene graph. <br />
<br />
4. [[ OpenSceneGraph ]]<br />
<br />
5. SimGear - Simulation support libraries. If you are building FlightGear from CVS, you need the CVS version of SimGear. If you have strange build errors, one of the first things to check is that you have an up-to-date version of SimGear built and installed.<br />
<br />
== Compiling ==<br />
Assuming you are root, do:<br />
cd /usr/local/src<br />
<br />
=== Getting and compiling SimGear ===<br />
<br />
'''Step 1:'''<br />
<br />
Login to the cvs server and checkout the latest version of SimGear's source code with:<br />
cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login<br />
CVS passwd: guest<br />
<br />
cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source<br />
<br />
'''Step 2:'''<br />
<br />
Since all the source code will be downloaded into a directory called '''source''', you will need to rename the directory into something more meaningful.<br />
<br />
Rename the above directory by doing:<br />
mv source simgear<br />
<br />
Next, go into the directory and make preparations for the compilation:<br />
cd simgear<br />
./autogen.sh<br />
./configure<br />
<br />
'''Step 3:'''<br />
<br />
Compile and install SimGear by doing:<br />
make; make install<br />
<br />
=== Getting and compiling FlightGear ===<br />
<br />
'''Step 1:'''<br />
<br />
To login to the cvs version and checkout the latest version of Flightgear's source code, use:<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login<br />
CVS passwd: guest<br />
<br />
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co source<br />
<br />
A directory with the name '''source''' will then be created with all of Flightgearear's source code downloaded into it.<br />
<br />
'''Step 2:'''<br />
<br />
To rename the above directory, use the following command:<br />
mv source flightgear<br />
<br />
Next, go into the folder and make preparations for the compilation:<br />
cd flightgear<br />
./autogen.sh<br />
./configure<br />
<br />
'''Step 3:'''<br />
<br />
Now you can compile and install Flightgear by:<br />
make; make install<br />
<br />
== External links ==<br />
=== Instructions ===<br />
* [[ MSYS ]]<br />
* [[ MinGW/cross-compiler ]]<br />
* [[ CodeBlocks IDE ]]<br />
* [[ OpenSUSE 10.1 10.2 ]]<br />
* [http://www.geoffmclane.com/fg/fgmsvc7.htm MSVC7 *.Net]<br />
* [http://www.oflebbe.de/oflebbe/FlightGear/index.html MSVC8 aka Visual 2005]<br />
* [http://macflightgear.sourceforge.net/home/documents/ Mac OS X (0.9.10 and CVS)]<br />
<br />
=== Tools ===<br />
==== Free/Open Source ====<br />
* [http://www.gnu.org/software/gcc/onlinedocs/ gcc - the GNU compiler (collection)]<br />
* [http://www.gnu.org/software/make/manual/make.html make - GNU make]<br />
* [http://sources.redhat.com/autobook/ autools - autoconf, automake, libtool & co]<br />
* [http://distcc.samba.org distcc - distributed (fast!) compilations for any network]<br />
* [http://www.gnu.org/software/binutils/manual/gprof-2.9.1/gprof.html gprof - the GNU profiler]<br />
* [http://ccache.samba.org ccache - compiler cache, pre-compiled objects for gcc]<br />
* [http://www.stack.nl/~dimitri/doxygen/ doxygen - source code documenting]<br />
* [http://www.gnu.org/software/gdb/documentation/ gdb - the GNU project debugger]<br />
* [http://www.gnu.org/manual/ddd/ddd.html DDD - Data Display Debugger]<br />
* CVS - Concurrent Versioning System<br />
** http://cvsbook.red-bean.com/cvsbook.html<br />
** http://www.cs.utah.edu/dept/old/texinfo/cvs/cvs_toc.html<br />
** http://www.wincvs.org/<br />
* SVN<br />
**http://www.subversion.org<br />
<br />
==== Free/Proprietary ====<br />
* [http://www.intel.com/vtune/ Intel VTune] [http://www.intel.com/cd/software/products/asmo-na/eng/download/download/index.htm (free Win32/Linux versions available for non-commercial use:requires an INTEL CPU!)]<br />
* [http://developer.amd.com/downloads.aspx AMD's Developer Tools] (CodeAnalyst, available for free for [http://developer.amd.com/cawin.aspx Win32]/[http://developer.amd.com/calinux.aspx Linux] )</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Howto:Multiplayer&diff=3035Howto:Multiplayer2006-10-10T06:49:51Z<p>Simstick: /* Using the Windows launcher / fgrun */</p>
<hr />
<div>= Using the Windows launcher / fgrun =<br />
<br />
Select your aircraft and starting airport as normal. On the next screen, tick the "Multiplayer" box, enter a callsign of your choice, enter mpserver01.flightgear.org in the "Hostname" box and 5000 into both the "in" and "out" boxes. Click run and you're hopefully sorted!<br />
<br />
To confirm that it's working, you can go to http://mpmap01.flightgear.org and use the multiplayer map there.<br />
<br />
You may wish to use a different server (i.e. "Hostname" entry); currently available are:<br />
<br />
mpserver01.flightgear.org (in Germany)<br />
mpserver02.flightgear.org (in Hong Kong)<br />
mpserver03.flightgear.org (East Coast USA)<br />
mpserver04.flightgear.org (UK)<br />
<br />
= Using fgfs from the command line =<br />
<br />
First, for those who are very impatient and have a vague idea about what they're doing, the basic arguments to pass to fgfs for multiplayer are these;<br />
<br />
--multiplay=out,10,server.ip.address,portnumber<br />
--multiplay=in,10,your.ip.address,portnumber<br />
--callsign=anything <br />
<br />
Where portnumber is usually 5000 or 5002 and your.ip.address is the ip address of the network interface being used by FG to connect to the server - even if that's a local 192.168 type address. Please note that although this limitation has been removed in the most recent versions of the FG server; you should still specify a valid (non-loopback, i.e. not 127.0.0.1) IP address to keep the FG client happy.<br />
<br />
Port 5000 is usually for the latest stable version of FlightGear. Currently 0.9.10<br />
<br />
Port 5002 is mainly used for development, i.e. stable version of FlightGear might or might not work with this server, depending on the server's development stage.<br />
<br />
== Now, going more slowly for those who are completely lost... ==<br />
<br />
Try the above first, and if it doesn't work, read on.<br />
<br />
First of all, you need to know the IP address of the network interface you're going to be running FG multiplayer over. If your Internet connection is via an ADSL modem that plugs directly into your computer with a USB connection, you should be able to find your IP address by visiting http://www.whatismyip.com . Please note that this address may very well change every now and again - if MP stops working, check this first.<br />
<br />
Otherwise, your connection is likely via some kind of router that connects to your computer via an RJ-45, or "Ethernet" connector (similar shape to most Western telephone plugs), or by a wireless link. You need to find the IP address of that network interface.<br />
<br />
Under linux, this can be found by logging in as root and typing "ifconfig". You may find more than one interface listed, beginning with "lo" - ignore that one. You should have something like "eth0" or "wlan0" also listed - look through this block of text for "inet addr". This will be followed directly by the number you're looking for, e.g. "inet addr:192.168.0.150"<br />
<br />
Under Windows XP, click start, run, and type "cmd". In the terminal window which appears, type "ipconfig" This should show you your IP address - note it down.<br />
<br />
With Windows 98, click start, run, and type "winipcfg" to get information about your IP address.<br />
<br />
This section _ought_ to be unnecessary now with recent versions of the FG server. If you have problems though, it won't hurt to follow through.<br />
<br />
Now, all(!) that remains is to configure your router to forward UDP port 5000 or 5002 to the IP address you've just found. This is not something that can be described in step-by-step detail, because each manufacturer's configuration interfaces differ greatly. Some tips are given here - if you get stuck, ask nicely on the FlightGear IRC channel for help (details on the flightgear website).<br />
<br />
You should know how to log on to your router's configuration page, usually via a web browser. You are looking for settings pertaining to "port forwarding" "virtual server" "Forwarding Rules" or similar. When you have found the relevant settings, you need to add a rule that forwards port 5000 or 5002 (depending on which server you wish to join - add both if you like) to the IP address you discovered earlier. If there is a choice given, ensure it is UDP ports that are forwarded. If there is no choice, you may assume that both TCP and UDP are being forwarded. Save your configuration, and most routers will probably then need to be rebooted to apply the changes.<br />
<br />
Note: (for BSD users) If you are using a ADSL modem, you might have to put the port forward command into the ppp.conf file rather than firewall. This is because the firewall script will only run each time the machine is booted rather than the ppp line coming back online.<br />
<br />
Finally, start FG using the command line given right at the start (if you're using the windows launcher you will find entry boxes for Multiplayer arguments - insert the relevant details there). You will end up with something like this;<br />
<br />
<br />
fgfs --callsign=MyName --multiplay=in,10,192.168.0.2,5000 --multiplay=out,10,mpserver02.flightgear.org,5000 --airport=KSFO --runway=28R --aircraft=hunter <br />
<br />
Choose your own callsign - this is currently limited to seven characters.<br><br />
NOTE: Windows users also might have to add the option --enable-ai-models on their command line in order to see other multiplayer aircraft(or in fgrun, check the box that says "AI Models")<br />
<br />
Once you have started FG, you should, if others are flying, see messages in the terminal from which FG was started, similar to the following;<br />
<br />
Initialising john51a using 'Aircraft/ufo/Models/ufo.xml' <br />
FGMultiplayRxMgr::ProcessRxData - Add new player. IP: 10.0.0.36, <br />
Call: john51a,model: Aircraft/ufo/Models/ufo.xml <br />
<br />
You MUST give your local, behind-the-router IP address for MultiPlayer to work. Trust me on this one!<br />
<br />
You should check that your firewall is not causing problems - either turn it off _temporarily_ or add an exception to allow incoming connections on port 5000 and 5002.<br />
<br />
If it's still just not working for you, ask nicely on the FlightGear IRC channel and someone should be able to assist.<br />
Multiplayer Map<br />
There is a very nice online map which displays the location of online pilots at http://mpmap01.flightgear.org . You will also find this useful to check that you are successfully connecting to the server.<br />
<br />
THE FLIGHTGEAR MULTIPLAYER ROUGH HOWTO<br />
<br />
2006-05-27</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Frequently_asked_questions&diff=2998Frequently asked questions2006-09-12T00:59:54Z<p>Simstick: /* How do I design or modify a panel? */</p>
<hr />
<div>''' Feel free to make additions, changes, or corrections.'''<br />
<br />
{|<br />
|__TOC__<br />
|}<br />
<br />
== The FAQ ==<br />
=== Where can I get the latest version of this FAQ? ===<br />
<br />
http://flightgear.org/Docs/FlightGear-FAQ.html<br />
<br />
=== Who do I contact if I have comments about this FAQ? ===<br />
<br />
Add your comment to this FAQ's discussion page [[Talk:FAQ]]<br />
<br />
=== How old is this document? ===<br />
<br />
Click the History button in the menu on the left.<br />
<br />
=== What other important documentation should I read? ===<br />
<br />
* [http://flightgear.org/Docs/getstart/getstart.html Getting Started Guide]<br />
* [[New to FlightGear]]<br />
* Also see the FlightGear/docs-mini/ directory in the source distribution for various other helpful documents.<br />
<br />
== Distribution ==<br />
<br />
=== Where can I get FlightGear? ===<br />
<br />
The official download page is http://flightgear.org/Downloads/. Source code is our primary form of distribution, but precompiled binaries are available for Windows and SGI IRIX.<br />
<br />
Alternatively, FlightGear is packaged for Linux by SuSE, Debian (sid), and Mandrake (Cooker) and can be directly installed through those distributions.<br />
<br />
=== What is the password for the FTP server? ===<br />
<br />
The FTP server uses standard anonymous login procedures. Login with the username "anonymous" and use your email address as the password. Most FTP clients and web browsers will do this automatically for you.<br />
<br />
=== Why won't the FTP server let me in with the right login info? ===<br />
<br />
This generally means that the server is at it's capacity. You should receive a message saying such, but your FTP client may be hiding it from you. Your options are to keep trying until a slot opens up or try connecting to one of our FTP mirrors listed at http://flightgear.org/mirrors.html.<br />
<br />
=== Where can I find the latest development source code? ===<br />
<br />
The latest development code is available for everyone through our CVS repository. See http://flightgear.org/cvsResources/ for details.<br />
<br />
Otherwise, you can get relatively up-to-date snapshots of the development tree at ftp://flightgear.sourceforge.net/pub/flightgear/Devel/Snapshots/.<br />
<br />
=== What is SimGear, and why do I need it? ===<br />
<br />
SimGear is a library of supporting code. SimGear is only needed if you plan on compiling FlightGear -- it is not needed to run precompiled binaries. For more information see http://www.simgear.org/.<br />
<br />
=== Where can I fly and where do I get the scenery? ===<br />
<br />
While the base package only comes with scenery for the San Francisco Bay area, you can currently fly just about anywhere in the world. See the "Additional Scenery" section of http://flightgear.org/Downloads/ for more information or go directly to our graphical downloader at http://flightgear.org/Downloads/world-scenery.html.<br />
<br />
Also visit our "Places to Fly" section of the website (http://flightgear.org/Places/) for some help navigating to some awesome locations.<br />
<br />
=== Where can I get different 3D models for my plane? ===<br />
<br />
While we are working toward building our own 3D models, we have been given permission by several people to convert their models (which where originally intended for use with Microsoft Flight Simulator) to use with FlightGear.<br />
<br />
=== How current is the data in FlightGear compared to the real world? ===<br />
<br />
We use the same navaid and airport dataset that X-Plane uses. The current dataset can be found in the $FGROOT/Navaids/ and $FGROOT/Airports/ directories. If you have updates or corrections to the dataset, see http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html for instructions on contacting the database maintainer.<br />
<br />
=== Where is the moving map? ===<br />
<br />
A popular moving map display is avaliable under a separate project called Atlas. See http://atlas.sf.net/.<br />
<br />
=== Why don't you charge money for this? ===<br />
<br />
We could do that, since the initial download is about 132 megabytes. Especially for people who have to pay per-minute charges for internet access, buying a CD is a convenient and possibly cheaper option. Although we offer that service (see the website), we encourage other groups to redistribute it for their users, especially within an operating system distribution which makes installation even faster and easier for new users.<br />
<br />
== Compiling ==<br />
<br />
=== Why won't FlightGear compile? ===<br />
<br />
Well, that depends. First make sure you are using the appropriate versions of FlightGear, SimGear, plib, zlib. If any of the packages are out of sync with the others, compilation may fail.<br />
<br />
The FlightGear Downloads page (http://flightgear.org/Downloads/) should tell you what versions you need if you are trying to compile the latest stable release. If you are using a development snapshot, make sure all three packages are up-to-date.<br />
<br />
Also ensure that you have some implementation of OpenGL with glut support with the appropriate header files. Linux users with nVidia cards should make sure you have the latest drivers from nVidia. Other Linux users make sure you have Mesa3D (http://mesa3d.org/) and your X server installed correctly. <br />
<br />
If your problems persist, subscribe to our FlightGear-Users mailing list and let us know what problem you're having. See http://flightgear.org/mail.html for help with this.<br />
<br />
=== I'm using RedHat 7, and ...? ===<br />
<br />
Update your gcc packages. See http://redhat.com/errata/ to fix it and http://www.gnu.org/software/gcc/gcc-2.96.html for an explanation why.<br />
<br />
== Configuring ==<br />
<br />
=== How do I install new scenery? ===<br />
<br />
The scenery archive files (ie. w100n30.tar.gz) should be untarred into the Scenery/Terrain directory in your $FG_ROOT.<br />
<br />
=== How do I setup my joystick(s)? ===<br />
<br />
FlightGear should come with a helpful program called `fgjs` that can help configure your joystick. Run `fgjs` and then copy the dot file it created into your home directory or add its contents to your existing rc file.<br />
<br />
Also, see the README.Joystick file located in the FlightGear/docs-mini/ directory of the source distribution.<br />
<br />
=== What format should my personal .fgfsrc file be in? ===<br />
<br />
Your .fgfsrc file should simply be a list of command-line options with one option per line. The file is not an XML file.<br />
<br />
If you would rather use an XML configuration file, you can add something like the following in your .fgfsrc<br />
<br />
<code> --config=/path/to/my/config.xml</code><br />
<br />
Almost every option corresponds to a property, so you can choose to use whichever method best suits your needs.<br />
<br />
== Running ==<br />
<br />
=== Why do I get an error loading libopenal.so.0? ===<br />
<br />
With the default installation, libopenal.so.0 is installed into /usr/local/lib. You need to ensure that that path is listed in /etc/ld.so.conf, then run `ldconfig`as root.<br />
<br />
=== Why do I get "ssgInit called without a valid OpenGL context"? ===<br />
<br />
In short, your GL libraries are broken. So far only Red Hat 7.x users have experienced this (see http://www.redhat.com/bugzilla/show_bug.cgi?id=18867). The only solutions are possibly complicated ones: you can either change distributions (most of us prefer Debian) or upgrade/downgrade your Mesa libs.<br />
<br />
Why do some other GL applications work though? Well, Steve Baker (Mr. PLIB) has explained this on the plib-users list (http://www.geocrawler.com/lists/3/SourceForge/1867/0/6470648/).<br />
<br />
=== What happened to the panel, keyboard, etc? ===<br />
<br />
The problem is almost certainly that your base package is out of sync with FlightGear. Many configurable parts of FlightGear are defined in XML files contained in the base package.<br />
<br />
=== Why doesn't audio work properly under Irix? ===<br />
<br />
FlightGear (as of June 2001) uses the Portable Libraries (PLIB) for playing audio. The audio queue implementation of PLIB is far from optimal (in fact it's just wrong). This seems to work on other platforms quite well, but Irix expects things to be programmed properly.<br />
<br />
There has been discussion about using OpenAL (http://www.openal.org/) for the next release of both PLIB and FlightGear. Tests show that the OpenAL audio implementation does the job right, meaning that these audio problems should be gone by then. In the mean time it is best to disable audio on Irix completely (by adding --disable-sound either on the command line or to your $HOME/.fgfsrc file).<br />
<br />
=== Why is FlightGear so slow? ===<br />
<br />
FlightGear supports hardware acceleration, but it seems not to be activated. Make sure you have OpenGL libraries installed and configured properly and make sure you have the latest drivers for your video card.<br />
<br />
Linux users: If you are an nVidia user, follow their directions on getting your card working. For most other users, make sure Mesa is installed property and ensure that you have the appropriate kernel device drivers for your card. Most people (and distributions) use modules for their video card device drivers; run `lsmod` as root to see what modules are loaded. You should also make sure that you are loading the appropriate modules in your XF86Config and that your video device section is correct. Now try running an OpenGL application (other than FlightGear) to see how it performs. You can try the gears demo from Mesa or something like Quake3.<br />
<br />
=== Why is my SGI machine so slow? ===<br />
<br />
First of all, one of the most common mistakes on SGI hardware is to forget to specify --fog-fastest. On most SGI machines the EXP2 shading model isn't hardware supported resulting in frame rates below 1 frame per second (fps).<br />
<br />
FlightGear makes extensive use of the OpenGL z-buffer feature,which on most older SGI hardware is only supported in software. This means that the CPU has to do all the z-buffer calculations in addition to the other tasks FlightGear involves (flight dynamics, scenery tracking, pushing commands into the graphics queue, etc). The following features are software rendered on low-end SGI machines (like Indy and Indigo):<br />
<br />
* stencil and accumulation buffer<br />
* depth queuing and depth buffering<br />
* fogging, lighting, clipping and transforms<br />
* texturing<br />
<br />
This means that running FlightGear with the following options may not even get the desired result:<br />
<br />
<code> ./runfgfs --fog-disable --shading-flat --disable-skyblend --disable-textures --disable-clouds --disable-sound --disable-panel --enable-hud --disable-anti-alias-hud </code><br />
<br />
I could even imagine that adding --enable-wireframe doesn't work on these machines (I would be happy to be proven wrong though).<br />
<br />
On a machine like O2 the following options give an acceptable result:<br />
<code>./runfgfs --fog-fastest --disable-sound</code><br />
<br />
Since I don't have access to other SGI hardware I can't tell which options would be appropriate for your situation.<br />
<br />
=== How do I see the frame rate? ===<br />
<br />
There are two ways. One way is to hide the panel without the HUD showing. To hide the panel, use Shift+P; To make the HUD disappear, use H. The second way is to use the alternative HUD by Shift+I (Use I to switch back).<br />
=== Stuck upside down after "crash"? ===<br />
<br />
In his infinite wisdom the FlightGear Grand Master decided that planes were to valuable to allow them to be destroyed by novice pilots who seemed to crash a lot. The fact that nobody has bothered to model crashes may have something to do with it too. :-)<br />
<br />
The result of this as you have noticed is that with a little practice an ingenuity you can trim the ship to fly inverted along the ground.<br />
<br />
The quick answer is to hit Ctrl+U (with the default key bindings) to warp the plane up 1000ft.<br />
<br />
For the stubborn people out there: The trick to learn is to roll back to normal (non inverted) do this by nursing the elevator to get to about 500 feet or so and use the ailerons to snap roll 180*. This is all good avionics except for the plane not destroying itself. Remember the controls work in reverse when you are inverted and keep that airspeed up!!!<br />
<br />
=== Why does FlightGear die on startup saying "time zone reading failed"? ===<br />
<br />
This is probably caused by a line-ending problem in the timezone files. Win32 users can resolve the problem by downloading a DOS to UNIX conversion utility available at http://www.nottingham.ac.uk/~eazdluf/d2u.zip. Run as `d2u *.tab` from within the timezone directory to fix your timezone files.<br />
<br />
== Hacking ==<br />
<br />
=== What language is FlightGear written in? ===<br />
<br />
Mostly C++ with some supporting C code that's primary contained within SimGear.<br />
<br />
=== How do I design a flight dynamics model for a new aircraft? ===<br />
<br />
To define an aircraft for FlightGear's primary FDM (JSBSIM), see http://jsbsim.sf.net/.<br />
<br />
If you want a simpler FDM to work with, try your hand at YASim, an alternative FDM. For an guide on creating a YASim aircraft, look in the FlightGear base package for Aircraft-yasim/README.yasim.<br />
<br />
=== How do I import planes from Microsoft Flight Simulator? ===<br />
<br />
You can import the 3D model and textures, but the flight dynamics (the .AIR file) must be completely redone for FlightGear.<br />
<br />
If you wish to import a model made with gmax, you will need to convert it to .MDL format using Microsoft's MakeMDL SDK which is available at http://zone.msn.com/flightsim/FS02DevDeskSDK08.asp.<br />
<br />
=== How do I import BGL scenery from Microsoft Flight Simulator? ===<br />
<br />
See http://chiangt.virtualave.net/BGL/bgl_index.html.<br />
<br />
=== How do I design or modify a panel? ===<br />
<br />
See the README.xmlpanel file located in the FlightGear/docs-mini/ directory of the source distribution. <br />
----<br />
<br />
=== How do I place objects, like buildings, into FlightGear? ===<br />
<br />
First, ensure that you have v0.7.7 or later, the scenery files where you plan to place the object, the actual model, and the longitude and latitude where you plan to place the object.<br />
<br />
Now get the altitude for your point. If you don't want to calculate this yourself, start FlightGear at your location and take note of the altitude. Here's an example command:<br />
<br />
fgfs --lat=45.50 --lon=-75.73 2>&1 | tee fgfs.log<br />
<br />
The altitude is probably in feet, so divide the starting altitude by 3.28.<br />
<br />
Search the output log file for the first occurrence of the string "Loading tile" and take note of the filename. In the above example, the output line looks like:<br />
<br />
Loading tile /usr/local/Scenery/w080n40/w076n45/1712601<br />
<br />
Copy a 3D model in a format that Plib understands to the same directory as the tile file. Edit the text file in that directory consisting of the tile name with the extension ".stg". The file will already exist if there is an airport on the tile; otherwise, you can create it from scratch. In our example, the filename is:<br />
<br />
<code>/usr/local/Scenery/w080n40/w076n45/1712601.stg</code><br />
<br />
At the end of the file, add a new entry for your object, consisting of the word "OBJECT_STATIC" followed by the model name, the longitude in degrees, the latitude in degrees, the altitude in meters, and the heading in degrees. In our example the line looks like:<br />
<br />
OBJECT_STATIC Towerax.ac -75.73 45.40 60 0<br />
<br />
Save the changes to the .stg file, restart FlightGear, and enjoy.<br />
<br />
NOTE: The above information was taken from the following mailing list post: http://www.geocrawler.com/archives/3/11854/2001/6/0/5991409/. See that page if this one doesn't make sense.<br />
<br />
An alternative approach using PPE is described at http://mail.flightgear.org/pipermail/flightgear-devel/2001-December/002239.html by Norman Vine.<br />
<br />
=== Where can I learn 3D programming and how do I get involved? ===<br />
<br />
Contributing to the 2D panel doesn't require any coding at all, just a minimal knowledge of XML syntax (i.e. five minutes' worth) and good skills with drawing and/or paint programs. Every instrument on the current panel, with the partial exception of the magnetic compass, is defined entirely in XML with no custom C++ code. If you want to get started, take a look at John Check's excellent intro (http://rockfish.net/fg/README.xmlpanel).<br />
<br />
Likewise, if you want to create a 3D cockpit for FlightGear, or to create buildings, external aircraft models, etc., your help is *desperately* needed. The only rule is to go easy on the triangles -- a model with 50,000 triangles probably won't be usable in FlightGear, and one with 5,000 triangles, only marginally. If you can design a nice 3D cockpit interior for a Cessna 172 (for example) in a 3D design program such as ac3D or ppe, we have coders who will be happy to add the support code in the C++.<br />
<br />
If, on the other hand, you really want to get your hands dirty with C++ coding, you'll have to buy a good OpenGL book eventually. However, FlightGear uses a high-level library, plib, that hides most of the details of OpenGL. To get started with 3D C++ coding, you can take a look at the plib documentation and learn only as much OpenGL as you need, when you need it.<br />
<br />
=== How do I add an airport? ===<br />
<br />
You can add your airport to the $FGROOT/Airports/default.apt.gz file, but to get the airport to show up visually, you will have to rebuild the scenery around the airport. The format of the default.apt file is documented at http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html.<br />
<br />
=== How do I generate my own scenery? ===<br />
<br />
Yes, though it can be a difficult task. FlightGear's scenery generation is handled by a sister project, TerraGear. For more details, see http://terragear.org/.<br />
<br />
== Flying ==<br />
<br />
=== Where can I learn about instrument flying and navigation? ===<br />
<br />
http://www.navfltsm.addr.com/ is a very good site for learning techniques for navigation.<br />
<br />
<br />
<br />
Also see http://www.monmouth.com/~jsd/how/. This link is dead.<br />
<br />
Please see [[Understanding Navigation]]<br />
<br />
=== What is the difference between Aileron and Rudder? ===<br />
<br />
There is a bit of info on aileron vs. rudder here: http://www.monmouth.com/~jsd/how/.<br />
<br />
=== Is there support for multi-player flying? ===<br />
<br />
Yes. Both the Windows and *nix versions of FlightGear are capable of multi-player flying on FlightGear servers.<br />
<br />
Wiki: [http://wiki.flightgear.org/flightgear_wiki/index.php?title=Multiplayer_Howto Multiplayer_Howto]<br />
<br />
A map showing players aircfart online in real time is available:<br />
[http://pigeond.net/flightgear/fg_server_map.html FlightGear Online Server Map]<br />
<br />
=== Is there support for any military scenarios like dog fighting or bomb dropping? ===<br />
<br />
No, not at this time. Most of our developers are primarily interested and focused on civilian aviation. We aren't explicitly excluding these features -- we just haven't had anyone who seriously wanted to develop these areas.<br />
<br />
== FlightGear v0.7.6 ==<br />
<br />
=== Why do I get an error in viewer.cxx about `exit' being undeclared? ===<br />
<br />
This error cropped up after the release of v0.7.6. To fix the problem, add "#include <stdlib.h>" to the top of viewer.cxx.</div>Simstickhttps://wiki.flightgear.org/w/index.php?title=Frequently_asked_questions&diff=2991Frequently asked questions2006-09-07T12:34:29Z<p>Simstick: /* How do I setup my joystick(s)? */</p>
<hr />
<div>''' Feel free to make additions, changes, or corrections.'''<br />
<br />
{|<br />
|__TOC__<br />
|}<br />
<br />
== The FAQ ==<br />
=== Where can I get the latest version of this FAQ? ===<br />
<br />
http://flightgear.org/Docs/FlightGear-FAQ.html<br />
<br />
=== Who do I contact if I have comments about this FAQ? ===<br />
<br />
Add your comment to this FAQ's discussion page [[Talk:FAQ]]<br />
<br />
=== How old is this document? ===<br />
<br />
Click the History button in the menu on the left.<br />
<br />
=== What other important documentation should I read? ===<br />
<br />
* [http://flightgear.org/Docs/getstart/getstart.html Getting Started Guide]<br />
* [[New to FlightGear]]<br />
* Also see the FlightGear/docs-mini/ directory in the source distribution for various other helpful documents.<br />
<br />
== Distribution ==<br />
<br />
=== Where can I get FlightGear? ===<br />
<br />
The official download page is http://flightgear.org/Downloads/. Source code is our primary form of distribution, but precompiled binaries are available for Windows and SGI IRIX.<br />
<br />
Alternatively, FlightGear is packaged for Linux by SuSE, Debian (sid), and Mandrake (Cooker) and can be directly installed through those distributions.<br />
<br />
=== What is the password for the FTP server? ===<br />
<br />
The FTP server uses standard anonymous login procedures. Login with the username "anonymous" and use your email address as the password. Most FTP clients and web browsers will do this automatically for you.<br />
<br />
=== Why won't the FTP server let me in with the right login info? ===<br />
<br />
This generally means that the server is at it's capacity. You should receive a message saying such, but your FTP client may be hiding it from you. Your options are to keep trying until a slot opens up or try connecting to one of our FTP mirrors listed at http://flightgear.org/mirrors.html.<br />
<br />
=== Where can I find the latest development source code? ===<br />
<br />
The latest development code is available for everyone through our CVS repository. See http://flightgear.org/cvsResources/ for details.<br />
<br />
Otherwise, you can get relatively up-to-date snapshots of the development tree at ftp://flightgear.sourceforge.net/pub/flightgear/Devel/Snapshots/.<br />
<br />
=== What is SimGear, and why do I need it? ===<br />
<br />
SimGear is a library of supporting code. SimGear is only needed if you plan on compiling FlightGear -- it is not needed to run precompiled binaries. For more information see http://www.simgear.org/.<br />
<br />
=== Where can I fly and where do I get the scenery? ===<br />
<br />
While the base package only comes with scenery for the San Francisco Bay area, you can currently fly just about anywhere in the world. See the "Additional Scenery" section of http://flightgear.org/Downloads/ for more information or go directly to our graphical downloader at http://flightgear.org/Downloads/world-scenery.html.<br />
<br />
Also visit our "Places to Fly" section of the website (http://flightgear.org/Places/) for some help navigating to some awesome locations.<br />
<br />
=== Where can I get different 3D models for my plane? ===<br />
<br />
While we are working toward building our own 3D models, we have been given permission by several people to convert their models (which where originally intended for use with Microsoft Flight Simulator) to use with FlightGear.<br />
<br />
=== How current is the data in FlightGear compared to the real world? ===<br />
<br />
We use the same navaid and airport dataset that X-Plane uses. The current dataset can be found in the $FGROOT/Navaids/ and $FGROOT/Airports/ directories. If you have updates or corrections to the dataset, see http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html for instructions on contacting the database maintainer.<br />
<br />
=== Where is the moving map? ===<br />
<br />
A popular moving map display is avaliable under a separate project called Atlas. See http://atlas.sf.net/.<br />
<br />
=== Why don't you charge money for this? ===<br />
<br />
We could do that, since the initial download is about 132 megabytes. Especially for people who have to pay per-minute charges for internet access, buying a CD is a convenient and possibly cheaper option. Although we offer that service (see the website), we encourage other groups to redistribute it for their users, especially within an operating system distribution which makes installation even faster and easier for new users.<br />
<br />
== Compiling ==<br />
<br />
=== Why won't FlightGear compile? ===<br />
<br />
Well, that depends. First make sure you are using the appropriate versions of FlightGear, SimGear, plib, zlib. If any of the packages are out of sync with the others, compilation may fail.<br />
<br />
The FlightGear Downloads page (http://flightgear.org/Downloads/) should tell you what versions you need if you are trying to compile the latest stable release. If you are using a development snapshot, make sure all three packages are up-to-date.<br />
<br />
Also ensure that you have some implementation of OpenGL with glut support with the appropriate header files. Linux users with nVidia cards should make sure you have the latest drivers from nVidia. Other Linux users make sure you have Mesa3D (http://mesa3d.org/) and your X server installed correctly. <br />
<br />
If your problems persist, subscribe to our FlightGear-Users mailing list and let us know what problem you're having. See http://flightgear.org/mail.html for help with this.<br />
<br />
=== I'm using RedHat 7, and ...? ===<br />
<br />
Update your gcc packages. See http://redhat.com/errata/ to fix it and http://www.gnu.org/software/gcc/gcc-2.96.html for an explanation why.<br />
<br />
== Configuring ==<br />
<br />
=== How do I install new scenery? ===<br />
<br />
The scenery archive files (ie. w100n30.tar.gz) should be untarred into the Scenery/Terrain directory in your $FG_ROOT.<br />
<br />
=== How do I setup my joystick(s)? ===<br />
<br />
FlightGear should come with a helpful program called `fgjs` that can help configure your joystick. Run `fgjs` and then copy the dot file it created into your home directory or add its contents to your existing rc file.<br />
<br />
Also, see the README.Joystick file located in the FlightGear/docs-mini/ directory of the source distribution.<br />
<br />
=== What format should my personal .fgfsrc file be in? ===<br />
<br />
Your .fgfsrc file should simply be a list of command-line options with one option per line. The file is not an XML file.<br />
<br />
If you would rather use an XML configuration file, you can add something like the following in your .fgfsrc<br />
<br />
<code> --config=/path/to/my/config.xml</code><br />
<br />
Almost every option corresponds to a property, so you can choose to use whichever method best suits your needs.<br />
<br />
== Running ==<br />
<br />
=== Why do I get an error loading libopenal.so.0? ===<br />
<br />
With the default installation, libopenal.so.0 is installed into /usr/local/lib. You need to ensure that that path is listed in /etc/ld.so.conf, then run `ldconfig`as root.<br />
<br />
=== Why do I get "ssgInit called without a valid OpenGL context"? ===<br />
<br />
In short, your GL libraries are broken. So far only Red Hat 7.x users have experienced this (see http://www.redhat.com/bugzilla/show_bug.cgi?id=18867). The only solutions are possibly complicated ones: you can either change distributions (most of us prefer Debian) or upgrade/downgrade your Mesa libs.<br />
<br />
Why do some other GL applications work though? Well, Steve Baker (Mr. PLIB) has explained this on the plib-users list (http://www.geocrawler.com/lists/3/SourceForge/1867/0/6470648/).<br />
<br />
=== What happened to the panel, keyboard, etc? ===<br />
<br />
The problem is almost certainly that your base package is out of sync with FlightGear. Many configurable parts of FlightGear are defined in XML files contained in the base package.<br />
<br />
=== Why doesn't audio work properly under Irix? ===<br />
<br />
FlightGear (as of June 2001) uses the Portable Libraries (PLIB) for playing audio. The audio queue implementation of PLIB is far from optimal (in fact it's just wrong). This seems to work on other platforms quite well, but Irix expects things to be programmed properly.<br />
<br />
There has been discussion about using OpenAL (http://www.openal.org/) for the next release of both PLIB and FlightGear. Tests show that the OpenAL audio implementation does the job right, meaning that these audio problems should be gone by then. In the mean time it is best to disable audio on Irix completely (by adding --disable-sound either on the command line or to your $HOME/.fgfsrc file).<br />
<br />
=== Why is FlightGear so slow? ===<br />
<br />
FlightGear supports hardware acceleration, but it seems not to be activated. Make sure you have OpenGL libraries installed and configured properly and make sure you have the latest drivers for your video card.<br />
<br />
Linux users: If you are an nVidia user, follow their directions on getting your card working. For most other users, make sure Mesa is installed property and ensure that you have the appropriate kernel device drivers for your card. Most people (and distributions) use modules for their video card device drivers; run `lsmod` as root to see what modules are loaded. You should also make sure that you are loading the appropriate modules in your XF86Config and that your video device section is correct. Now try running an OpenGL application (other than FlightGear) to see how it performs. You can try the gears demo from Mesa or something like Quake3.<br />
<br />
=== Why is my SGI machine so slow? ===<br />
<br />
First of all, one of the most common mistakes on SGI hardware is to forget to specify --fog-fastest. On most SGI machines the EXP2 shading model isn't hardware supported resulting in frame rates below 1 frame per second (fps).<br />
<br />
FlightGear makes extensive use of the OpenGL z-buffer feature,which on most older SGI hardware is only supported in software. This means that the CPU has to do all the z-buffer calculations in addition to the other tasks FlightGear involves (flight dynamics, scenery tracking, pushing commands into the graphics queue, etc). The following features are software rendered on low-end SGI machines (like Indy and Indigo):<br />
<br />
* stencil and accumulation buffer<br />
* depth queuing and depth buffering<br />
* fogging, lighting, clipping and transforms<br />
* texturing<br />
<br />
This means that running FlightGear with the following options may not even get the desired result:<br />
<br />
<code> ./runfgfs --fog-disable --shading-flat --disable-skyblend --disable-textures --disable-clouds --disable-sound --disable-panel --enable-hud --disable-anti-alias-hud </code><br />
<br />
I could even imagine that adding --enable-wireframe doesn't work on these machines (I would be happy to be proven wrong though).<br />
<br />
On a machine like O2 the following options give an acceptable result:<br />
<code>./runfgfs --fog-fastest --disable-sound</code><br />
<br />
Since I don't have access to other SGI hardware I can't tell which options would be appropriate for your situation.<br />
<br />
=== How do I see the frame rate? ===<br />
<br />
There are two ways. One way is to hide the panel without the HUD showing. To hide the panel, use Shift+P; To make the HUD disappear, use H. The second way is to use the alternative HUD by Shift+I (Use I to switch back).<br />
=== Stuck upside down after "crash"? ===<br />
<br />
In his infinite wisdom the FlightGear Grand Master decided that planes were to valuable to allow them to be destroyed by novice pilots who seemed to crash a lot. The fact that nobody has bothered to model crashes may have something to do with it too. :-)<br />
<br />
The result of this as you have noticed is that with a little practice an ingenuity you can trim the ship to fly inverted along the ground.<br />
<br />
The quick answer is to hit Ctrl+U (with the default key bindings) to warp the plane up 1000ft.<br />
<br />
For the stubborn people out there: The trick to learn is to roll back to normal (non inverted) do this by nursing the elevator to get to about 500 feet or so and use the ailerons to snap roll 180*. This is all good avionics except for the plane not destroying itself. Remember the controls work in reverse when you are inverted and keep that airspeed up!!!<br />
<br />
=== Why does FlightGear die on startup saying "time zone reading failed"? ===<br />
<br />
This is probably caused by a line-ending problem in the timezone files. Win32 users can resolve the problem by downloading a DOS to UNIX conversion utility available at http://www.nottingham.ac.uk/~eazdluf/d2u.zip. Run as `d2u *.tab` from within the timezone directory to fix your timezone files.<br />
<br />
== Hacking ==<br />
<br />
=== What language is FlightGear written in? ===<br />
<br />
Mostly C++ with some supporting C code that's primary contained within SimGear.<br />
<br />
=== How do I design a flight dynamics model for a new aircraft? ===<br />
<br />
To define an aircraft for FlightGear's primary FDM (JSBSIM), see http://jsbsim.sf.net/.<br />
<br />
If you want a simpler FDM to work with, try your hand at YASim, an alternative FDM. For an guide on creating a YASim aircraft, look in the FlightGear base package for Aircraft-yasim/README.yasim.<br />
<br />
=== How do I import planes from Microsoft Flight Simulator? ===<br />
<br />
You can import the 3D model and textures, but the flight dynamics (the .AIR file) must be completely redone for FlightGear.<br />
<br />
If you wish to import a model made with gmax, you will need to convert it to .MDL format using Microsoft's MakeMDL SDK which is available at http://zone.msn.com/flightsim/FS02DevDeskSDK08.asp.<br />
<br />
=== How do I import BGL scenery from Microsoft Flight Simulator? ===<br />
<br />
See http://chiangt.virtualave.net/BGL/bgl_index.html.<br />
<br />
=== How do I design or modify a panel? ===<br />
<br />
See the README.xmlpanel file located in the FlightGear/docs-mini/ directory of the source distribution. This document is mirrored at http://rockfish.net/fg/README.xmlpanel.<br />
<br />
=== How do I place objects, like buildings, into FlightGear? ===<br />
<br />
First, ensure that you have v0.7.7 or later, the scenery files where you plan to place the object, the actual model, and the longitude and latitude where you plan to place the object.<br />
<br />
Now get the altitude for your point. If you don't want to calculate this yourself, start FlightGear at your location and take note of the altitude. Here's an example command:<br />
<br />
fgfs --lat=45.50 --lon=-75.73 2>&1 | tee fgfs.log<br />
<br />
The altitude is probably in feet, so divide the starting altitude by 3.28.<br />
<br />
Search the output log file for the first occurrence of the string "Loading tile" and take note of the filename. In the above example, the output line looks like:<br />
<br />
Loading tile /usr/local/Scenery/w080n40/w076n45/1712601<br />
<br />
Copy a 3D model in a format that Plib understands to the same directory as the tile file. Edit the text file in that directory consisting of the tile name with the extension ".stg". The file will already exist if there is an airport on the tile; otherwise, you can create it from scratch. In our example, the filename is:<br />
<br />
<code>/usr/local/Scenery/w080n40/w076n45/1712601.stg</code><br />
<br />
At the end of the file, add a new entry for your object, consisting of the word "OBJECT_STATIC" followed by the model name, the longitude in degrees, the latitude in degrees, the altitude in meters, and the heading in degrees. In our example the line looks like:<br />
<br />
OBJECT_STATIC Towerax.ac -75.73 45.40 60 0<br />
<br />
Save the changes to the .stg file, restart FlightGear, and enjoy.<br />
<br />
NOTE: The above information was taken from the following mailing list post: http://www.geocrawler.com/archives/3/11854/2001/6/0/5991409/. See that page if this one doesn't make sense.<br />
<br />
An alternative approach using PPE is described at http://mail.flightgear.org/pipermail/flightgear-devel/2001-December/002239.html by Norman Vine.<br />
<br />
=== Where can I learn 3D programming and how do I get involved? ===<br />
<br />
Contributing to the 2D panel doesn't require any coding at all, just a minimal knowledge of XML syntax (i.e. five minutes' worth) and good skills with drawing and/or paint programs. Every instrument on the current panel, with the partial exception of the magnetic compass, is defined entirely in XML with no custom C++ code. If you want to get started, take a look at John Check's excellent intro (http://rockfish.net/fg/README.xmlpanel).<br />
<br />
Likewise, if you want to create a 3D cockpit for FlightGear, or to create buildings, external aircraft models, etc., your help is *desperately* needed. The only rule is to go easy on the triangles -- a model with 50,000 triangles probably won't be usable in FlightGear, and one with 5,000 triangles, only marginally. If you can design a nice 3D cockpit interior for a Cessna 172 (for example) in a 3D design program such as ac3D or ppe, we have coders who will be happy to add the support code in the C++.<br />
<br />
If, on the other hand, you really want to get your hands dirty with C++ coding, you'll have to buy a good OpenGL book eventually. However, FlightGear uses a high-level library, plib, that hides most of the details of OpenGL. To get started with 3D C++ coding, you can take a look at the plib documentation and learn only as much OpenGL as you need, when you need it.<br />
<br />
=== How do I add an airport? ===<br />
<br />
You can add your airport to the $FGROOT/Airports/default.apt.gz file, but to get the airport to show up visually, you will have to rebuild the scenery around the airport. The format of the default.apt file is documented at http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html.<br />
<br />
=== How do I generate my own scenery? ===<br />
<br />
Yes, though it can be a difficult task. FlightGear's scenery generation is handled by a sister project, TerraGear. For more details, see http://terragear.org/.<br />
<br />
== Flying ==<br />
<br />
=== Where can I learn about instrument flying and navigation? ===<br />
<br />
http://www.navfltsm.addr.com/ is a very good site for learning techniques for navigation.<br />
<br />
<br />
<br />
Also see http://www.monmouth.com/~jsd/how/. This link is dead.<br />
<br />
Please see [[Understanding Navigation]]<br />
<br />
=== What is the difference between Aileron and Rudder? ===<br />
<br />
There is a bit of info on aileron vs. rudder here: http://www.monmouth.com/~jsd/how/.<br />
<br />
=== Is there support for multi-player flying? ===<br />
<br />
Yes. Both the Windows and *nix versions of FlightGear are capable of multi-player flying on FlightGear servers.<br />
<br />
Wiki: [http://wiki.flightgear.org/flightgear_wiki/index.php?title=Multiplayer_Howto Multiplayer_Howto]<br />
<br />
A map showing players aircfart online in real time is available:<br />
[http://pigeond.net/flightgear/fg_server_map.html FlightGear Online Server Map]<br />
<br />
=== Is there support for any military scenarios like dog fighting or bomb dropping? ===<br />
<br />
No, not at this time. Most of our developers are primarily interested and focused on civilian aviation. We aren't explicitly excluding these features -- we just haven't had anyone who seriously wanted to develop these areas.<br />
<br />
== FlightGear v0.7.6 ==<br />
<br />
=== Why do I get an error in viewer.cxx about `exit' being undeclared? ===<br />
<br />
This error cropped up after the release of v0.7.6. To fix the problem, add "#include <stdlib.h>" to the top of viewer.cxx.</div>Simstick