2 * Added some initial joystick support using Steve's joystick interface class.
3 This works great under Linux, but Steve's class now needs to be ported to
4 Windoze and other platforms.
5 * Also added a fall back to the GLUT joystick routines for windows (until
6 we can find better joystick support.)
9 * New version of gpc (generic polygon clipping library) from
10 http://www.cs.man.ac.uk/aig/staff/alan/software/
11 * Brakes (use "b" to toggle)
12 * Added an altitude hold module to the autopilot. Lock your current altitude
13 with "ctrl-a", "cntr-a" again will deactivate. (Also lock your current
14 heading with "ctrl-h", and again to deactivate.)
15 * Added a terrain following module ... "ctrl-t" to activate.
16 * Added an autothrottle ... "ctrl-s" to activate.
17 * Fixes so that terrain tools will work in windoze.
18 * More STL & Compiler compatibility fixes.
19 * Changes to use a Point3 class.
20 * Fixed win95/98 time problem that limited fps to about 18.3
23 * Implimented audio envelopes so that pitch of engine changes with throttle
24 * Textured moon, and rewritten/restructured Astro code.
25 * More optimizations and code cleanups. (Norman Vine, Bernie Bright, Charlie
27 * Bug fixed that was causing odd display artifacts due to a degenerate
28 fragment being created for every tile.
29 * Bug fixed that caused scenery generation to go bad (misplaced fclose on an
30 invalid file descriptor.)
31 * Code changes to support g++ 2.7 STL (from Bernie Bright)
34 * Some initial "GameGLUT" support contributed by Gary R. Van Sickle
35 (tiberius@braemarinc.com)
36 * Tracked down and eliminated some memory access type bugs that were
37 causing segfaults on some platforms, with some compilers using various
39 * Assorted code optimizations submitted by Norman Vine.
42 - Created a new directory Simulator/Airports/ to handle airport data
44 - Created Simulator/Object/ to handle basic rendering objects
45 * Panel code update from Friedemann Reinhard (use --enable-panel to activate)
46 * Contributions from Bernie Bright
47 - Created some new classes to enable pointers-to-functions and
48 pointers-to-class-methods to be treated like objects. These objects
49 can be registered with fgEVENT_MGR.
50 - File "Include/fg_callback.hxx" contains the callback class defns.
51 - Modified fgEVENT and fgEVENT_MGR to use the callback classes. Also
52 some minor tweaks to STL usage.
53 - Added file "Include/fg_stl_config.h" to deal with STL portability
54 issues. Added an initial config for egcs (and probably gcc-2.8.x).
55 Don't have access to Visual C++ so I've left that for someone else.
56 - This file is influenced by the stl_config.h file delivered with egcs.
57 - Added "Include/auto_ptr.hxx" which contains an implementation of the
58 STL auto_ptr class which is not provided in all STL implementations
59 and is needed to use the callback classes.
60 - Deleted fgLightUpdate() which was just a wrapper to call
62 - Modified fg_init.cxx to register two method callbacks in place of the
63 old wrapper functions.
64 - The new classes in libmisc.tgz define a stream interface into zlib.
65 I've put these in a new directory, Lib/Misc. Feel free to rename it
66 to something more appropriate. However you'll have to change the
67 include directives in all the other files. Additionally you'll have
68 add the library to Lib/Makefile.am and Simulator/Main/Makefile.am.
70 The StopWatch class in Lib/Misc requires a HAVE_GETRUSAGE autoconf
71 test so I've included the required changes in config.tgz.
73 There are a fair few changes to Simulator/Objects as I've moved
74 things around. Loading tiles is quicker but thats not where the delay
75 is. Tile loading takes a few tenths of a second per file on a P200
76 but it seems to be the post-processing that leads to a noticeable
77 blip in framerate. I suppose its time to start profiling to see where
80 I've included a brief description of each archives contents.
85 C++ stream interface into zlib.
86 Taken from zlib-1.1.3/contrib/iostream/.
87 Minor mods for STL compatibility.
88 There's no copyright associated with these so I assume they're
93 FlightGear input stream using gz_ifstream. Tries to open the
94 given filename. If that fails then filename is examined and a
95 ".gz" suffix is removed or appended and that file is opened.
98 A simple timer for benchmarking. Not used in production code.
99 Taken from the Blitz++ project. Covered by GPL.
103 Some simple string manipulation routines.
106 Load airports database using fgstream.
107 Changed fgAIRPORTS to use set<> instead of map<>.
108 Added bool fgAIRPORTS::search() as a neater way doing the lookup.
109 Returns true if found.
112 Modified fgStarsInit() to load stars database using fgstream.
115 Modified fgObjLoad() to use fgstream.
116 Modified fgMATERIAL_MGR::load_lib() to use fgstream.
117 Many changes to fgMATERIAL.
118 Some changes to fgFRAGMENT but I forget what!
121 * Stars added in 8 stages as sky gets darker for a smoother more realistic
123 * rewrote star loader to significantly improve load times.
124 * Tweaked sky brightness and dawn/dusk colors.
125 * Fixed a small problem with moon rendering.
126 * Fog color tries to track the sky color at the center of view in sunrise
127 and sunset situations.
128 * Optimizations from Norman Vine
129 * Code fixes and tweaks from Charlie Hotchkiss.
130 * Added an --enable/disable-sound option.
131 * Added a pause key "p"
132 * Added command line options to specify initial position and orientation.
133 * Added command line option to start in paused or unpaused state.
137 * Various HUD intensities so you can find something that is readable for the
138 current conditions and lighting.
139 * Tie visibility to far clip plane & view frustum culling so reducting
140 visibility can increase frame rates by increasing what is culled.
141 * Fixed stupid bug with misplaced initial position.
142 * Hopefully fixed a bug when parsing system.fgfsrc on windoze.
145 * HUD updates from Charlie Hotchkiss (ladder number rotate w/ ladder, control
146 position indicators are back)
147 * Only draw the PUI cursor if Mesa/Glide/Fullscreen.
149 * Calculate the model view transformation matrix once per tile per iteration.
150 Then glLoadMatrixd() it for each fragment rather than calling push(),
152 * Added a basic splash screen.
153 * Added support for switching between fullscreen and window mode for
155 * added an enable/disable splash screen option
156 * added an enable/disable intro music option
157 * added an enable/disable instrument panel option
158 * added an enable/disable mouse pointer option
159 * Ground collision detection. You can now land or test for collision with
161 * Converted angle of attack scale into a radio altimeter.
164 * Managment of multiple textures
165 * Incorporated Friedemann Reinhard's initial panel code.
166 * Fog mode is now GL_FOG_EXP2 instead of GL_FOG_LINEAR
167 * Build the non-shared pieces of the FG sim as static libs.
170 * Incorporated Steve Baker's PUI user interface library written
171 entirely on top of OpenGL
172 * Incorporated Steve Baker's Audio library which currently only
173 supports Linux, but a win32 port is very close to being done.
174 * Sort object fragments by material property before rendering. This
175 will be a big help to performance when we start including objects
176 with a wide variety of material properties and textures.
177 * Overlapped scenery tiles to reduce the chance of an occasional
178 floating point precission induced gaps.
179 * Fixed a bug in zlib exposed by Borland Win32 compiler.
180 * Impose a maximum triangle area during scenery generation so even
181 very flat areas will get split into a few smaller sub triangles.
182 * Fine grained (fragment level) view frustum culling.
183 * view transformation optimizations -- Norman Vine.
184 * Fixed polygon winding problem in scenery generation, so all
185 tri-strips are wound counter clockwise (opengl default).
188 * Course (per tile) view frustum culling.
189 * Added a command line option to specify --fg-root which will override
191 * Hard coded default locations for FG_ROOT for situations when nothing
192 is specified. Unix = /usr/local/lib/FlightGear Win32 = \FlightGear
193 * Restructured the command line processing code so that it can process
194 these sames comands (one per line) out of a config file.
195 * Added a command line option to specify field of view. This is
196 adjustable at run time using "X / x". Supporting code contributed
200 * Complete C++ re-write of the HUD section.
201 * Miscellaneous bug fixes and tweaks.
204 * Added an option to enable/disable wireframe rendering.
205 * Added an option to enable/disable fog/haze.
206 * Added an option to enable/disable sky blending.
207 * Added an option to select smooth/flat polygon shading.
208 * Added an option to enable full-screen mode.
209 * Added a visual frame rate counter on the HUD. (Contributed by Durk Talsma)
210 * Autopilot updates (Jeff Goeke-Smith)
211 * Added an option to control the number of neighboring tiles that are drawn
214 * Fixed a horible bug that cause the time to be *WAY* off when
215 compiling with the CygWin32 compiler.
216 * Wrap up zlib so we can conditionally compile back in normal behavior
217 on systems that have trouble building zlib.
218 * Minor adjustment to texture coordinate generation to reduce texture
220 * Added a command line option to enable/disable texture maps
221 * Minor transformation adjustments to try to keep scenery tiles closer
222 to (0, 0, 0) GLfloats run out of precision at the distances we need
223 to model the earth, but we can do a bunch of pre-transformations
224 using double floats and then cast to GLfloat once everything is
225 close in where we have less precision problems.
226 * command line option to set starting position by airport ID
227 * Cleaned up initialization sequence to eliminate interdependencies
228 between sun position, lighting, and view position. This creates a
229 valid single pass initialization path.
230 * use already calculated LaRCsim values to create the roll/pitch/yaw
231 transformation matrix
234 * material properties bug fixed when rendering terrain.
235 * bug in sky color generation fixed.
236 * bug in fog color generation fixed.
237 * zlib on the fly decompression/compression support.
238 * more code reorganization and clean ups.
239 * a fixed up 30 arcsec DEM file preprocessor. World wide DEM's are
240 available in this format.
243 * Simple autopilot heading hold contributed by
244 Jeff Goeke-Smith <jgoeke@voyager.net>
245 * More code reorganization and clean ups.
248 * Many autoconf cleanups and tweaks
249 * make and make install work in unix
250 * make works for cygnus win32 (but not install yet)
251 * make dist now works
252 * added the Tools directory into the main source tree
255 * Gnu automake/autoconf/libtool make system
256 * Initial texture support