]> git.mxchange.org Git - flightgear.git/log
flightgear.git
22 years agoPatch from Julian Foad:
david [Wed, 31 Jul 2002 16:44:27 +0000 (16:44 +0000)]
Patch from Julian Foad:

    When the scroll bar slider is dragged, the list scrolls only far enough to see all items; only the arrow buttons can scroll it so far that the last item goes to the top of the view.
    Fix scroll bar proportional size: was wrong when the list was only a little longer than the visible area.
    Minor fixes such as "delete files[i];" -> "delete[] files[i];" (where the item being deleted is an array of characters) and removal of global variables.
    Smooth scrolling when dragging the slider: one item at a time, rather than one tenth of the list at a time.
    Fix a bug that would have occurred if instantiated with arrows=2.
    Sort properties primarily by name and then by numerical index order, rather than a simple ASCII string order.  E.g. "js[1]", "js[2]", "js[10]" rather than "js[1]", "js[10]", "js[2]".
    Avoid crashing if the selected property path does not exist; display an empty list instead.  This cannot happen when the property picker is working properly, but did happen due to missing indices prior to this patch, and could happen if the user is allowed to type a pathname, as in the http and telnet interfaces.
    Fix truncation of strings to PUSTRING_MAX: was wrong when string length was exactly 80.
    Fix: move the scroll bar to the top each time a new list is displayed.  It was left at its previous position, while the top of the new list was displayed, not corresponding to the slider.
    Use getDisplayName instead of duplicated code: gives a better decision on whether to display the index, and avoids invalid property paths being generated which would previously crash find_props().
    Replace unnecessary node lookups by name with direct access: tidier and more efficient.  E.g. "getValueTypeString (node->getNode(name.c_str()))" -> "getValueTypeString (child)".

22 years agoCameron Moore:
curt [Tue, 30 Jul 2002 16:17:16 +0000 (16:17 +0000)]
Cameron Moore:
* Added --atc610x, --(dis|en)able-random-objects, --telnet
* Updated --wind
* Removed --clouds-asl

22 years agoA couple fixes to the network fdm interface.
curt [Tue, 30 Jul 2002 04:37:16 +0000 (04:37 +0000)]
A couple fixes to the network fdm interface.

22 years agoAdded formatted time to property tree for use by 'virtual' instruments.
curt [Tue, 30 Jul 2002 02:56:42 +0000 (02:56 +0000)]
Added formatted time to property tree for use by 'virtual' instruments.

22 years agoVarious tweaks, enhancements, and optimizations surrounding tile paging
curt [Mon, 29 Jul 2002 05:07:38 +0000 (05:07 +0000)]
Various tweaks, enhancements, and optimizations surrounding tile paging
(specifically freeing tiles when we need to remove them from the tile cache.)

22 years agoPatch from Melchior Franx to restore fog on tdfx cards like the Voodoo3.
david [Sat, 27 Jul 2002 22:31:40 +0000 (22:31 +0000)]
Patch from Melchior Franx to restore fog on tdfx cards like the Voodoo3.

22 years agoCreate a top-level branch in each tile for random objects with the
david [Sat, 27 Jul 2002 14:29:57 +0000 (14:29 +0000)]
Create a top-level branch in each tile for random objects with the
name "random-objects".

Put the random objects for each tile inside a top-level
ssgRangeSelector with a maximum range of 20km.  This saves a lot of
range tests for distant tiles, and gives about a 10% framerate boost
on my card at 1000ft AGL (possibly more on faster cards).

22 years agoNo need to additionally ref() subcomponents of a tree. Only the root node
curt [Fri, 26 Jul 2002 23:27:53 +0000 (23:27 +0000)]
No need to additionally ref() subcomponents of a tree.  Only the root node
needs to be ref()'d.

22 years agoModified the partial ssg tree deletion algorithm so it correctly preserves
curt [Fri, 26 Jul 2002 22:23:49 +0000 (22:23 +0000)]
Modified the partial ssg tree deletion algorithm so it correctly preserves
subtrees that may be connected into the scene graph multiple times.
(i.e.  our random ground cover objects.)

22 years agoSome renaming, since there wasn't really a tile-level LOD.
david [Fri, 26 Jul 2002 22:12:29 +0000 (22:12 +0000)]
Some renaming, since there wasn't really a tile-level LOD.

22 years agoGive up on the idea of using a singleton dummy bounding sphere;
david [Fri, 26 Jul 2002 19:06:29 +0000 (19:06 +0000)]
Give up on the idea of using a singleton dummy bounding sphere;
instead, use a separate dummy bounding sphere for each triangle and
each tile, with the actual bounds, to make sure that objects are
always added when they should be in sight.

22 years agoLoad models before counting them.
david [Fri, 26 Jul 2002 19:04:40 +0000 (19:04 +0000)]
Load models before counting them.

22 years agoOops, remove some unwanted debugging output.
curt [Fri, 26 Jul 2002 17:00:18 +0000 (17:00 +0000)]
Oops, remove some unwanted debugging output.

22 years agoFixed some signed vs. unsigned warnings.
curt [Fri, 26 Jul 2002 16:54:40 +0000 (16:54 +0000)]
Fixed some signed vs. unsigned warnings.

22 years agoAdded --random-wind command-line option.
david [Fri, 26 Jul 2002 02:49:14 +0000 (02:49 +0000)]
Added --random-wind command-line option.

22 years agoFixed reporting of winds, cloudbase, and altimeter setting. The
david [Fri, 26 Jul 2002 02:48:56 +0000 (02:48 +0000)]
Fixed reporting of winds, cloudbase, and altimeter setting.  The
temperature is still wrong.

22 years agoI totally misunderstood sgFrustum. This patch should put it right,
david [Fri, 26 Jul 2002 01:52:51 +0000 (01:52 +0000)]
I totally misunderstood sgFrustum.  This patch should put it right,
and also adds an optimization to avoid traversing anything closer than
1000m.

22 years agoRestructure the way tile freeing is handled. When a tile is removed from
curt [Thu, 25 Jul 2002 23:59:04 +0000 (23:59 +0000)]
Restructure the way tile freeing is handled.  When a tile is removed from
the tile cache it's ssg elements are disconnected from the main ssg scene
graph, and then the tile is thrown on the end of a delete queue.  The
tilemgr->update() routine runs every frame.  It looks at this queue and if
it is non-empty, it incrementally frees the compents of the first tile
on the queue.  When the tile is completely free it is removed from the queue.

The amount of time to free the memory for even a single tile can be quite
substantial, especially with the increased overhead of dynamic/random
ground objects.  This change allows the system to spread the work of freeing
tile memory out over many frames so you don't get a noticable single frame
hit or stutter.

22 years agoRestructuring how tiles are freed to allow us to eventually spread the task
curt [Thu, 25 Jul 2002 21:57:58 +0000 (21:57 +0000)]
Restructuring how tiles are freed to allow us to eventually spread the task
out over multiple frames.

22 years agoFix random seeds to avoid coincident objects but still ensure
david [Thu, 25 Jul 2002 20:30:51 +0000 (20:30 +0000)]
Fix random seeds to avoid coincident objects but still ensure
consistency.

22 years agoChange the extra culling to do only a quarter of the scene every 200
david [Thu, 25 Jul 2002 17:47:42 +0000 (17:47 +0000)]
Change the extra culling to do only a quarter of the scene every 200
frames rather than the whole thing, to avoid tiny stutters.

22 years agoAdded a new range-selector layer above each tile. That way, by
david [Thu, 25 Jul 2002 17:32:31 +0000 (17:32 +0000)]
Added a new range-selector layer above each tile.  That way, by
default, each tile has only 3 extra SSG nodes unless it falls into
range.

22 years agoFix a problem with the culling of out-of-range random objects. When
david [Thu, 25 Jul 2002 17:29:08 +0000 (17:29 +0000)]
Fix a problem with the culling of out-of-range random objects.  When
the triangles containing the objects were out of the view Frustum,
they were never traversed by ssg (and thus, never culled).  Now, every
200 frames, do a pass through the whole scene graph with cull-testing
disabled and without drawing anything; that will allow random-objects
to be collected incrementally.

22 years agoFixed a bug in FlightGear.py. Splitting name,value,type using whitespace
curt [Mon, 22 Jul 2002 23:25:28 +0000 (23:25 +0000)]
Fixed a bug in FlightGear.py.  Splitting name,value,type using whitespace
failed on /sim/time/gmt-string because the raw value contains an embedded
space.  Now I use a regex instead of a plain split().  I also removed the
view_next and view_prev functions.  These will have to be replaced with
command properties.

I've also added a FGFSDemo.py script which is a python version of David's java program.

22 years agoWe require plib-1.4.2 or newer.
curt [Mon, 22 Jul 2002 21:10:00 +0000 (21:10 +0000)]
We require plib-1.4.2 or newer.

22 years agoSave state before drawing '3d' panel, and then restore it after.
curt [Mon, 22 Jul 2002 21:09:42 +0000 (21:09 +0000)]
Save state before drawing '3d' panel, and then restore it after.

22 years agoRemoved some redundant glLight() calls.
curt [Sun, 21 Jul 2002 17:03:29 +0000 (17:03 +0000)]
Removed some redundant glLight() calls.

22 years agoThis was an old version, so I replaced the contents with a pointer to
curt [Sun, 21 Jul 2002 16:19:25 +0000 (16:19 +0000)]
This was an old version, so I replaced the contents with a pointer to
the newest version in the base package.

22 years agoPatch to explicitely control the specular lighting component.
curt [Sun, 21 Jul 2002 15:40:51 +0000 (15:40 +0000)]
Patch to explicitely control the specular lighting component.

22 years agoSupport for fuel selector switch.
curt [Sun, 21 Jul 2002 15:40:20 +0000 (15:40 +0000)]
Support for fuel selector switch.

22 years agoRenamed /sim/rendering/dynamic-objects to
david [Sat, 20 Jul 2002 23:11:27 +0000 (23:11 +0000)]
Renamed /sim/rendering/dynamic-objects to
/sim/rendering/random-objects, and changed the default from false to true.

22 years agoAdded more documentation.
david [Sat, 20 Jul 2002 23:10:42 +0000 (23:10 +0000)]
Added more documentation.

22 years agoAdded --disable-random-objects and --enable-random-objects options.
david [Sat, 20 Jul 2002 23:10:16 +0000 (23:10 +0000)]
Added --disable-random-objects and --enable-random-objects options.

22 years agoMore efficient version of get_bounding_radius from Norm Vine.
david [Sat, 20 Jul 2002 19:23:44 +0000 (19:23 +0000)]
More efficient version of get_bounding_radius from Norm Vine.

22 years agoEnforce a sane minimum of 1000m for coverage, to avoid run-away object
david [Sat, 20 Jul 2002 18:41:17 +0000 (18:41 +0000)]
Enforce a sane minimum of 1000m for coverage, to avoid run-away object
placement.

22 years agoRandomly-place object overhaul and enhancements
david [Sat, 20 Jul 2002 14:56:37 +0000 (14:56 +0000)]
Randomly-place object overhaul and enhancements
-----------------------------------------------

Fixed a segfault on exit.

Changed the radius of the dummy bounding sphere from 10m to 1000m to
ensure that FOV culling doesn't leave anything out.

Allow an object to have more than one variant model, which will be
chosen randomly.  Simply repeat the <path>...</path> property.

Removed the <billboard> property and replaced it with <heading-type>,
which can be set to "fixed" (leave the model oriented as it is),
"random" (give the model a random heading between 0 and 359 deg), or
"billboard" (always turn the model to face the camera).  The default
is "fixed".  Models look much better when they are not all facing the
same direction.

Allow the user to group models with the same visual range, so that
there can be *many* fewer nodes in the scene graph when the models are
not visible.  This causes an XML-format change, so that instead of

  <object>
   <range-m>...</range-m>
   ...
  </object>
  <object>
   <range-m>...</range-m>
   ...
  </object>
  ...

we now have

  <object-group>
   <range-m>...</range-m>
   <object>
    ...
   </object>
   <object>
    ...
   </object>
   ...
  </object-group>

Every object in a group can still have its own model(s), coverage, and
heading-type, but they all share the same range selector.

This change should already help users with tight memory constraints,
but it will matter much more when we add more object types -- for
example, we can now add dozens of different urban building types
without bloating the scene graph or slowing down the LOD tests for
tris that are out of range (i.e. most of them).

22 years agoMoved object information into a new subclass of FGNewMat, and changed
david [Sat, 20 Jul 2002 01:51:27 +0000 (01:51 +0000)]
Moved object information into a new subclass of FGNewMat, and changed
the property name from coverage to coverage_m2.

22 years agoProblem reported by Erik Hofman:
david [Thu, 18 Jul 2002 22:38:46 +0000 (22:38 +0000)]
Problem reported by Erik Hofman:

Replaced left-over std::cout statements with SG_LOG statements.

22 years agoPatch from Cameron Moore:
david [Thu, 18 Jul 2002 22:33:10 +0000 (22:33 +0000)]
Patch from Cameron Moore:

* Rearranged member initializers

22 years agoPatch from Cameron Moore:
david [Thu, 18 Jul 2002 22:32:50 +0000 (22:32 +0000)]
Patch from Cameron Moore:

* Fixed (un)signed comparisons

22 years agoPatch from Cameron Moore:
david [Thu, 18 Jul 2002 22:32:32 +0000 (22:32 +0000)]
Patch from Cameron Moore:

* Rearranged member initializers

22 years agoPatch from Cameron Moore:
david [Thu, 18 Jul 2002 22:32:12 +0000 (22:32 +0000)]
Patch from Cameron Moore:

* Fixed (un)signed comparisons
* Rearranged member initializers

22 years agoPatch from Cameron Moore:
david [Thu, 18 Jul 2002 22:31:53 +0000 (22:31 +0000)]
Patch from Cameron Moore:

* Rearranged member initializers to shut gcc -Wall up

22 years agoPatch from Cameron Moore:
david [Thu, 18 Jul 2002 22:31:36 +0000 (22:31 +0000)]
Patch from Cameron Moore:

* Fixed uninitialized values

22 years agoPatch from Cameron Moore:
david [Thu, 18 Jul 2002 22:31:19 +0000 (22:31 +0000)]
Patch from Cameron Moore:

* Fixed uninitialized MaxAileron value (set to 0.5)

22 years agoMake objects appear more smoothly and reliably.
david [Thu, 18 Jul 2002 19:16:47 +0000 (19:16 +0000)]
Make objects appear more smoothly and reliably.

22 years agoMore efficient rotation matrix calc from Norm Vine.
david [Thu, 18 Jul 2002 15:54:21 +0000 (15:54 +0000)]
More efficient rotation matrix calc from Norm Vine.

22 years agoSignificant speedup for randomly-placed objects, by taking better
david [Thu, 18 Jul 2002 13:23:29 +0000 (13:23 +0000)]
Significant speedup for randomly-placed objects, by taking better
advantage of ssg Frustum culling.

22 years agoModifed random-object code for more memory efficiency:
david [Thu, 18 Jul 2002 01:04:08 +0000 (01:04 +0000)]
Modifed random-object code for more memory efficiency:

1. Only one copy of each object (and its texture) is stored in memory,
   no matter how many materials use it.

2. Random objects are added to a triangle only when the objects are in
   range, and they are deleted as soon as the objects are out of
   range.  That way, only a relatively small number of ssg nodes are
   used at any one time.

This patch seems to eliminate freezes when tiles are freed.  There are
occasional stutters at extremely high speeds (i.e. over 3,000kt), but
it seems smooth enough for normal aviation speeds.

22 years agoMore functional decomposition and documentation.
david [Wed, 17 Jul 2002 22:11:13 +0000 (22:11 +0000)]
More functional decomposition and documentation.

22 years agoFix some minor inconsistencies and inefficiencies:
david [Wed, 17 Jul 2002 21:00:54 +0000 (21:00 +0000)]
Fix some minor inconsistencies and inefficiencies:

- no extra nodes are created at all if the material has no random
  objects defined

- the range selector is place correctly under the transformation

- there is only one range selector for each object type in each
  triangle (experimental -- doesn't seem to make a difference in speed
  or memory)

This patch removes Curt's patch that randomized ranges slightly, since
individual random objects no longer have their own range selectors.
It also leaves the object-group-range value unused, for now.

22 years agoStarted functional decomposition for dynamic objects.
david [Tue, 16 Jul 2002 23:39:53 +0000 (23:39 +0000)]
Started functional decomposition for dynamic objects.

Fixed typo in last patch, where objects were using object_group_lod
rather than object_lod.

22 years agoput a separate LOD node in front of ever random object so we can randomize
curt [Tue, 16 Jul 2002 20:43:40 +0000 (20:43 +0000)]
put a separate LOD node in front of ever random object so we can randomize
the exact pop in location of each object ... this allows us to put some objects further out and perhaps hide the popping just a tiny bit?

22 years agoAdded support for dynamically-generated scenery objects. Set the
david [Mon, 15 Jul 2002 18:16:20 +0000 (18:16 +0000)]
Added support for dynamically-generated scenery objects.  Set the
property /sim/rendering/dynamic-objects to true to enable them.

22 years agoMember variable initialization fixes from Cameron Moore
tony [Thu, 11 Jul 2002 00:19:19 +0000 (00:19 +0000)]
Member variable initialization fixes from Cameron Moore

22 years agoFixed typo in SetGammaFallback()
tony [Wed, 10 Jul 2002 03:24:57 +0000 (03:24 +0000)]
Fixed typo in SetGammaFallback()

22 years agoChange FGSteam into a proper subsystem rather than a collection of
david [Sun, 7 Jul 2002 15:45:56 +0000 (15:45 +0000)]
Change FGSteam into a proper subsystem rather than a collection of
static methods, and remove outdated dependency in panel_io.cxx.

22 years agoPatch from Julian Foad:
david [Sun, 7 Jul 2002 13:29:52 +0000 (13:29 +0000)]
Patch from Julian Foad:

- tidies up the update-time-step handling (making it a simple "dt");
- makes the altimeter get a proper pressure, and the (unused) vacuum
  calculation get a proper RPM (*);
- replaces property name look-ups with static pointers to property nodes.

Notes from DPM:

- the static pointers are a very bad idea, but they're only temporary;
  I plan to make FGSteam into a proper subsystem soon, and then they
  can be member variables
- I fixed the patch to get the current static pressure from the
  /environment/pressure-inhg property, so that the altimeter interacts
  properly with FGEnvironment

22 years agoPatch from Julian Foad:
david [Sat, 6 Jul 2002 18:02:06 +0000 (18:02 +0000)]
Patch from Julian Foad:

The present sets of bindings result in the throttle being "squared"
about its centre, which is silly.  This is because the "squared"
parameter is not set by the throttle binding, but the default is
"true".  We discussed this before and I think there was general
agreement that the default should be "false" on the basis of
generality.

22 years agoPatch from Julian Foad:
david [Sat, 6 Jul 2002 18:00:34 +0000 (18:00 +0000)]
Patch from Julian Foad:

May I offer this patch which will help non-Linux users find their
joysticks' names.

22 years agoRemove a kludge that was introduced to work around the #defined "NONE".
david [Sat, 6 Jul 2002 17:50:52 +0000 (17:50 +0000)]
Remove a kludge that was introduced to work around the #defined "NONE".

22 years agoChange identifiers to their new names to match hud.hxx.
david [Sat, 6 Jul 2002 17:50:38 +0000 (17:50 +0000)]
Change identifiers to their new names to match hud.hxx.

22 years agoPrefix "HUD_" (or "HUD_FONT_" in two cases) to #defined identifiers.
david [Sat, 6 Jul 2002 17:50:16 +0000 (17:50 +0000)]
Prefix "HUD_" (or "HUD_FONT_" in two cases) to #defined identifiers.
Remove some unused #defines (not mentioned anywhere, even in
comments).

22 years agoUpdate controls so we can specify each tank on/off individually. Also
curt [Fri, 5 Jul 2002 19:04:04 +0000 (19:04 +0000)]
Update controls so we can specify each tank on/off individually.  Also
updated the network interface files to add fuel tank selector information.

22 years agoOops, fixed a typo.
curt [Fri, 5 Jul 2002 14:49:18 +0000 (14:49 +0000)]
Oops, fixed a typo.

22 years agoAdded a fuel selector switch. I understand that this won't handle all
curt [Fri, 5 Jul 2002 14:46:38 +0000 (14:46 +0000)]
Added a fuel selector switch.  I understand that this won't handle all
situations for every kind of airplane.  But at the moment we have nothing
implimented and this will cover the simpler cases until someone has a
chance to impliment a fuller solution.

22 years agoSwitch to snprintf() for safety.
curt [Fri, 5 Jul 2002 13:56:46 +0000 (13:56 +0000)]
Switch to snprintf() for safety.

22 years agoMSVC fixups.
curt [Fri, 5 Jul 2002 05:23:53 +0000 (05:23 +0000)]
MSVC fixups.

22 years agoAdded interface to ATC xponder hardware.
curt [Thu, 4 Jul 2002 21:38:37 +0000 (21:38 +0000)]
Added interface to ATC xponder hardware.

22 years agoInitial revision of a Bendix/King KT 70 transponder.
curt [Thu, 4 Jul 2002 21:37:34 +0000 (21:37 +0000)]
Initial revision of a Bendix/King KT 70 transponder.

22 years agoFixed up a couple loose ends.
curt [Thu, 4 Jul 2002 21:37:06 +0000 (21:37 +0000)]
Fixed up a couple loose ends.

22 years agoModified to use named-joystick bindings when available (js-named
david [Thu, 4 Jul 2002 17:38:18 +0000 (17:38 +0000)]
Modified to use named-joystick bindings when available (js-named
rather than js).  This functionality is available only with recent CVS
plib versions (i.e. since about May 2002).

22 years agoA bunch of reorg and clean up of the KR 87 (adf) code including some
curt [Wed, 3 Jul 2002 23:35:21 +0000 (23:35 +0000)]
A bunch of reorg and clean up of the KR 87 (adf) code including some
property renaming with corresponding changes to instruments in the base
package.

22 years agoUpdated adf property names.
curt [Wed, 3 Jul 2002 21:52:13 +0000 (21:52 +0000)]
Updated adf property names.

22 years agoA couple ADF needle direction tweaks.
curt [Wed, 3 Jul 2002 05:15:04 +0000 (05:15 +0000)]
A couple ADF needle direction tweaks.

22 years agoAdd support for KR 87 annunciators.
curt [Wed, 3 Jul 2002 04:48:44 +0000 (04:48 +0000)]
Add support for KR 87 annunciators.

22 years agoPatch from Dave Luff to use dt properly in CHT calculation.
david [Wed, 3 Jul 2002 04:13:28 +0000 (04:13 +0000)]
Patch from Dave Luff to use dt properly in CHT calculation.

22 years agoFix a bug reported by Frederic Bouvier:
david [Wed, 3 Jul 2002 04:09:27 +0000 (04:09 +0000)]
Fix a bug reported by Frederic Bouvier:

GL/gl.h can't be included at the first position in windows. It requires
the inclusion of windows.h that must be included in other fgfs header
file. I only move down #include <GL/gl.h>

22 years agoCommented out a cout statement.
david [Wed, 3 Jul 2002 04:04:00 +0000 (04:04 +0000)]
Commented out a cout statement.

22 years agoDefault to ADF (rather than ANT) mode and start with the ADF turned on.
curt [Tue, 2 Jul 2002 22:39:04 +0000 (22:39 +0000)]
Default to ADF (rather than ANT) mode and start with the ADF turned on.
Oops, left in a debugging statement.

22 years ago- Oops, some name simplification led to overlapping variable names which caused
curt [Tue, 2 Jul 2002 22:35:15 +0000 (22:35 +0000)]
- Oops, some name simplification led to overlapping variable names which caused
  the adf needle to not point correctly, fixed.
- Make the code slightly smarter so ADF needle never takes the long way around
  to it's destination.

22 years agoFixes for IA-64 with Intel compiler.
curt [Tue, 2 Jul 2002 20:45:02 +0000 (20:45 +0000)]
Fixes for IA-64 with Intel compiler.

22 years agoUpdated hardware interface to match new KR 87 features.
curt [Sun, 30 Jun 2002 22:46:34 +0000 (22:46 +0000)]
Updated hardware interface to match new KR 87 features.

22 years agoWorking on implimenting the timer features of the King KR 87 ADF (as well
curt [Sun, 30 Jun 2002 22:44:38 +0000 (22:44 +0000)]
Working on implimenting the timer features of the King KR 87 ADF (as well
as some of the other subtleties.)

22 years agoAllow the default GUI font to be set via properties.
curt [Sat, 29 Jun 2002 13:07:25 +0000 (13:07 +0000)]
Allow the default GUI font to be set via properties.

22 years agoPatch from Melchior Franz:
david [Fri, 28 Jun 2002 19:14:42 +0000 (19:14 +0000)]
Patch from Melchior Franz:

This patch eliminates about 10 of valgrind's "Use of uninitialised
value of size ..." messages. They are all caused by approachlist building
incomplete FGApproach class instances and then copying them into the
approchlist container, hence copying data garbage.
   I know, I couldn't win a beauty contest with this patch, but the
alternative approach -- letting operator<< always leave complete
entries -- didn't look any better. And I do only add those seemingly
useless initialization where the values would be used uninitialized
else. The constructors are only run during setup and won't slow fgfs
down at runtime.

22 years agoFixed an uninitialized variable reported by Frederic Bouvier; this
david [Fri, 28 Jun 2002 19:06:23 +0000 (19:06 +0000)]
Fixed an uninitialized variable reported by Frederic Bouvier; this
could cause the FDM occasionally to get caught in a very long loop.

22 years agoUpdate from JSBSim - fix bugs reported by Gonzalo Peralta with CHT and
david [Fri, 28 Jun 2002 18:38:28 +0000 (18:38 +0000)]
Update from JSBSim - fix bugs reported by Gonzalo Peralta with CHT and
oil pressure.

22 years agoPatch from Julian Foad:
david [Fri, 28 Jun 2002 18:01:08 +0000 (18:01 +0000)]
Patch from Julian Foad:

Fix float/int mis-match warnings.

22 years agoPatch from Julian Foad:
david [Fri, 28 Jun 2002 18:00:49 +0000 (18:00 +0000)]
Patch from Julian Foad:

Use defined constant instead of yet another approximation to pi.

22 years agoPatch from Julian Foad:
david [Fri, 28 Jun 2002 18:00:21 +0000 (18:00 +0000)]
Patch from Julian Foad:

Make locally-used strings local instead of global.  (The safety and
cleanliness benefit outweights the slight performance hit.  If
performance is an issue, the way these strings are used should be
optimised.)  Use existing defined constant instead of a literal
number.

22 years agoPatch from Julian Foad:
david [Fri, 28 Jun 2002 17:59:59 +0000 (17:59 +0000)]
Patch from Julian Foad:

Remove trailing comma (unportable).

22 years agoPatch from Julian Foad:
david [Fri, 28 Jun 2002 17:59:44 +0000 (17:59 +0000)]
Patch from Julian Foad:

Remove redundant class scope qualifiers.  (Should not be used within
class definition.)

22 years agoPatch from Julian Foad:
david [Fri, 28 Jun 2002 17:59:30 +0000 (17:59 +0000)]
Patch from Julian Foad:

Remove unused variable.

22 years agoPatch from Julian Foad:
david [Fri, 28 Jun 2002 17:59:13 +0000 (17:59 +0000)]
Patch from Julian Foad:

Newline at end of file is required.  (On a preprocessor line it is
required; on other lines it is recommended but not required.)

22 years agoPatch from Melchior Franz:
david [Fri, 28 Jun 2002 17:43:11 +0000 (17:43 +0000)]
Patch from Melchior Franz:

- fix error message
- add PThread rule (needs valgrind >= 20020603)
- add missing files to .cvsignore

22 years agoPatch from Cameron Moore:
david [Fri, 28 Jun 2002 17:41:18 +0000 (17:41 +0000)]
Patch from Cameron Moore:

The patch fixes the uninitialized values by explicitly starting
everything at sea_level values.

22 years ago3D panel support from Andy Ross:
david [Fri, 28 Jun 2002 14:17:40 +0000 (14:17 +0000)]
3D panel support from Andy Ross:

+ The panel(s) are now an first-class SSG node inside the aircraft
  scene graph.  There's a little code added to model.cxx to handle the
  parsing, but most of the changes are inside the new FGPanelNode
  class (Model/panelnode.[ch]xx).

+ The old FGPanel source changed a lot, but mostly cosmetically.  The
  virtual-cockpit code moved out into FGPanelNode, and the core
  rendering has been abstracted into a draw() method that doesn't try
  to set any OpenGL state.  I also replaced the old inter-layer offset
  code with glPolygonOffset, as calculating the right Z values is hard
  across the funky modelview matrix I need to use.  The older virtual
  panel code got away with it by disabling depth test, thus the "panel
  draws on top of yoke" bug.  PolygonOffset is really the appropriate
  solution for this sort of task anyway.

+ The /sim/virtual-cockpit property is no more.  The 2D panels are
  still specified in the -set.xml file, but 3D panels are part of the
  model file.

+ You can have as many 3D panels as you like.

Problems:

+ The mouse support isn't ready yet, so the 3D panels still aren't
  interactive.  Soon to come.

+ Being part of the same scene graph as the model, the 3D panels now
  "jitter" in exactly the same way.  While this makes the jitter of
  the attitude gyro less noticeable, it's still *very* noticeable and
  annoying.  I looked hard for this, and am at this point convinced
  that the problem is with the two orientation computations.  We have
  one in FGLocation that is used by the model code, and one in
  FGViewer that is used at the top of the scene graph.  My suspicion
  is that they don't agree exactly, so the final orientation matrix is
  the right answer plus the difference.  I did rule out the FDMs
  though.  None of them show more than about 0.0001 degree of
  orientation change between frames for a stopped aircraft.  That's
  within an order of magnitude of what you'd expect for the
  orientation change due to the rotation of the earth (which we don't
  model -- I cite it only as evidence of how small this is); far, far
  less than one pixel on the screen.

[and later]

OK, this is fixed by the attached panel.cxx file.  What's happened is
that the winding order for the text layer's polygons is wrong, so I
reverse it before drawing.  That's largely a hatchet job to make
things work for now, though.  We should figure out why the winding
order is wrong for only text layers and fix it.  I checked the plib
sources -- they're definitely doing things CCW, as is all the rest of
the panel code.

Odd.  I'm also not sure why the 2D panel doesn't care (it works in
both winding orders).  But this will allow you to check in working
code, anyway.  There's a big comment to this effect in there.

22 years agoHalf-finished utility class.
david [Fri, 28 Jun 2002 14:15:53 +0000 (14:15 +0000)]
Half-finished utility class.

22 years agoAdded files that only I use locally; it shouldn't hurt anyone else.
david [Fri, 28 Jun 2002 14:15:37 +0000 (14:15 +0000)]
Added files that only I use locally; it shouldn't hurt anyone else.