Hi Paul,

As others have pointed out, there has been a small amount of AI traffic
development going on, and as the guilty party I'd better pipe up sooner
rather than later :-)  I'll describe what I've been doing and leave it up
to you whether you want to join in with that or start afresh.

I've started from the premise that if there's going to be a number of
planes in the sky at once, then they should take up as few CPU cycles each
as possible.  Hence my vision is for very simplified mechanics of flying -
basically known ranges of speed, bank, climb etc for a given flight
condition, and a bit of smoothing of transitions in between.  Also only
very near AI planes to the viewer to be updated every frame, the rest to be
updated 1 per frame, and hence robust to variable times between updating.
I'm pretty sure that not everyone agrees with that, and that some would go
for coupled autopilot/fdms flying the planes as if they were another
user-fidelity flight-model, but the simplified route is the one I started
down.  Then my basic structure is that an AI manager iterates through a
list of AIEntity classes, and updates one per frame.  The AIEntity has the
minimum logic necessary to be drawn on the screen, and progressivly more
complex classes are derived from it - for instance a plane that can taxi,
then a light plane that can fly circuits could be derived from that and
would already know how to taxi, and then a light plane that flys from one
airport to another could be derived from that and would already know how to
fly circuits and taxi.

Having said all that, I've basically hardly started!  I've got one
hardwired AI plane in so far, that can be seen by starting FlightGear with:

fgfs --airport-id=KEMT --prop:"/sim/ai-traffic/enabled"=true
--prop:"/radios/comm/frequencies/selected-mhz[0]"=121.2 --heading=10 

You do need to download the w120n30 scenery block as well.  This will start
you at El Monte behind a light single (no, NOT cheese!!!)  that takes off,
flys a circuit, and then taxis back to a parking spot.  It's great fun to
try following it round.  You can make it fly touch and go's by changing
line 54 in AIMgr.cxx: local_traffic->FlyCircuits(1, true); to a larger
value than 1.

The limit of my ambition at the moment is to get light planes taxiing in
and out of and flying circuits around GA airports at the moment.  This is a
huge amount of work in itself - particularly the taxiing part, which also
involves writing an infrastructure to describe logical taxiway and parking
networks at airports, and tools to allow users to create/modify them.
There's absolutely no way I'm going to get time to do any planes that fly
from one airport to another in the next year or so.

Anyway, the nub of the matter is that you can either join in with what's
started, where the best separation of work is probably to go for planes
that fly from one airport to another, or start afresh if you think I'm on
the wrong track.  If you start afresh bear in mind you'll need some
communication with the ATC system - both to send and recieve messages.
Interactive communication with tower control (You are number 2, extend
downwind for traffic on straight in / go-around I repeat go-around /
cleared to land etc) should be comming quite soon and you'll need to
respond to those.  If you do you're own taxiing system then communication
with ground control (in a programming logic sort of way rather than spoken
transmission) is a right can of worms since we need to communicate a
logical representation of a path to follow to and from tower and plane.

James Turner has started some impressive work on implementing Flightplans
in Flightgear, and an interface to the DAFIF data which includes loads of
stuff such as airways, TMAs, SIDs, STARs, etc.  I'd thoroughly recommend
getting in touch with him before doing too much since you'll almost
certainly want to use his stuff.

Whatever you do, any logic on how to fly from one place to another will be
useful whatever system to glue it in ends up getting used.

Have fun,

Cheers - Dave

 

*********** REPLY SEPARATOR  ***********

On 2/9/03 at 5:59 PM Paul Morriss wrote:

>Hi,
>  Is there any procedure for software documents etc?
>
>I have an outline of how I intend to write the
>software, I will start with other planes in the sky
>for now.
>
>Paul
>
>----- Original Message ----- 
>From: "Jim Wilson" <[EMAIL PROTECTED]>
>To: <[EMAIL PROTECTED]>
>Sent: Saturday, February 08, 2003 4:29 PM
>Subject: Re: [Flightgear-devel] Dynamic Scenario's
>
>
>> Paul Morriss <[EMAIL PROTECTED]> said:
>> 
>> > Hi all,
>> >    I am new to Flight Gear, but not to flight
>> > simulation, thats my line of business ;)  Anyway I
>> > would like to propose (and develop) a server or
>system
>> > that can be used to manage the environment.  What
>I
>> > mean is that the scenario system manages:
>> > 
>> > *  Other plans in the air, these can add the
>reality
>> > of busy airspace near large airports.
>> > 
>> > *  Weather system controlled through scenarios,
>this
>> > would include clouds, rain etc...
>> > 
>> > *  Ground vehicles movement (aircraft ready to
>taxi
>> > for takeoff etc.
>> > 
>> 
>> Sounds great.  Actually I was recently thinking that
>this might be the best
>> way to do traffic.
>> 
>> You should be able build a property tree under
>/sim/traffic (or whereever)
>> with multiple entries for the "position" and
>"orientation".  See the current 
>>  /position and /orientation property paths for
>example.  The setup xml
>> configuration files for the models you want to
>include, specifing the paths to
>> the property for each position and orientation data
>item (e.g.
>> latitude-deg-prop, longitude-deg-prop,
>altitude-ft-prop, etc).
>> 
>> Then all that is left is to set the position and
>orientation values via the
>> network interface and the models will move
>accordingly.  Of course the work
>> will be in developing whatever technique you want to
>use to move these around.
>> 
>> Best,
>> 
>> Jim
>> 
>> _______________________________________________
>> Flightgear-devel mailing list
>> [EMAIL PROTECTED]
>> http://mail.flightgear.org/mailman/listinfo/flightgear-devel
>
>__________________________________________________
>Do You Yahoo!?
>Everything you'll ever need on one web page
>from News and Sport to Email and Music Charts
>http://uk.my.yahoo.com
>
>_______________________________________________
>Flightgear-devel mailing list
>[EMAIL PROTECTED]
>http://mail.flightgear.org/mailman/listinfo/flightgear-devel




_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to