1
0
Fork 0
Commit graph

234 commits

Author SHA1 Message Date
curt
747bc7c6b4 Changes contributed by Bernie Bright <bbright@c031.aone.net.au>
- The new classes in libmisc.tgz define a stream interface into zlib.
   I've put these in a new directory, Lib/Misc.  Feel free to rename it
   to something more appropriate.  However you'll have to change the
   include directives in all the other files.  Additionally you'll have
   add the library to Lib/Makefile.am and Simulator/Main/Makefile.am.

   The StopWatch class in Lib/Misc requires a HAVE_GETRUSAGE autoconf
   test so I've included the required changes in config.tgz.

   There are a fair few changes to Simulator/Objects as I've moved
   things around.  Loading tiles is quicker but thats not where the delay
   is.  Tile loading takes a few tenths of a second per file on a P200
   but it seems to be the post-processing that leads to a noticeable
   blip in framerate.  I suppose its time to start profiling to see where
   the delays are.

   I've included a brief description of each archives contents.

Lib/Misc/
  zfstream.cxx
  zfstream.hxx
    C++ stream interface into zlib.
    Taken from zlib-1.1.3/contrib/iostream/.
    Minor mods for STL compatibility.
    There's no copyright associated with these so I assume they're
    covered by zlib's.

  fgstream.cxx
  fgstream.hxx
    FlightGear input stream using gz_ifstream.  Tries to open the
    given filename.  If that fails then filename is examined and a
    ".gz" suffix is removed or appended and that file is opened.

  stopwatch.hxx
    A simple timer for benchmarking.  Not used in production code.
    Taken from the Blitz++ project.  Covered by GPL.

  strutils.cxx
  strutils.hxx
    Some simple string manipulation routines.

Simulator/Airports/
  Load airports database using fgstream.
  Changed fgAIRPORTS to use set<> instead of map<>.
  Added bool fgAIRPORTS::search() as a neater way doing the lookup.
  Returns true if found.

Simulator/Astro/
  Modified fgStarsInit() to load stars database using fgstream.

Simulator/Objects/
  Modified fgObjLoad() to use fgstream.
  Modified fgMATERIAL_MGR::load_lib() to use fgstream.
  Many changes to fgMATERIAL.
  Some changes to fgFRAGMENT but I forget what!
1998-09-01 19:02:53 +00:00
curt
fa1a9ad190 Changes to event manager from Bernie Bright. 1998-08-29 13:09:25 +00:00
curt
48ea415f69 Added new cockpit code from Friedemann Reinhard
<mpt218@faupt212.physik.uni-erlangen.de>
1998-08-28 18:14:39 +00:00
curt
283a23159a Contributions from Bernie Bright <bbright@c031.aone.net.au>
- use strings for fg_root and airport_id and added methods to return
  them as strings,
- inlined all access methods,
- made the parsing functions private methods,
- deleted some unused functions.
- propogated some of these changes out a bit further.
1998-08-27 17:01:55 +00:00
curt
9d608dd593 Shuffled $FG_ROOT file layout. 1998-08-25 20:53:24 +00:00
curt
6594fe1067 Directory reshuffling. 1998-08-25 16:59:08 +00:00
curt
f8e23d2fbb Moved airports.* to ../Airports/ 1998-08-25 15:34:54 +00:00
curt
d8dec77d3f Renamed runfg.bat.in runfgfs.bat.in 1998-08-24 20:33:48 +00:00
curt
8e294aa789 runfg.in renamed to runfgfs.in 1998-08-24 20:32:40 +00:00
curt
ac2c904dc6 Added i/I to toggle full vs. minimal HUD.
Added a --hud-tris vs --hud-culled option.
Moved options accessor funtions to options.hxx.
1998-08-24 20:11:12 +00:00
curt
e33dbca814 Attempting to iron out seg faults and crashes.
Did some shuffling to fix a initialization order problem between view
position, scenery elevation.
1998-08-22 14:49:55 +00:00
curt
3eb6f1d640 Reshuffled some of the code in and around views.[ch]xx 1998-08-20 20:32:31 +00:00
curt
f1b0e32e37 Added GameGLUT support. 1998-08-20 15:10:33 +00:00
curt
b15b1909c6 Master volume from 30% -> 80% 1998-08-12 21:01:47 +00:00
curt
fcdc2cf4c9 Added a local routine to update lighting params every frame when time is
accelerated.
1998-08-05 00:19:33 +00:00
curt
c2a987d354 Updated to be smarter about finding $FG_ROOT. 1998-08-03 22:16:42 +00:00
curt
e81eeba64f Output position & orientation when pausing.
Eliminated libtool use.
Added options to specify initial position and orientation.
Changed default fov to 55 degrees.
Added command line option to start in paused or unpaused state.
1998-07-30 23:48:24 +00:00
curt
6d427da8d8 Added a pause command "p"
Fixed some initialization order problems between pui and glut.
Added an --enable/disable-sound option.
1998-07-27 18:41:23 +00:00
curt
009c34bd23 Set near clip plane to 0.5 meters when close to the ground. Also, let the view get a bit closer to the ground before hitting the hard limit. 1998-07-24 21:56:59 +00:00
curt
f6f21702ce Debugging output tweaks.
Cast glGetString to (char *) to avoid compiler errors.
Optimizations to fgGluLookAt() by Norman Vine.
1998-07-24 21:39:08 +00:00
curt
0347fcc173 Clear to adjusted fog color (for sunrise/sunset effects)
Make call to fog sunrise/sunset adjustment method.
Add a stdc++ library bug work around to fg_init.cxx
1998-07-22 21:40:43 +00:00
curt
47beea24fb Strip out \r when parsing config file in case we are on a windoze system. 1998-07-22 01:27:03 +00:00
curt
a6f9590baf Tweaked color buffer clearing defaults. We clear the color buffer if we
are doing textures.  Assumptions:  If we are doing textures we have hardware
support that can clear the color buffer for "free."  If we are doing software
rendering with textures, then the extra clear time gets lost in the noise.
1998-07-20 12:49:44 +00:00
curt
8a7fc0d34e "H" / "h" now control hud brightness as well with off being one of the
states.
Better checking for xmesa/fx 3dfx fullscreen/window support for deciding
  whether or not to build in the feature.
Translucent menu support.
HAVE_AUDIO_SUPPORT -> ENABLE_AUDIO_SUPPORT
Use fork() / wait() for playing mp3 init music in background under unix.
Changed default tile diameter to 5.
1998-07-16 17:33:34 +00:00
curt
4abe562805 Wrote access functions for current fgOPTIONS. 1998-07-13 21:00:09 +00:00
curt
8767a84ffc Clear color buffer if drawing wireframe.
When specifying and airport, start elevation at -1000 and let the system
position you at ground level.
1998-07-13 15:32:37 +00:00
curt
330c78ac73 Added ground collision detection.
Did some serious horsing around to be able to "hug" the ground properly
  and still be able to take off.
Set the near clip plane to 1.0 meters when less than 10 meters above the
  ground.
Did some serious horsing around getting the initial airplane position to be
  correct based on rendered terrain elevation.
Added a little cheat/hack that will prevent the view position from ever
  dropping below the terrain, even when the flight model doesn't quite
  put you as high as you'd like.
1998-07-12 03:14:42 +00:00
curt
0099b307bc polar3d.h renamed to polar3d.hxx
vector.h renamed to vector.hxx
updated audio support so it waits to create audio classes (and tie up
  /dev/dsp) until the mpg123 player is finished.
1998-07-08 14:45:07 +00:00
curt
f17b1af1e3 Added an enable/disable splash screen option.
Added an enable/disable intro music option.
Added an enable/disable instrument panel option.
Added an enable/disable mouse pointer option.
Added using namespace std for compilers that support this.
1998-07-06 21:34:17 +00:00
curt
6100c26cd6 Initial revision. 1998-07-06 02:42:36 +00:00
curt
72819bbe85 Added support for switching between fullscreen and window mode for
Mesa/3dfx/glide.

Added a basic splash screen.  Restructured the main loop and top level
initialization routines to do this.

Hacked in some support for playing a startup mp3 sound file while rest
of sim initializes.  Currently only works in Unix using the mpg123 player.
Waits for the mpg123 player to finish before initializing internal
sound drivers.
1998-07-06 02:42:02 +00:00
curt
2be63aa0fb Add my own version of gluLookAt() (which is nearly identical to the
Mesa/glu version.)  But, by calculating the Model View matrix our selves
we can save this matrix without having to read it back in from the video
card.  This hopefully allows us to save a few cpu cycles when rendering
out the fragments because we can just use glLoadMatrixd() with the
precalculated matrix for each tile rather than doing a push(), translate(),
pop() for every fragment.

Panel status defaults to off for now until it gets a bit more developed.

Extract OpenGL driver info on initialization.
1998-07-04 00:52:22 +00:00
curt
353ec70f8c Replaced "extern displayInstruments" with a entry in fgOPTIONS.
Don't change the view port when displaying the panel.
1998-06-27 16:54:32 +00:00
curt
e461053c78 Refined conditional audio support compilation.
Moved texture parameter setup calls to ../Scenery/materials.cxx
#include <string.h> before various STL includes.
Make HUD default state be enabled.
1998-06-17 21:35:10 +00:00
curt
cc0925be18 Tweaked fog command line options. 1998-06-13 00:40:32 +00:00
curt
28ceab0457 Pui -> PUI, Gui -> GUI. 1998-06-12 14:27:25 +00:00
curt
9ebfc12526 Added support for Pui/Gui.
Converted fog to GL_FOG_EXP2.
Link to static simulator parts.
Update runfg.bat to try to be a little smarter.
1998-06-12 00:57:38 +00:00
curt
b4e53ba51d Minor sound/startup position tweaks. 1998-06-08 17:57:04 +00:00
curt
c8a5e3ebb6 A bit of fiddling with audio ... 1998-06-05 18:18:40 +00:00
curt
88ceb3dbb8 Tweaking sound library usage. 1998-06-03 22:01:06 +00:00
curt
476d5e73b2 Updated to compile in audio support if OSS available.
Updated for new version of Steve's audio library.
STL includes don't use .h
Small view optimizations.
1998-06-03 00:47:11 +00:00
curt
a6c2da9e4e Added Linux audio support.
avoid glClear( COLOR_BUFFER_BIT ) when not using it to set the sky color.
map stl tweaks.
1998-06-01 17:54:40 +00:00
curt
d6f20aa8be Tweaked material properties & lighting a bit in GLUTmain.cxx.
Read airport list into a "map" STL for dynamic list sizing and fast tree
based lookups.
1998-05-29 20:37:19 +00:00
curt
2cd509d3de View optimizations by Norman Vine. 1998-05-27 02:24:05 +00:00
curt
26757b73b2 Derived file "Makefile.in" removed from version control. 1998-05-23 14:18:28 +00:00
curt
dcaf622ce7 Modifications to use the new fgEVENT_MGR class. 1998-05-22 21:28:52 +00:00
curt
081b63cfbb Tweaked smooth shaded texture lighting properties.
Converted fgLIGHT to a C++ class.
1998-05-20 20:51:33 +00:00
curt
fdc94bd13a First pass at view frustum culling now operational. 1998-05-17 16:59:03 +00:00
curt
65cc9a9e66 C++ - ified views.[ch]xx
Shuffled some additional view parameters into the fgVIEW class.
Changed tile-radius to tile-diameter because it is a much better
  name.
Added a WORLD_TO_EYE transformation to views.cxx.  This allows us
 to transform world space to eye space for view frustum culling.
1998-05-16 13:08:34 +00:00
curt
fb69df5880 Added limits to fov. 1998-05-16 13:05:21 +00:00