Plan-zakalawe: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Task List ==
== Task List ==
=== Short term ===
* Improve airport-search performance for the release
=== Core properties and subsystems ===
* Support [[State_machines|state-machines]] and some stateful expression in XML, to assist in building complex autopilots.
* Work with Thorsten to re-write [[Reset & re-init|re-init]] to be a normal sim-startup
* USB-HID support, support for more HID devices
** Add a hidapi backend to event-input code
** Write a loader to use existing joystick configs with event-input
** Remove PLIB JS dependency
* Migrate Nasal geo.Coord to be implemented in C++, and hence agree with SGGeodesy functions for courses, distances and so on.
* Make it possible to implement commands in Nasal.  (i.e a nasal method to register a function under a command name)
=== Data / deployment ===
* Finish libSvn replacement code
* Support a list of 'hangar' repositories and synchronising aircraft from them
* Investigate making other optional base-package data be dynamically loaded


=== GUI / renderer ===
=== GUI / renderer ===


* Adapt the 2D panel code to build Canvas nodes
* Adapt the 2D panel code to build Canvas nodes
* Adapt the HUD code to build Canvas nodes - horrible task, but needs to be done


* Create a knob animation to standardise handling of rotatable knobs and switches. This would include standard use of mouse-wheel or buttons, hopefully some cursor feedback, and the actual rotation animation. Dragging interaction could also be added (press and drag to rotate the switch). This would greatly reduce typing in cockpit XML files, and allow a global pref for mouse-wheel direction, button-bindings to increase/decrease rotary switches, and so on.
=== GPS / FMS / Route-planning ===


=== GPS / FMS / Route-planning ===
* Make an 'IRS' instrument which models an inertial reference platform (partially done, but the simulation of the IRS needs to be changed to an error-walk model instead of attempting actually integration of acceleration values, which is too inaccurate at our simulation rate without sophisticated integrators)


* Make a 'GPS receiver' instrument which models the physical GPS instrument
* Make an 'IRS' instrument which models an inertial reference platform
* Make a radio-positioning module (DME triangulation)
* GPS Restructuring
* GPS Restructuring
** Make the current 'GPS' instrument use a selectable position source - sim position, GPS, or INS.
** Break the C++ GPS into various discrete modules, which can be selected or combined from Nasal
** Break the C++ GPS into various discrete modules, which can be selected or combined from Nasal
** Bug-fix the various LNAV path controllers (DME arcs, DME intercepts)
** Bug-fix the various LNAV path controllers (DME arcs, DME intercepts)
** Move many current C++ GPS functions to Nasal (searching for waypoints, etc)
** Make a VNAV module for FMS use (compute climb and descent profiles)
** Make a VNAV module for FMS use (compute climb and descent profiles)


Line 47: Line 20:
=== Instruments / displays ===
=== Instruments / displays ===


* Port NavDisplay to use the Canvas internally
* <del>Port NavDisplay to use the Canvas internally</del> (see [[NavDisplay]]) {{Progressbar|70}}
* Refactor the radar-altimiter to not inherit from AG-radar
 
* Investigate why our IVSI behaves so badly
== Post 2.12 Tasks ==
 
=== Core properties and subsystems ===
 
* Re-write [[Reset & re-init|re-init]] to be a normal sim-startup
* USB-HID support, support for more HID devices (also see [https://code.google.com/p/flightgear-bugs/issues/detail?id=619 issue #619])
** Add a hidapi backend to event-input code
** Write a loader to use existing joystick configs with event-input
** Remove PLIB JS dependency
* Migrate Nasal geo.Coord to be implemented in C++, and hence agree with SGGeodesy functions for courses, distances and so on.
 
=== Navigation Data ===
 
* Unify airport dynamics modelling of active runways with ILS model, to solve the conflicting ILS issue in a more realistic way.
 
=== Data / deployment ===
* Enable persistent cache for TerraSync stamps
* Make libSvn replacement code enabled by default (and remove libsvn / libapr from builds)
* Improve sync reporting so finalize-position can wait on TerraSync tile sync
* Make various data elements synced over SVN - at least ATC chatter, AI models and traffic, and different texture sets (DDS, high-res, low-res)
* Once sim re-init is possible, enable aircraft switching and hence build a UI for the aircraft package manager code


[[Category:Developer Plans]]
[[Category:Developer Plans]]
[[Category:Core development projects]]
[[Category:Core development projects]]

Latest revision as of 18:18, 12 May 2014

Task List

GUI / renderer

  • Adapt the 2D panel code to build Canvas nodes

GPS / FMS / Route-planning

  • Make an 'IRS' instrument which models an inertial reference platform (partially done, but the simulation of the IRS needs to be changed to an error-walk model instead of attempting actually integration of acceleration values, which is too inaccurate at our simulation rate without sophisticated integrators)
  • GPS Restructuring
    • Break the C++ GPS into various discrete modules, which can be selected or combined from Nasal
    • Bug-fix the various LNAV path controllers (DME arcs, DME intercepts)
    • Make a VNAV module for FMS use (compute climb and descent profiles)

Using the above, more real-world GPS and FMC units can be created with Nasal to combine C++ core modules.

  • Create a generic Boeing CDU instrument, using the existing keypad model, but with the Canvas for the content. Various people have done parts of this, it's mostly a collating and refactoring job to get a solution that will scale to the 747-400, 777 and 737NG. Once that's done should discuss with Scott about any Airbus MCDU overlap (but likely not much is possible)

Instruments / displays

  • Port NavDisplay to use the Canvas internally (see NavDisplay) 70}% completed

Post 2.12 Tasks

Core properties and subsystems

  • Re-write re-init to be a normal sim-startup
  • USB-HID support, support for more HID devices (also see issue #619)
    • Add a hidapi backend to event-input code
    • Write a loader to use existing joystick configs with event-input
    • Remove PLIB JS dependency
  • Migrate Nasal geo.Coord to be implemented in C++, and hence agree with SGGeodesy functions for courses, distances and so on.

Navigation Data

  • Unify airport dynamics modelling of active runways with ILS model, to solve the conflicting ILS issue in a more realistic way.

Data / deployment

  • Enable persistent cache for TerraSync stamps
  • Make libSvn replacement code enabled by default (and remove libsvn / libapr from builds)
  • Improve sync reporting so finalize-position can wait on TerraSync tile sync
  • Make various data elements synced over SVN - at least ATC chatter, AI models and traffic, and different texture sets (DDS, high-res, low-res)
  • Once sim re-init is possible, enable aircraft switching and hence build a UI for the aircraft package manager code