FlightGear Newsletter March 2012: Difference between revisions

Jump to navigation Jump to search
Grammar Correction and Standard-English Clarification (please confirm to make sure summary is accurate?)
(Grammar Correction and Standard-English Clarification (please confirm to make sure summary is accurate?))
Line 22: Line 22:
Let's try to describe the thing in simpler terms: Most programs (like FlightGear) have a single large code base where all subsystems get their processing time assigned by so called "main loop" which sequentially iterates over all systems and calls their "update" routine, to give each system time to do its work (update weather, update GUI, update AI, update FDM, update sound etc).  
Let's try to describe the thing in simpler terms: Most programs (like FlightGear) have a single large code base where all subsystems get their processing time assigned by so called "main loop" which sequentially iterates over all systems and calls their "update" routine, to give each system time to do its work (update weather, update GUI, update AI, update FDM, update sound etc).  


Unfortunately, this also means that every subsystem running as part of the main loop has a direct effect on the simulation frame rate, i.e. the total run time cost of each complete update iteration is determined by the time spent in each individual routine, i.e. the total update time adds up: FDM+SOUND+AI+GUI etc
Unfortunately, this also means that every subsystem running as part of the main loop has a direct effect on the simulation frame rate, i.e. the total run time cost of each complete update iteration is determined by the time spent in each individual routine. Because of this, the total update time adds up; all the work of the FDM, sound, AI, GUI... these add up to framerate losses.
 
Basically, all the work FlightGear has to do are separate subroutines systems -and having more of them and more information to run directly affects framerates in-sim.


Whenever you add a new system, you need to add it to the program's main loop and add new source files to the code base of the program. This involves rebuilding FlightGear from source.  
Whenever you add a new system, you need to add it to the program's main loop and add new source files to the code base of the program. This involves rebuilding FlightGear from source.  
Line 30: Line 32:
Only the information that is really required will be exchanged, so the exchange of this information is the only run time footprint, each simulation is responsible to compute and update its own state.  
Only the information that is really required will be exchanged, so the exchange of this information is the only run time footprint, each simulation is responsible to compute and update its own state.  


Communications between each simulation node take place using a computer network and an API (similar to CORBA). All participating simulations are being managed by a central component, called the "Run-Time Infrastructure" (RTI).  
Communications between each simulation node take place using a computer network and an API (similar to CORBA). All participating simulations are managed by a central component called the "Run-Time Infrastructure" (RTI).  
The RTI monitors the overall simulation and manages the distribution of data between all individual nodes, which are called "federates". The simulation in its entirety is called a "federation" in HLA.
The RTI monitors the overall simulation and manages the distribution of data between all individual nodes, which are called "federates". The simulation in its entirety is called a "federation" in HLA.


We have started a new article and copied earlier announcements and postings to it, please see [[FlightGear HLA support (High Level Architecture)]].
We have started a new article and copied earlier announcements and postings to it; please see [[FlightGear HLA support (High Level Architecture)]] for more information.


=== Mailing list digest ===
=== Mailing list digest ===
219

edits

Navigation menu