Canvas ND framework: Difference between revisions

Jump to navigation Jump to search
m
→‎Custom ND Styles: http://forum.flightgear.org/viewtopic.php?f=4&t=12903&p=206852&hilit=canvas+airbus#p206852
m (→‎Aircraft Support: http://forum.flightgear.org/viewtopic.php?f=71&t=22045&p=200575&hilit=canvas+airbus#p200575)
m (→‎Custom ND Styles: http://forum.flightgear.org/viewtopic.php?f=4&t=12903&p=206852&hilit=canvas+airbus#p206852)
Line 203: Line 203:


Note that this will initially just give you a Boeing-centric ND, because it is currently being developed by the 747/777 maintainers primarily - please use the issue tracker to file feature requests for missing features. Over time, the framework will grow and become more flexible,so that also specifics of non-Boeing aircraft can be properly emulated. But obviously this will take a while. We invite aircraft developers to help extend and refine the framework accordingly.
Note that this will initially just give you a Boeing-centric ND, because it is currently being developed by the 747/777 maintainers primarily - please use the issue tracker to file feature requests for missing features. Over time, the framework will grow and become more flexible,so that also specifics of non-Boeing aircraft can be properly emulated. But obviously this will take a while. We invite aircraft developers to help extend and refine the framework accordingly.
Design-wise, the ND code still isn't quite there yet, so I would still postpone any custom implementations - it is better to coordinate things with Gijs and Hyde to keep on improving the existing ND, rather than re-implementing an airbus-specific one at the moment. Simply because things are very much in flux still - there's quite a bit of refactoring pending, and it seems that neither of us is going to tackle this anytime soon.
We can obviously not stop anybody from working with that code, but we would very much prefer to scratch off a handful of items from our todo list first - otherwise, this is going to be a maintenance problem in the mid-term.
Working on anything listed there should help prepare the design such that the framework becomes more aircraft agnostic, i.e. to support manufacturer-specific ND types.
Currently, we are simply not there yet - and some of the recent additions aren't exactly making this much easier unfortunately.


For the time being, please disregard the custom implementations (e.g. an Airbus version) until the NavDisplay/MapStructure frameworks have matured a little more - i.e. maybe given it another 3 months.  
For the time being, please disregard the custom implementations (e.g. an Airbus version) until the NavDisplay/MapStructure frameworks have matured a little more - i.e. maybe given it another 3 months.  
Line 214: Line 222:
We appreciate any help in maintaining and updating these frameworks, but currently these are not yet as flexible (aircraft-agnostic) as they need to be.
We appreciate any help in maintaining and updating these frameworks, but currently these are not yet as flexible (aircraft-agnostic) as they need to be.


Speaking in non-coding terms: When we refactored the ND code, we explicitly wanted to support different makes/models for different aircraft using a single back-end and code base. And that's something that is already prepared in the design in several places, and it may seem straightforward to people not familiar with the code.
Here, you could say that the ND itself is the 3D model, while the "style" is analogous to a "livery" (texture pack).
The way things are implemented, we prepared support for "livery packs", and for easily creating new styles without having to touch the code.
However, currently there's still some work that needs to be done, and Gijs, Hyde and Soitanen have added features that need to be integrated properly first - you could say that they're working on the "3D model" still, so it's not such a good idea to create lots of "liveries" (styles) currently
So it would be better to wait a little here and provide plenty of feedback in the meantime - if you really want to, you can get involved in the ND/MapStructure efforts themselves, but I would not yet suggest to come up with a totally new ND implementation - unless you're also prepared/willing to do the necessary groundwork, i.e. Nasal-space refactoring - the latter will mostly affect the new/newMFD/update functions - so not too difficult to understand if you are interested.  
So it would be better to wait a little here and provide plenty of feedback in the meantime - if you really want to, you can get involved in the ND/MapStructure efforts themselves, but I would not yet suggest to come up with a totally new ND implementation - unless you're also prepared/willing to do the necessary groundwork, i.e. Nasal-space refactoring - the latter will mostly affect the new/newMFD/update functions - so not too difficult to understand if you are interested.  


Navigation menu