ÿWPC ô+Ó  ÓFlightGearÌÓ  ÓÌÓ  Ó.An€Open-Source€Flight€Simulator€ProjectÌÓ  ÓÌÓ  Ó.http://www.flightgear.orgÌÓ  ÓÌÓ  Ó.http://sourceforge.net/projects/flightgearÌÓ  ÓÌÓ  ÓOverviewÌÓ  ÓÌÓ  Ó.Flightgear€is€based€on€the€University€of€Illinois€at€Urbana-Champaign'sÌÓ  Ó.LaRCsim€project,€which€was€originally€created€to€test€inflight€icing€solutions.ÌÓ  Ó.ò òhttp://www.aae.uiuc.edu/m-selig/apasim/Aircraft-uiuc.htmló óÌÓ  ÓÌÓ  Ó.In€1997€Curt€Olsen€began€adapting€the€UIUC€code€to€begin€the€FlightGearÌÓ  Ó.project.€€The€project's€version€history€is€online€at:ÌÓ  Ó.ò òhttp://www.flightgear.org/news.htmó ólÌÓ  ÓÌÓ  Ó.The€project€is€open-source€and€under€the€GNU€General€Public€License.ÌÓ  Ó.ò òhttp://www.gnu.org/copyleft/gpl.html#SEC1ó óÌÓ  ÓÌÓ  Ó.The€project€is€cross-platform€and€has€been€running€on€Linux,€FreeBSD,ÌÓ  Ó.Solaris,€MacOS,€IRIX,€Cygwin€and€Win32€platforms€(and€maybe€others).ÌÓ  ÓÌÓ  Ó.The€simulator€application€has€hundreds€of€available€command€line€switches,ÌÓ  Ó.and€the€aircraft€aerodynamics,€cockpits€and€3D€models€are€all€defined€inÌÓ  Ó.XML-based€text€files.€€You€can€chose€between€three€Flight€Dynamics€Models:ÌÓ  Ó.LaRCsim,€JSBSim€and€YasimÌÓ  ÓÌÓ  ÓÌÓ  ÓProject€ArchitectureÌÓ  Óò òó óÌÓ  Ó.OpenGLÌÓ  Óò òó óÌÓ  Ó.The€underlying€layer€is€OpenGL,€an€open€source,€high€performance€graphicsÌÓ  Ó.library,€created€by€Silicon€Graphics€and€based€on€their€IRIS€GL€API.€€It€is€similarÌÓ  Ó.to€DirectX..€€To€run€FlightGear,€or€even€compile€it,€you€need€an€OpenGL-€ÌÓ  Ó.compatible€video€card€and€associated€drivers.€€Right€now,€nVIDIA€has€the€..best-supported€high-end€video€cards€for€linux€users.ÌÓ  ÓÌÓ  Ó.OpenGL:.ò òhttp://www.opengl.org/ó óÌÓ  Ó.nVIDIA:.ò òhttp://www.nvidia.com/ó óÌÓ  ÓÌÓ  Ó.There€are€two€usual€ways€to€get€OpenGL.€€Commonly,€linux€distributions€use€Mesa,ÌÓ  Ó.a€free€implementation€of€OpenGL.€€NVIDIA€supplies€its€own€version€of€the€ÌÓ  Ó.OpenGL€libraries€for€use€with€their€hardware.€€Caution:€€If€you€have€more€thanÌÓ  Ó.one€version€of€the€OpenGL€libs€installed,€make€sure€your€symlinks€point€to€theÌÓ  Ó.ones€made€for€your€video€card!ÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  Ó.ò òGLUTó óÌÓ  Óò òó óÌÓ  Ó.GLUT€is€the€OpenGL€Utility€Kit.€€It€is€a€platform-independent€API€which€providesÌÓ  Ó.simplified€windowing€system€routines.€€GLUT€can€be€installed€from€source€(not€forÌÓ  Ó.the€faint-of-heart€as€it€requires€tinkering€with€the€makefiles),€or€from€the€RPMÌÓ  Ó.package€MesaDemos.ÌÓ  ÓÌÓ  Ó.ò òZLIBó óÌÓ  Óò òó óÌÓ  Ó.ZLIB€is€a€"massively€spiffy€yet€delicately€unobtrusive€compression€library".€€YouÌÓ  Ó.probably€already€have€it.€€If€not,€try€rpmfind€or€ò òhttp://www.gzip.org/zlibó ó€.ÌÓ  ÓÌÓ  Ó.ò òMetakitó óÌÓ  Óò òó óÌÓ  Ó.Metakit€is€an€"efficient€embedded€database€library€with€a€small€footprint",€and€free.€€.Get€it€at€rpmfind€or€at€http://www.equi4.com/metakit.ÌÓ  ÓÌÓ  Ó.ò òPLIBó óÌÓ  Óò òó óÌÓ  Ó.PLIB€is€"Steve's€Portable€Games€Library",€a€gaming€API.€€It€includes€routines€forÌÓ  Ó.sound€effects,€music,€3D€drawing,€fonts,€GUI,€networking€and€assorted€math€andÌÓ  Ó.utility€routines€for€gaming.€€You€should€download€the€latest€source€from€ÌÓ  Ó.ò òhttp://plib.sourceforge.netó ó€and€build€it.€€This€is€your€first€chance€to€see€how€..well€your€OpenGL€library€installation€went.ÌÓ  ÓÌÓ  Ó.ò òSimGearó óÌÓ  Óò òó óÌÓ  Ó.SimGear€has€been€developed€in€conjunction€with€FlightGear,€and€supplies€theÌÓ  Ó.libraries€which€are€basic€to€all€real-time,€real-world,€3D€simulation.€€It€contains€math€..routines,€XML€input/output,€a€property-tree€system€of€maintaining€global€data,€serial€..and€network€I/O,€magnetic€variation€models,€atmospheric€models,€scenery€and€ÌÓ  Ó.vehicle€rendering.€€SimGear€is€under€active€development,€so€it's€best€to€downloadÌÓ  Ó.and€build€the€latest€CVS€source.€€ò òhttp://www.simgear.org/ó óÌÓ  ÓÌÓ  Ó.ò òFlightGearó óÌÓ  Óò òó óÌÓ  Ó.Finally€we€get€to€FlightGear.€€It's€also€under€active€development,€so€download€andÌÓ  Ó.build€the€bleeding-edge€source.€€ò òhttp://www.flightgear.org/Downloads/ó óÌÓ  ÓÌÓ  Ó.It's€recommended€that€FlightGear€be€installed€in€ò òusr/local/FlightGear.ó óÌÓ  Ó.That's€fine,€but€keep€in€mind€that€all€the€XML€configuration€files€live€in€root€space,ÌÓ  Ó.so€you'll€need€to€be€root€every€time€you€edit€them,€which€will€be€often.€€Being€aÌÓ  Ó.KDE€guy,€I€have€two€desktop€icons,€one€of€which€points€toÌÓ  Ó.kdesu€"konqueror€file:/"€and€one€which€points€to€kdesu€kedit€.ÌÓ  ÓÌÓ  Ó.ò òThe€base€packageó óÌÓ  Óò òó óÌÓ  Ó.The€base€package€contains€data€files,€including€many€megabytes€of€graphics€files,ÌÓ  Ó.called€textures,€configuration€files,€and€navigational€data.€ÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  ÓJoysticks€in€LinuxÌÓ  ÓÌÓ  Ó.Not€much€I€can€say€except€"good€luck!"€€The€information€is€out€there,€but€it'sÌÓ  Ó.cleverly€hidden€at:ÌÓ  Ó.ò òhttp://www.linux-usb.org/USB-guide/x194.htmló óÌÓ  Ó.http://atrey.karlin.mff.cuni.cz/~vojtech/input/ÌÓ  Ó.http://eo.yifan.net/users/g/jniehof/linuxjoy.htmlÌÓ  Ó.http://www.freelink.cx/joystick.htmlÌÓ  ÓÌÓ  Ó.Once€you€think€you€have€the€joystick€set€up€right,€run€the€FlightGear€utilityÌÓ  Ó.called€ò ò/usr/local/FlightGear/bin/fgjsó ó€to€check€it€out.ÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  ÓRunning€FlightGearÌÓ  ÓÌÓ  Ó.ò òfgfsó óÌÓ  Óò òó óÌÓ  Ó.The€main€application€is€/usr/local/FlightGear/bin/fgfs.€€When€fgfs€starts,ÌÓ  Ó.it€looks€in€your€home€directory€for€a€configuration€dot-file€called€ò ò.fgfsrcó ó€.ÌÓ  Ó.This€is€the€place€to€keep€your€command€line€arguments.€€This€file€is€edited€so€oftenÌÓ  Ó.that€you€should€consider€keeping€an€icon€on€your€desktop€which€points€toÌÓ  Ó.ò òkedit€/home/ó óò ò/.fgfsrc€ó ó.ÌÓ  ÓÌÓ  Ó.I€recommend€running€ò òfgfs€ó ófrom€a€console€at€first,€and€also€if€you€do€a€lot€of€editing€..of€configuration€files.€€It€provides€a€òòlotóó€of€feedback€to€stdout,€which€you'll€need€whenÌÓ  Ó.your€changes€don't€parse€right!ÌÓ  ÓÌÓ  Ó.Here's€a€sample€ò ò.fgfsrcó ó€file:ÌÓ  ÓÌÓ  Ó.ò ò--fg-root=/usr/local/FlightGearó óÌÓ  Ó€€€€€€--aircraft=737ÌÓ  Óò ò€€€€€€--prop:/engines/engine/running=trueó óÌÓ  Óò ò€€€€€€--prop:/engines/engine[1]/running=trueó óÌÓ  Óò ò€€€€€€--enable-hudó óÌÓ  Óò ò€€€€€€--disable-cloudsó óÌÓ  Óò ò€€€€€€--start-date-gmt=2003:01:20:16:00:00ó óÌÓ  ÓÌÓ  ÓÌÓ  Ó.A€useful€list€of€arguments€can€be€found€at:€........ò òhttp://www.flightgear.org/Docs/InstallGuide/ó óÌÓ  Ó..getstartch4.html#x9-330004.4ÌÓ  Ó.As€you€can€see,€just€about€everything€in€the€simulator€can€be€turned€on€or€off,ÌÓ  Ó.and€you€can€start€flying€anyplace€on€earth,€at€any€altitude,€at€any€time€of€day,€inÌÓ  Ó.any€weather.ÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  ÓÌÓ  Ó.ò òXML€configuration€filesó óÌÓ  Óò òó óÌÓ  Ó.Note€the€argument€--aircraft=737€in€the€above€dot-file.€€This€instructs€fgfs€toÌÓ  Ó.look€for€a€file€called€ò ò/usr/local/FlightGear/Aircraft/737-set.xmló ó€.ÌÓ  Ó.This€is€the€top-level€configuration€file€for€the€737€model.€€In€it€is€defined€the€flightÌÓ  Ó.dynamics€model€(FDM)€to€use,€the€path€to€the€aerodynamics€model,€and€the€pathsÌÓ  Ó.to€other€XML€files€which€configure€sound,€heads-up€display,€cockpit€instrumentation,€..autopilot,€3D€model,€etc.ÌÓ  ÓÌÓ  Ó.In€the€case€of€the€737€the€FDM€used€is€JSBSim.€€The€aerodynamics€model€isÌÓ  Ó.defined€at€ò ò/usr/local/FlightGear/Aircraft/737/737.xmló ó€.€€This€file€definesÌÓ  Ó.the€airplane's€metrics,€control€system,€aerodynamic€coefficients,€and€the€pathname€..of€the€engine€file€(in€this€case€ò ò/usr/local/FlightGear/Engine/CFM56_sim.xmló ó).€€ÌÓ  ÓÌÓ  Ó.The€sound€configuration€file,.ò ò/usr/local/FlightGear/Aircraft/ó óÌÓ  Ó.737/737-sound.xml,€associates€various€sounds€with€control€movements€andÌÓ  Ó.flight€events.ÌÓ  ÓÌÓ  Ó.The€HUD€configuration€file,€ò ò/usr/local/FlightGear/Huds/737/default.xmló ó,ÌÓ  Ó.offers€excellent€control€over€the€heads-up€display.ÌÓ  ÓÌÓ  Ó.The€instrument€panel€configuration€file,€ò ò/usr/local/FlightGear/Aircraft/ó óÌÓ  Ó.737/Panels/737-trans-mini-panel.xml€in€this€case,€defines€the€layout€ofÌÓ  Ó.the€panel€and€the€pathnames€to€the€various€instruments€themselves.€€For€instance,ÌÓ  Ó.the€first€instrument,€ò òasi-450-knot.xmló ó,€is€a€standard€Boeing€450-knot€airspeedÌÓ  Ó.indicator.€€The€file€defines€which€graphics€layers€are€used€to€draw€the€instrument,ÌÓ  Ó.and€how€the€needles€are€supposed€to€move.€€If€you€are€handy€with€the€Gimp,€youÌÓ  Ó.can€create€your€own€instruments.€€The€graphics€are€in€Silicon€Graphics'€RGBÌÓ  Ó.format,€also€known€as€SGI€format.ÌÓ  Óò òó óÌÓ  Óò òó óÌÓ  Óò òHelping€outó óÌÓ  ÓÌÓ  Ó.Just€by€installing€and€using€FlightGear€you€can€help€by€reporting€any€configurationÌÓ  Ó.problems,€porting€problems,€compiler€problems,€hardware€problems,€etc.€€You€canÌÓ  Ó.also€create€your€own€aircraft€and€get€them€added€to€the€base€package.€€I€suggestÌÓ  Ó.lurking€on€the€mailing€lists€first:€€see€€ò òhttp://www.flightgear.org/mail.html€.ó óÌÓ  ÓÌÓ  Óò ò.ó óTo€make€your€own€3D€models€you'll€need€an€editor€like€Blender€....(ò òhttp://www.blender3d.com/ó ó)€or€PPE€(the€Pretty€Poly€Editor,€....ò òhttp://prettypoly.sourceforge.net/ó ó)€.ÌÓ  ÓÌÓ  Ó.Projects€in€the€works€include€adding€better€turbine€engine€support,€improving€terrain€..and€sky€rendering,€multiplayer€support,€expanded€networking€support,€possibly€..replacing€Plib€with€another€gaming€library,€adding€new€airplanes,€and€of€course,€..documentation.€€To€contribute€code€you'll€have€to€install€and€learn€how€to€use€CVS.€ÌÓ  ÓÌ