2,733
edits
Red Leader (talk | contribs) (Some cleanup) |
Red Leader (talk | contribs) (More cleanup) |
||
Line 80: | Line 80: | ||
== Troubleshooting reset/re-init == | == Troubleshooting reset/re-init == | ||
[[File:Reset-reinit-control-panel.png|thumb| | [[File:Reset-reinit-control-panel.png|thumb|Reset/Re-init control panel, implemented using Nasal & Canvas, for regression testing purposes.]] | ||
FlightGear does not currently support saving/loading flights or reliably switching between aircraft at run-time | FlightGear does not currently support saving/loading flights or reliably switching between aircraft at run-time (this is extensively discussed at [[FlightGear Sessions]]). [[Reset & re-init]] is an effort to refactor the FlightGear initialization process so that resetting and repositioning is supported, without having to exit or restart FlightGear. Currently, this is exposed via the Canvas-based [[Aircraft Center]], but is considered broken or fragile at best by most core developers. | ||
[[ | The core developers are aiming to find out the dependencies of different subsystems, and re-factor them so that more and more subsystems can be made optional (analogous to [[FlightGear Run Levels|run-levels]]), enabling them to be dynamically removed and re-added at run-time. This will be particularly important to untangle implicit or hard-coded dependencies among the different subsystems, and will be one of the key tasks to move certain subsystems into dedicated [[High-Level Architecture]] (HLA) {{wikipedia|High-level architecture#Common HLA terminology|federates|noicon=1}}. | ||
One of the long-term goals is to provide a so called "[[FlightGear Headless|headless]]" mode so that certain features/subsystems (unrelated to graphics) can be better tested in isolation. An example would running FlightGear in an automated fashion on the [[FlightGear Build Server]], which could help increasingly automate the release process and related regression testing. | |||
The other goal is to increasingly modularize FlightGear by using HLA and split off the simulation loops (see also [[FGViewer]]), as well as supporting different renderers (such as [[Rembrandt]] and [[ALS]]), scenery engines (e.g., standard and [[osgEarth]]) and weather engines, in a fashion similar to how FlightGear already supports different FDM engines ([[JSBSim]] and [[YASim]]). HLA will make it possible for certain subsystems to be moved to dedicated cores by using separate threads or even processes, meaning that certain subsystems may even be able to be on a different computer, in a distributed setup. | |||
The | The underlying requirement that these efforts share is that there needs to be a much better re-initialization process, with no hard-coded assumptions about running subsystems or initialization order. | ||
For the time being, however, many of these efforts are not yet completely functional, so more feedback and data are needed. | |||
You can help this effort by running the relevant APIs and providing GDB (GNU Debugger) backtraces and bug reports (or [[CrashRpt|crash reports]] if you have Windows) of any segmentation faults that occur. | |||
''Find out more at [[Howto:Reset/re-init Troubleshooting]].'' | |||
== In the hangar == | |||
== The FlightGear Dragon == | |||
{{#ev:youtube|P-bP93JfqLQ}} | {{#ev:youtube|P-bP93JfqLQ}} | ||
== Scenery corner == | == Scenery corner == |