Template:Nasal Efforts
Jump to navigation
Jump to search
Recent Efforts
Tutorials & Missions
- set up a gitorious repo with shared access for all contributors [1]
- helicopter missions (Marius_A [2] )
- Walk View support (Marius_A [3] )
- AI scenarios support (Marius_A [4] )
- NPC support (DFaber [5] )
- self-steering AI vehicles (DFaber [6] )
- extend the framework to support reloading/restarting tutorials at runtime (Marius_A [7] )
- support dynamic mission objectives instead of just static positions Not done [8] [9]
- investigate supporting Nasal blocks for having multiple instances of an AI/model i.e. for vehicle/NPC control [10] Not done
- investigate supporting optional Canvas areas for showing mission objectives via MapStructure (Hooray & ludomotico[11] ) [12]
- procedurally-created Canvas GUI dialogs, e.g. for interaction with NPCs and mission briefings Not done
- allowing startup time and environmental settings (weather/METAR string) to be stored as part of the tutorial (e.g. for CAT3 approaches at night time) Not done
Canvas MapStructure
Type | Work item | Progress |
---|---|---|
Layer | FIX | |
LOD support | LOD handling (i.e. range awareness) needs to be finalized and applied to all existing symbol files | |
New Layer | Navaids (meta layer for VOR, DME, NDB) | Done |
Traffic Layer | TFC | |
New Layer | DATA (needs label decluttering [13] ) | Not done |
New Layer | HISTORY | Done |
New Layer | cached GRID (lat/lon) [14] | |
New Layer | tiled maps/SAT (online [15] , [16] ) | |
Controller | zoom | Done |
New Controller | interactive/editing [17] | |
New Controller | magnetic (see navdisplay.mfd & unify!) | Not done |
New Controller | center on acft (see navdisplay.mfd & unify!) | Not done |
New Controller | acft hdg up (see navdisplay.mfd & unify!) | Not done |
New Controller | panning/translating (see $FG_ROOT/canvas/map/generic-canvas-dialog.xml) | Not done |
- allow layers to be configured per aircraft ticket #1388
- use switches hash to procedurally create a GUI dialog with buttons for each toggle_action (TFC,CTR,WXR etc) Not done
- make sure that the frameworks with properly with time-warp, sim-rate speed-up and replay Not done
- remove (old) disabled layers Done
- use MapStructure options hash to encode things like nav/comm stuff (anything referencing /instrumentation/) Not done
- make the timer update interval configurable via constructor Not done
- consider adding hooks to generalize those huge conditionals in update() some more Not done
- use foreach() to hide()/show() or setVisible() groups of symbols Not done
- make this more aircraft agnostic by getting rid of 747/Boeing specific assumptions Not done
- unify switch/case|default handling (again, huge conditionals in there) Not done
- on_update() helper should probably support global listeners and timers, too - i.e. via a hash spec ? Not done
- the whole symbol lookup needs to cleaned up (getElementById etc) Not done
- introduce a common "compute" field in the update/predicate hash and make its results available to is_true/false etc Not done
- use io.include to include boeing specific stuff Done (see navdisplay.styles for now)
- NDSourceDriver should be generalized and combined with MapStructure's aircraftpos.controller Not done
- the radio/autopilot listeners need to be set up in the lcontroller file, they're just empty stubs for now Not done
- there are 3 foreach loops in newMFD() setting up symbols currently-we only need ONE: loop 2+3 should be removed and use the loop #1 method Not done
- clean up the ctor and generalize the newMFD() method Not done
- move stuff out of the update() method into the aircraft-specific configuration hash Not done
- generalize/extend on_update() method to support other (global) properties and/or listeners/timers to run predicates Not done
- identify opportunities for improving the framework Not done
- support multiple routes (WPT/RTE), as per the Nasal Flightplan API (Hooray) Not done
- move the config hash out of the navdisplay.mfd file and use io.include instead Not done
- document SVG symbols currently assumed to be available in the ctor Not done
- consider using some of the SGCondition/StateMachine stuff in SG Not done