Re: [Flightgear-devel] New super/turbo MP code is in

2005-07-19 Thread Peter Stickney
On Tuesday 19 July 2005 12:29, Vivian Meazza wrote:
> Peter Stickney

> OK, so what we have here is a 2 stage supercharger. The first stage 
is the 2
> turbos and the second stage is the single stage gear-driven 
supercharger. 

Right.  That will hold for any other turbosupercharged airplane, other 
than some of the light airplanes, that you'll come across.
 
> I have enough data now for a reasonable simulation, but to make it 
more
> accurate, I wonder if you could describe the action of the 
supercharger
> pressure regulator? I can model it as just controlling the manifold 
pressure
> between 0 and full. I interpret 0.8 (#8 on the dial) as being the 
setting
> for full throttle height (military power). Settings 9 and 10 are 
emergency
> settings. Did the controller act on the throttle, or a control a 
wastegate
> to adjust the turbos, or just dump pressure, or? 

The controller used the Manifold Pressure at the engine inlet manifold 
to control the turbo's output.  If you opened the throttle, you got 
more output from the turbo.  If you increased the RPM (Prop to Full 
Increase), the turboregulator noted the higher pressure coming from 
the engine-stage blower and cut the turbo back.  (With a controllable 
pitch prop, especially a constant speed prop, the throttle and the 
RPM are decoupled.  The prop conrols RPM by changing its pitch.  The 
throttle controls torque, which is indicated as MAP or BMEP settings.
The turbo's output was controlled via the wastegates in the exhaust 
end. It really wasn't that much of an issue - airplane engine power 
settings don't get changed much, or in any great range, even for 
fighters in combat, so any lag wasn't a big deal.

Somebody mentioned having a "Failure Mode" if you turned the boost up 
to 11 for too long.  My experience with turbosuperchargers (I haven't 
blown up any airplane turbos, but I've killed a few on cars) is that 
the usual failure mode when the bearing is overtemped (Which is what 
you'd be doing) is for it to freeze.  It doean't block inlet of 
exhaust flow much, but your Critical Altitude will suddenly drop from 
25,000' to 7,000', and you might also get a fire going.
  
> > But that's not the only way to do it.  I've been preparing a 
series of
> > articles on supercharging reciprocating engines.   Is there any
> > interest for me to pull some of it out and present it here?
> 
> Probably not here, but personally I would be _most_ interested in 
anything
> you have on this subject. 

I'll be in touch.  Jon Berndt suggested the JBSSim Newsletter.  I'm 
looking into that, and a few other things.

> I have been struck by the lack of detailed information on the web on 
the
> R3350, a stark contrast to the Merlin/Griffon.

Rolls has always had good press agents :).  Actually, it's rather hard 
to find good data on most engines. (Including Merlins) It's one of 
those areas where details can count.

> Thanks
> 
> Vivian
> 
> 
> 
> ___
> Flightgear-devel mailing list
> Flightgear-devel@flightgear.org
> http://mail.flightgear.org/mailman/listinfo/flightgear-devel
> 2f585eeea02e2c79d7b1d8c4963bae2d
> 

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Re: Re: suggestions/questions regarding multiplayer

2005-07-19 Thread Josh Babcock
Pigeon wrote:
>>So, basically you get an invisible UFO and don't show up as a player, right?
> 
> 
> Hmm I would imagine the server doesn't need to broadcast these
> observers to others. It's not an actual player.
> 
> I suppose using an invisible aircraft would work now as an observer.
> If the server could handle something like if someone connecting with a
> callsign "observer", then it would simply send packets to the observer
> about other real players, but don't need to get another info from the
> observer itself, except, perhaps, logging on or off. That will also mean
> the server needs to be happy with multiple connection with the same
> callsign. So I'd say it might be better to just treat them as a special
> class of clients.
> 
> 
> Pigeon.
> 
> 
> ___
> Flightgear-devel mailing list
> Flightgear-devel@flightgear.org
> http://mail.flightgear.org/mailman/listinfo/flightgear-devel
> 2f585eeea02e2c79d7b1d8c4963bae2d
> 

Right, it would be silly to send all that data to the server when all it
needs to know is where your are and what you can see. Plus the position
data could be sent at low resolution.

Either way the server would have to be able to handle multiple instances
of the same callsign. Otherwise an invisible observer could silently
prevent a flier from connecting.

Josh

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


[Flightgear-devel] Re: Re: suggestions/questions regarding multiplayer

2005-07-19 Thread Pigeon
> So, basically you get an invisible UFO and don't show up as a player, right?

Hmm I would imagine the server doesn't need to broadcast these
observers to others. It's not an actual player.

I suppose using an invisible aircraft would work now as an observer.
If the server could handle something like if someone connecting with a
callsign "observer", then it would simply send packets to the observer
about other real players, but don't need to get another info from the
observer itself, except, perhaps, logging on or off. That will also mean
the server needs to be happy with multiple connection with the same
callsign. So I'd say it might be better to just treat them as a special
class of clients.


Pigeon.


___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Re: suggestions/questions regarding multiplayer

2005-07-19 Thread Josh Babcock
Pigeon wrote:
> Got a little further suggestion with the multiplayer. It's probably
> just a server side thing though.
> 
> It might be worthwhile for the server to accept "observer" client.
> You can connect to the server as an observer, i.e. no aircraft. You get
> information about players online, where they are, etc. Could be useful
> for doing things like an online map on a webpage to show who's currently
> online and where they are on a graphical map. Would be cool when later
> atlas supports showing multiple aircrafts.
> 
> 
> Pigeon.
> 
> 
> ___
> Flightgear-devel mailing list
> Flightgear-devel@flightgear.org
> http://mail.flightgear.org/mailman/listinfo/flightgear-devel
> 2f585eeea02e2c79d7b1d8c4963bae2d
> 

So, basically you get an invisible UFO and don't show up as a player, right?

Josh

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


[Flightgear-devel] Re: suggestions/questions regarding multiplayer

2005-07-19 Thread Pigeon

Got a little further suggestion with the multiplayer. It's probably
just a server side thing though.

It might be worthwhile for the server to accept "observer" client.
You can connect to the server as an observer, i.e. no aircraft. You get
information about players online, where they are, etc. Could be useful
for doing things like an online map on a webpage to show who's currently
online and where they are on a graphical map. Would be cool when later
atlas supports showing multiple aircrafts.


Pigeon.


___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Couple of Windows-related questions

2005-07-19 Thread Drew
Thank you very much.  That's exactly what I needed.

Drew

On 7/19/05, Frederic Bouvier <[EMAIL PROTECTED]> wrote:
> Quoting Drew :
> 
> > Hi,
> >
> > I'm wondering if there is a way to run FlightGear without the 'command
> > prompt' window opening, or at least to have it minimized when it
> > opens.  Is there a way to do this?
> >
> > Also, I've looked for a 'borderless window' option in the OpenGL
> > commands with no success.  Is there a way to create a borderless
> > window that *isn't* full-screen mode?
> >
> > Thanks for any help you can give.
> 
> Do you mean for your own compiled version, or for the released win32 binary ?
> 
> We found that hidding the console for the release may seems pretty but was
> highly unpractical when it comes to help users that are unable to see the
> errors messages printed on the console. So it was filed as a false good idea
> and now the console of fgfs is shared with the one of fgrun.
> 
> If you want to do it in your own project, you just have to change a link 
> option.
> Replace /subsystem:console by /subsystem:windows and relink
> 
> -Fred
> 
> ___
> Flightgear-devel mailing list
> Flightgear-devel@flightgear.org
> http://mail.flightgear.org/mailman/listinfo/flightgear-devel
> 2f585eeea02e2c79d7b1d8c4963bae2d
>

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


RE: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Vivian Meazza
Ampere K. Hardraade

... snip ...
 
> 
> > As Pigeon said, make that a separate window, because the ATC line is
> > allready nearly impossible
> > to read ;) It should not be hard to code but the atc code is not good
> > for that (anyway it does not
> > queue messages).
> I agree.  That ATC line is horrible.
> 
> Use a Nasal-generated transparent window instead.  One will then have
> control
> over the font size, font style, font color of the displayed text, as well
> as
> the number of lines that can be displayed.  As for the message buffer, a
> queue can be used.  There is a queue written in Nasal already:
> http://cvs.flightgear.org/cgi-
> bin/viewcvs/viewcvs.cgi/data/Aircraft/A380/Systems/AFDX/Switch/queue.nas?r
> ev=1.3&cvsroot=FlightGear-0.9&content-type=text/vnd.viewcvs-markup
> 

I don't think we want competing methods for essentially the same function.
If the ATC line is unreadable - (it's just about OK if you toggle the menu)
- then that needs fixing up as well.

Vivian 



___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Ampere K. Hardraade
On July 19, 2005 06:33 am, Oliver Schroeder wrote:
> 1) "out of reach"
>  . . .
This will need to apply on chat messages as well.

> 3) artificial life at airports
>  . . .
There is a traffic manager in FlightGear.  May be you can make use of that.

On July 19, 2005 01:27 pm, Harald JOHNSEN wrote:
> For VFR we have a nearly hard coded limit of 10 NM from the metar, and
> at that range I don't think
> one can really see another aircraft.
> If your plane has some TCAS instrumentation then you will need perhaps
> 20 to 40 nm.
I do not think there is a need to make a special case for TCAS capable 
aircrafts.

> As Pigeon said, make that a separate window, because the ATC line is
> allready nearly impossible
> to read ;) It should not be hard to code but the atc code is not good
> for that (anyway it does not
> queue messages).
I agree.  That ATC line is horrible.

Use a Nasal-generated transparent window instead.  One will then have control 
over the font size, font style, font color of the displayed text, as well as 
the number of lines that can be displayed.  As for the message buffer, a 
queue can be used.  There is a queue written in Nasal already: 
http://cvs.flightgear.org/cgi-bin/viewcvs/viewcvs.cgi/data/Aircraft/A380/Systems/AFDX/Switch/queue.nas?rev=1.3&cvsroot=FlightGear-0.9&content-type=text/vnd.viewcvs-markup



Ampere

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


RE: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Vivian Meazza
Oliver Schroeder

> some of you may already have taken notice of my multiplayer server for
> flightgear (http://www.o-schroeder.de/fg_server). It's working quite well
> in
> sane environments but I want to improve it and therefor have some
> questions
> you may be able to answer.
> 
... snip ...
> 
> 3) artificial life at airports
>  The server gives a lot of opportunities. One of the first things which
> came
> to my mind was artificial traffic at airports. It should be fairly easy
> to
> write clients in any (network capable) language which do simulate a
> client.
> This can be simply a helicopter standing near a hangar or even a plane
> flying
> around an airport. This would disburden fgfs itself (since it does not
> need
> to create AI traffic itself) and allow an arbitrary number of artificial
> clients, each serving it's "own" airport (or whatever area), bringing life
> to
> many areas of the world without manipulating fgfs itself.
> 

Would a dedicated instance of FlightGear running all the AI traffic needed
and passing them to the server for distribution to all players do the trick?
(filtering by range if that's how you decide to do it). 

We would like something like this for the carrier in any case. 

We should be aiming for the server to co-ordinate the whole environment -
traffic, weather, time. We need to be clever about bandwidth though - and
only send this kind of background data strictly when needed. The client FGFS
will have to do much of the work, I suppose.

Regards,

Vivian 



___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Dave Culp
> > > So the question is: How can I easily calculate the distance and how
> > > many nautical miles are "out of reach" (thinking of e.g. radar systems)
> > > ?
> >
> > You can compute distance at an altitude using SimGear functions
>
> Ack, don't even *think* about doing the math in a GIS datum. 


I agree.  You don't need overkill here.  A simple check of the bounding square 
should work fine.  Something like this:

/* Check if position 2 is within a square of side R nautical miles that has 
position 1 at a corner. This is a fast approximation of checking the distance 
between them, avoiding the use of trigonometric or sqrt functions. This 
assumes latitude in the  range (-90,90) and longitude (-180,180).
*/

bool IsWithinRMiles( double lat1, double lon1, double lat2, double lon2, 
double R ) {

   double nm_per_deg_lat = 60.313; 
   double nm_per_deg_lon = 60.109 - fabs(lat1 * 0.66788);  
   double lat_diff = fabs(lat1 - lat2);
   double lon_diff = fabs(lon1 - lon2);
   if (lon_diff > 180.0) lon_diff = 360.0 - lon_diff;

   if ((lat_diff * nm_per_deg_lat) < R) {
 if ((lon_diff * nm_per_deg_lon) < R) {
   return true;
 }
   }

   return false;
}


This should be good enough for deciding if object2 should be visible to 
object1, as long the range you're checking for isn't too small.  I would use 
20 nm for a visibility test.

To get a more accurate distance check (for instance, radar range) you'll need 
to call a sqrt function in the test:

   if ( sqrt( (lat_diff * lat_diff * nm_per_deg_lat * nm_per_deg_lat) +
(lon_diff * lon_diff * nm_per_deg_lon * nm_per_deg_lon)) < R) {
  return true;
   }

To get even more accuracy you can use trigonometric functions in the 
nm_per_deg calculations (see AIModel/AIBase.cxx for the feet_per_deg 
formulas).
 

Dave

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Harald JOHNSEN

Oliver Schroeder wrote:


1) "out of reach"
[...]
So the question is: How can I easily calculate the distance and how many 
nautical miles are "out of reach" (thinking of e.g. radar systems) ?


 


I think the range should be user configurable.
For VFR we have a nearly hard coded limit of 10 NM from the metar, and 
at that range I don't think

one can really see another aircraft.
If your plane has some TCAS instrumentation then you will need perhaps 
20 to 40 nm.

If you are a traffic controler you want more than that.


2) chat messages
[...]
protocoll supports chat-messages and the ATC-module has functions to queue 
and display them on screen. So it should'nt be too hard to combine them and 
enable chat-messages. Somebody willing to give it a try?
 

As Pigeon said, make that a separate window, because the ATC line is 
allready nearly impossible
to read ;) It should not be hard to code but the atc code is not good 
for that (anyway it does not

queue messages).


3) artificial life at airports
The server gives a lot of opportunities. One of the first things which came 
to my mind was artificial traffic at airports. It should be fairly easy  to 
write clients in any (network capable) language which do simulate a client. 
This can be simply a helicopter standing near a hangar or even a plane flying 
around an airport. This would disburden fgfs itself (since it does not need 
to create AI traffic itself) and allow an arbitrary number of artificial 
clients, each serving it's "own" airport (or whatever area), bringing life to 
many areas of the world without manipulating fgfs itself.


 

The idea is interesting, but at the same time FG allready include the 
infrastructure to spawn entities and
animate them, and when we will add new animations like trains, forest 
fire or gates I would like to have

them even in the standalon version of FG.
If you want to 'inject' new entities via the server you could just 
launch a copy of FG without rendering

near your server and choose an ai scenarii to load.

Harald.



___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


[Flightgear-devel] fgfs hangs loading scenery objects (some AC and airports but not all)

2005-07-19 Thread Dave Perry
This bug showed up when I updated from CVS last weekend.  Description 
follows:
(1)  With the default c172, fgfs hangs with the "loading scenery 
objects" is displayed if --airport= (any airport from w110n40)  It does 
not hang for the j3cub or the pa28-161.
(2)  With (atleast som) airports outside w110n40 and the default c172, 
it does not hang.  Here are some examples:
[EMAIL PROTECTED] FlightGear]$ ./bin/fgfs 
--fg-scenery=/usr/local/Scenery-0.9.8 --airport=KLBF --aircraft=j3cub

Failed to find runway 28R at airport KLBF
RenderTexture Error: Couldn't find a suitable pixel format.
Reading xml electrical system model from 
/usr/local/FlightGear/Aircraft/j3cub/cub-electrical.xml

WARNING: Legacy engine definition in YASim configuration file.  Please fix.
(ran fine)
[EMAIL PROTECTED] FlightGear]$ ./bin/fgfs 
--fg-scenery=/usr/local/Scenery-0.9.8 --airport=KLBF --aircraft=c172

Failed to find runway 28R at airport KLBF
RenderTexture Error: Couldn't find a suitable pixel format.
(I killed fgfs by closing the window after it hang)
fgfs: freeglut_cursor.c:86: glutSetCursor: Assertion 
`fgState.Initialised' failed.

Aborted
[EMAIL PROTECTED] FlightGear]$ ./bin/fgfs 
--fg-scenery=/usr/local/Scenery-0.9.8 --airport=KLBF --aircraft=pa28-161

Failed to find runway 28R at airport KLBF
RenderTexture Error: Couldn't find a suitable pixel format.
Reading xml electrical system model from 
/usr/local/FlightGear/Aircraft/Generic/generic-electrical.xml

WARNING: Legacy engine definition in YASim configuration file.  Please fix.
(ran fine)
[EMAIL PROTECTED] FlightGear]$ ./bin/fgfs 
--fg-scenery=/usr/local/Scenery-0.9.8 --airport=KBJC --aircraft=pa28-161

Failed to find runway 28R at airport KBJC
RenderTexture Error: Couldn't find a suitable pixel format.
Reading xml electrical system model from 
/usr/local/FlightGear/Aircraft/Generic/generic-electrical.xml

WARNING: Legacy engine definition in YASim configuration file.  Please fix.
(ran fine)
[EMAIL PROTECTED] FlightGear]$ ./bin/fgfs 
--fg-scenery=/usr/local/Scenery-0.9.8 --airport=KBJC --aircraft=c172

Failed to find runway 28R at airport KBJC
RenderTexture Error: Couldn't find a suitable pixel format.
(I killed fgfs by closing the window after it hang)
fgfs: freeglut_cursor.c:86: glutSetCursor: Assertion 
`fgState.Initialised' failed.

Aborted
[EMAIL PROTECTED] FlightGear]$ ./bin/fgfs 
--fg-scenery=/usr/local/Scenery-0.9.8 --airport=KDSM --aircraft=c172

Failed to find runway 28R at airport KDSM
RenderTexture Error: Couldn't find a suitable pixel format.
Initializing Nasal Electrical System
(ran fine)
[EMAIL PROTECTED] FlightGear]$

The scenery is from 0.9.8 on www.flightgear.org.
I did an update of plib, SimGear, and fgfs source as well as the 
contents $FG_ROOT using "cvs update -dP" and did a "make clean" before 
recompiling all before the above examples were run.


Was running great from cvs before last weekend update.
System:  Athlon 3200+ XP with 512 MB of PC3200, NVIDIA FX 5600 ultra.
MB Biostar M7NCD Ultra

Wierd bug?



___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Couple of Windows-related questions

2005-07-19 Thread Frederic Bouvier
Quoting Drew :

> Hi,
>
> I'm wondering if there is a way to run FlightGear without the 'command
> prompt' window opening, or at least to have it minimized when it
> opens.  Is there a way to do this?
>
> Also, I've looked for a 'borderless window' option in the OpenGL
> commands with no success.  Is there a way to create a borderless
> window that *isn't* full-screen mode?
>
> Thanks for any help you can give.

Do you mean for your own compiled version, or for the released win32 binary ?

We found that hidding the console for the release may seems pretty but was
highly unpractical when it comes to help users that are unable to see the
errors messages printed on the console. So it was filed as a false good idea
and now the console of fgfs is shared with the one of fgrun.

If you want to do it in your own project, you just have to change a link option.
Replace /subsystem:console by /subsystem:windows and relink

-Fred

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


RE: [Flightgear-devel] New super/turbo MP code is in

2005-07-19 Thread Vivian Meazza
Peter Stickney

> On Monday 18 July 2005 18:25, Josh Babcock wrote:
> 
> > All the 3350s had this turbo/super setup. You can see it in some of
> > these images:
> >
> > 
> 
 ... snip ...
> 
> There were 3 flavors of the R3350.  One was the engine used on the
> B-29.  It had a single-speed gear driven blower.  The
> turbosuperchargers (The B-29 used 2 per engine - basically the same
> model used on the B-17 and B-24 - with twice the displacement, and
> about the same RPM, it needed twice the mass flow, and using the
> paired turbosuperchargers meant that they could deliver a working
> system without having to interrupt production) fed air at what were
> essentially sea level conditions to the engine's mechanical blower.
> The production versions peaked out at about 2200 HP, and a useful Full
> Throttle Height of around 25,000'.

OK, so what we have here is a 2 stage supercharger. The first stage is the 2
turbos and the second stage is the single stage gear-driven supercharger. 

I have enough data now for a reasonable simulation, but to make it more
accurate, I wonder if you could describe the action of the supercharger
pressure regulator? I can model it as just controlling the manifold pressure
between 0 and full. I interpret 0.8 (#8 on the dial) as being the setting
for full throttle height (military power). Settings 9 and 10 are emergency
settings. Did the controller act on the throttle, or a control a wastegate
to adjust the turbos, or just dump pressure, or? 
 
> But that's not the only way to do it.  I've been preparing a series of
> articles on supercharging reciprocating engines.   Is there any
> interest for me to pull some of it out and present it here?

Probably not here, but personally I would be _most_ interested in anything
you have on this subject. This list is a great place to learn, and this can
lead to more realistic simulation. If you like, send me anything you feel
like off-list, or point me to a website.

I have been struck by the lack of detailed information on the web on the
R3350, a stark contrast to the Merlin/Griffon.

Thanks

Vivian



___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Andy Ross
Frederic Bouvier wrote:
> Oliver Schroeder wrote:
> > So the question is: How can I easily calculate the distance and how many
> > nautical miles are "out of reach" (thinking of e.g. radar systems) ?
>
> You can compute distance at an altitude using SimGear functions

Ack, don't even *think* about doing the math in a GIS datum.  Convert,
store and process everthing in cartesian coordinates where it's vastly
easier (the conversion routines are in the same sg_geodesy interface).

The only advantage to lat/lon/alt is that I can see is that it can be
packed slightly smaller in the packet, because the altitude coordinate
needs less precision.  But even that is questionable, because the same
would be true of plain spherical/euler coordinates, which are still
much easier than doing WGS84 stuff.

Honestly, I'd suggest keeping as much GIS knowlege out of the server
as possible.  It only complicates things there.  The one that I was
working on didn't link against SimGear at all.

Andy



___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


[Flightgear-devel] Couple of Windows-related questions

2005-07-19 Thread Drew
Hi,

I'm wondering if there is a way to run FlightGear without the 'command
prompt' window opening, or at least to have it minimized when it
opens.  Is there a way to do this?

Also, I've looked for a 'borderless window' option in the OpenGL
commands with no success.  Is there a way to create a borderless
window that *isn't* full-screen mode?

Thanks for any help you can give.

Drew

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Vassilii Khachaturov
> So the question is: How can I easily calculate the distance and how many
> nautical miles are "out of reach" (thinking of e.g. radar systems) ?

It could be that VFR-equipped planes (esp. those w/o radar) only need
things within the visibility range. I don't know about airborne radars,
never flew with one, either :)
http://www.faa.gov/ATpubs/AIM/Chap4/aim0405.html gives a pretty good
coverage of the existing ATC radars in the US and their capabilities.
The question is whetheer you have the capability to map all the
enroute (ARTCC) radar installations and other range-extending radar
installations around busier airports, i.e., not on the field itself.
Also, you have to take terrain in consideration when talking about
the radar reach.

> 3) artificial life at airports
>  The server gives a lot of opportunities. One of the first things which came
> to my mind was artificial traffic at airports. It should be fairly easy  to
> write clients in any (network capable) language which do simulate a client.
> This can be simply a helicopter standing near a hangar or even a plane flying
> around an airport. This would disburden fgfs itself (since it does not need
> to create AI traffic itself) and allow an arbitrary number of artificial
> clients, each serving it's "own" airport (or whatever area), bringing life to
> many areas of the world without manipulating fgfs itself.

Great idea.
It's probably a good thing to coordinate this with the server, otherwise
there will be a lot of artificial life burdening the server at the
fields noone actually is flying at!


___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Frederic Bouvier
Quoting Oliver Schroeder :

> 1) "out of reach"
>  The server receives position information of clients and thus should be able
> to calculate the distance of two given clients (measured in nautical miles,
> disregarding height) so it is able to decide if it has to send packets to a
> client or not. In case it is "out of reach", i.e. all actions of client A do
> not affect anything for client B, the server can stop sending packets between
> those two clients. So it is possible for the server to handle hundrets of
> clients even though each client does only see a couple of them (at least if
> the clients are scattered around the world).
> So the question is: How can I easily calculate the distance and how many
> nautical miles are "out of reach" (thinking of e.g. radar systems) ?

You can compute distance at an altitude using SimGear functions :

#include 

double az1, az2, distance;
geo_inverse_wgs_84( altitude, lat_1, lon_1,
lat_2, lon_2, &az1, &az2, &distance );

distance = | (lon_1,lat_1), (lon_2,lat_2) |

-Fred

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Re: suggestions/questions regarding multiplayer

2005-07-19 Thread Oliver Schroeder
Am Tuesday 19 July 2005 13:43 schrieb Pigeon:
> Also I'm wondering if the server should take control of who's logged
> on and off. At the moment the client is taking care of that by adding a
> player if it gets udp packets that it doesn't already know about, and
> removing player if it hasn't got anymore packets from a player with a
> timeout.

I thought of the server generating a chat message like "Player1 joined the at 
KSFO" or something, spreading it to the clients which display it to the user.

And possibly other messages which reflect the state of the server.

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


[Flightgear-devel] Re: suggestions/questions regarding multiplayer

2005-07-19 Thread Pigeon

Would it be good if both ATC and chat message could be in some sort
of text area box so you have the history and you could scroll back and
stuff?

Also I'm wondering if the server should take control of who's logged
on and off. At the moment the client is taking care of that by adding a
player if it gets udp packets that it doesn't already know about, and
removing player if it hasn't got anymore packets from a player with a
timeout.

I was thinking that way we could show logon/logoff message in the
multiplay window. Now it's some sort of a multiplay event window, rather
than only for chat messages.


> 2) chat messages
>  The server (in fact every client) should be able to send messages to clients 
> which get displayed on the screen (i.e. the flightgear window), just like ATC 
> messages. So the server can send state information to the client. After 
> reading some source code and discussing this on the irc channel I've noticed 
> that the necessary infrastructure is already there but not used. The network 
> protocoll supports chat-messages and the ATC-module has functions to queue 
> and display them on screen. So it should'nt be too hard to combine them and 
> enable chat-messages. Somebody willing to give it a try?



___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Ralf Gerlich

Hello,


3) artificial life at airports The server gives a lot of
opportunities. One of the first things which came to my mind was
artificial traffic at airports. It should be fairly easy  to write
clients in any (network capable) language which do simulate a client.
 This can be simply a helicopter standing near a hangar or even a
plane flying around an airport. This would disburden fgfs itself
(since it does not need to create AI traffic itself) and allow an
arbitrary number of artificial clients, each serving it's "own"
airport (or whatever area), bringing life to many areas of the world
without manipulating fgfs itself.


I'm very far from knowledgeable about the respective source structures
in FlightGear and just thinking out loud, but perhaps it would be
possible to extract the AI-code already being developed inside
FlightGear to an external software package which could take the task of
injecting such AI clients in the network?

If the code is modular enough, the AI module could be plugged into such
a multiplayer-bot as well as into the main FlightGear code, where in the
latter it would be used for single player mode.

Alternatively FlightGear could startup a local multiplayer "network" on
localhost if the user is not participating in a multiplayer session and
wants to have AI planes flying and taxiing around.

As I said: I'm thinking out loud and I have no idea of the AI/ATC-code,
so bear with me *duck* ;-)

Regards,
Ralf

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


[Flightgear-devel] suggestions/questions regarding multiplayer

2005-07-19 Thread Oliver Schroeder
Hello List,

some of you may already have taken notice of my multiplayer server for 
flightgear (http://www.o-schroeder.de/fg_server). It's working quite well in 
sane environments but I want to improve it and therefor have some questions 
you may be able to answer.

1) "out of reach"
 The server receives position information of clients and thus should be able 
to calculate the distance of two given clients (measured in nautical miles, 
disregarding height) so it is able to decide if it has to send packets to a 
client or not. In case it is "out of reach", i.e. all actions of client A do 
not affect anything for client B, the server can stop sending packets between 
those two clients. So it is possible for the server to handle hundrets of 
clients even though each client does only see a couple of them (at least if 
the clients are scattered around the world).
So the question is: How can I easily calculate the distance and how many 
nautical miles are "out of reach" (thinking of e.g. radar systems) ?

2) chat messages
 The server (in fact every client) should be able to send messages to clients 
which get displayed on the screen (i.e. the flightgear window), just like ATC 
messages. So the server can send state information to the client. After 
reading some source code and discussing this on the irc channel I've noticed 
that the necessary infrastructure is already there but not used. The network 
protocoll supports chat-messages and the ATC-module has functions to queue 
and display them on screen. So it should'nt be too hard to combine them and 
enable chat-messages. Somebody willing to give it a try?

3) artificial life at airports
 The server gives a lot of opportunities. One of the first things which came 
to my mind was artificial traffic at airports. It should be fairly easy  to 
write clients in any (network capable) language which do simulate a client. 
This can be simply a helicopter standing near a hangar or even a plane flying 
around an airport. This would disburden fgfs itself (since it does not need 
to create AI traffic itself) and allow an arbitrary number of artificial 
clients, each serving it's "own" airport (or whatever area), bringing life to 
many areas of the world without manipulating fgfs itself.

so far,
Oliver

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d


Re: [Flightgear-devel] Overhaulling the networking code (was: Multiplayer crashes with unknown aircrafts, any solution?)

2005-07-19 Thread Oliver Schroeder
Am Friday 15 July 2005 23:34 schrieb Ampere K. Hardraade:
> I think it will be more flexible if the networking portion of FlightGear
> can be modified to exchange properties.  For starter, the
> nodes /accelerations, /positions, and /surface-positions can be exchanged
> among users.  Properties under /accelerations can allow one client to
> interpolate the position of others, thus eliminating jitters.  Properties
> under /position are basically what being exchanged right now.  As
> to /surface-positions, the properties inside this node can allow one to see
> the animations of others correctly.

The existing code only needs some minor modifications to allow any kind of 
property to be send over the wire. There are only a couple of functions to 
modify in order to do this. That way it is possible to "configure" the 
network protocoll via XML-files and let NASAL do the logic (as suggested by 
hfitz on the AVsim forum, see 
http://forums.avsim.net/dcboard.php?az=show_mesg&forum=198&topic_id=913&mesg_id=934&page=)

NASAL "only" has to fill a message structure and let the network-code send it 
over the wire.

There are, however, some issues with networking. To actually send diefferent 
kinds of properties over the wire, you have two possibilities:

1) "chain" properties in one packet
2) send each property in its own packet

In case 1) it may be possible to blast the capacity of packets (MTU) in which 
case the packet becomes splitted. And it may be difficult to handle splitted 
packets.

In case 2) you possibly interfere with the "frequency" used to send packets 
and thus make it very difficult to keep clients in sync.

> To cut down the amount of data being sent/received, a client only have to
> broadcast the above nodes once, and resend individual properties when
> needed.

In general you don't want to send large amount of data using UDP. You will 
eihter have to deal with lost data (which is getting worse with every 
additional client) and have to  calculate approximations for values 
in the property tree or have to use some kind of "data-received-confirmation" 
machanism producing overhead.

And it may be unnecessary to broadcast the tree. Assuming a normal startup of 
clients, every client can be initialized as they were local. This should give 
already a good approximation of its status at startup. And as packets arrive 
with updated property values, the data becomes more and more "right".

And calculate approximations for the property tree of other clients is 
necessary anyway to 1) deal with lost packets, 2) deal with low frequency 
rates of network packets and 3) temporary performance leaks of the local 
instance of fgfs.

just my 2c,
Oliver

___
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d