Attached are patches to Terragear to enable it to compile out of the box on
Cygwin (once all the relavent libraries have been compiled). Specifically
they fix a conflict with another version of min/max somewhere on the
system.
based on the terrain simplification algorithm in Michael Garlands paper
located here:
http://graphics.cs.uiuc.edu/~garland/software/terra.html
Essentially start with two triangles forming the bounding surface.
Then add the point that has the greatest error. Retriangulate.
Recalcuate errors for each remaining point, add the one with the
greatest error. Lather, rinse, repeat.
position.
Terrasync runs as a separate process and accepts the --atlas=port format.
The fgfs output tells the terrasync util where FlightGear is currently flying.
Terrasync will then issue the appropriate commands to rsync the surrounding
areas to your local scenery directory.
As you fly, terrasync will periodically refresh and pull any new scenery tiles
in the vicinity.
This also works if the scenery on the scenery server is update. Rsync will
pull any missing files, or any updated files.
There is a chicken/egg problem when you first start up in a brand new area.
FlightGear is expecting the scenery to be there *now* but it hasn't been
fetched yet. I suppose without making a more complex protocol, the user
will need to be aware of this. The user could restart flightgear after the
initial rsync completes, and then after that everything should be good,
assuming the user has the necessary bandwidth to keep up with flight speeds.
Final notes:
At the moment Alex Perry has a partial rsync server, but I don't know it's
status. I hope to have a full server up and running at some point soon.
Currently the terragear utility just echos the commands it would run to
rsync the data, it doesn't actually run the commands. This is a work in
progress.