FlightGear Newsletter September 2012: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
Line 5: Line 5:


== Development news ==
== Development news ==
Note to all developers: Please also copy your newsletter additions to the changelog of the upcoming release: [[Changelog_3.0.0]].
<!-- These are currently just a bunch of placeholders for the latest projects (as of 08/2012)  -->
=== Random Buildings ===
=== Random Buildings ===
Shortly after the 2.8 release, a number of users reported severe memory growth issues related to a new feature: [[Random Buildings]].
Shortly after the 2.8 release, a number of users reported severe memory growth issues related to a new feature: [[Random Buildings]].
Line 41: Line 38:


=== Canvas System ===
=== Canvas System ===
<!--additions should also be added to:http://wiki.flightgear.org/Changelog_3.0.0#Some_of_the_major_changes_include: -->
Work has now started to develop a dedicated Nasal module specifically for [[Canvas Maps|mapping/charting purposes]]. A first proof of concept is available in $FG_ROOT/Nasal/canvas/map.nas, but we expect to commit more changes (and a real API) soon. Initially, we'll be collecting all related features in a single "map.nas" module, and refactor/improve things later on.  
Work has now started to develop a dedicated Nasal module specifically for [[Canvas Maps|mapping/charting purposes]]. A first proof of concept is available in $FG_ROOT/Nasal/canvas/map.nas, but we expect to commit more changes (and a real API) soon. Initially, we'll be collecting all related features in a single "map.nas" module, and refactor/improve things later on.  


Line 83: Line 78:


With these changes in place, it is already possible to directly show a SVG image for each waypoint and connect them using OpenVG paths, even without separate "icon" support.
With these changes in place, it is already possible to directly show a SVG image for each waypoint and connect them using OpenVG paths, even without separate "icon" support.
=== High Level Architecture ===
=== FlightGear On Android ===
=== Mailing list digest ===
(by far the easiest option to populate the newsletter with contents is copying/pasting stuff from the forum and the mailing list or the git logs)


=== Usability Improvements ===
=== Usability Improvements ===
Line 116: Line 103:


Aircraft typically have a large number of checklists, covering almost every phase of flight.  Previously, aircraft authors have added checklists to the help text for the aircraft.  This is a bit unwieldy.  To improve matters, there is now an Aircraft Checklists dialog under the Help menu specifically designed to organize and display checklists.  Aircraft authors can create new checklists easily without having to worry about how they will be displayed.  See [[Aircraft Checklists]] for details.
Aircraft typically have a large number of checklists, covering almost every phase of flight.  Previously, aircraft authors have added checklists to the help text for the aircraft.  This is a bit unwieldy.  To improve matters, there is now an Aircraft Checklists dialog under the Help menu specifically designed to organize and display checklists.  Aircraft authors can create new checklists easily without having to worry about how they will be displayed.  See [[Aircraft Checklists]] for details.


==== Integrated Documentation Browser ====
==== Integrated Documentation Browser ====
Line 124: Line 110:
Often, especially new FlightGear users are not aware of all the documentation that comes with FlightGear. While the manual is fairly easy to find and pretty accessible (being a PDF file), most of the other documentation in $FG_ROOT/Docs is hardly easy to find and often pretty inaccessible to new users, even though these files are standard text files, because of the non-standard file extensions used by most README* files there.  
Often, especially new FlightGear users are not aware of all the documentation that comes with FlightGear. While the manual is fairly easy to find and pretty accessible (being a PDF file), most of the other documentation in $FG_ROOT/Docs is hardly easy to find and often pretty inaccessible to new users, even though these files are standard text files, because of the non-standard file extensions used by most README* files there.  
That's why we have now added a new built-in dialog to FlightGear which shows most plain text files in $FG_ROOT/Docs directly inside FlightGear, without having to start any other applications.
That's why we have now added a new built-in dialog to FlightGear which shows most plain text files in $FG_ROOT/Docs directly inside FlightGear, without having to start any other applications.
=== Forum digest ===
=== Git digest ===
=== Getting involved as a programmer ===
Please see [[Howto:Start core development]]
== Release ChangeLog ==
This section lists changes committed this month that will be available in the next release, these will be copied to the release changelog shortly before a release (for each month), so that we hopefully get a comprehensive list of new features.


== Interview with a contributor (Thorsten Renk) ==
== Interview with a contributor (Thorsten Renk) ==
''In each edition we have an interview with a contributor. Suggestions for possible questions are available on [[interview questions]], you are invited to come up with new questions and interview ideas obviously! Anyone is free to write an interview (with him-/herself or others) for next month's newsletter! If you'd like to help interview a contributor or get interviewed, please do consider adding yourself to the [[list of interview volunteers]]! To keep this going and less awkward, we are currently trying to come up with the convention that former interviewees become next month's interviewers.''
''In each edition we have an interview with a contributor. Suggestions for possible questions are available on [[interview questions]], you are invited to come up with new questions and interview ideas obviously! Anyone is free to write an interview (with him-/herself or others) for next month's newsletter! If you'd like to help interview a contributor or get interviewed, please do consider adding yourself to the [[list of interview volunteers]]! To keep this going and less awkward, we are currently trying to come up with the convention that former interviewees become next month's interviewers.''


* How long have you been involved in FlightGear?
* '''How long have you been involved in FlightGear?'''
 
Since late 2009.
Since late 2009.


* What are your major interests in FlightGear?
* '''What are your major interests in FlightGear?'''
 
In the broadest sense, modelling of the environment. I've started out modelling clouds and weather, then as I discovered shaders I've also included dust, haze and light scattering effects, and of late I am into improved ways of texturing the terrain.
In the broadest sense, modelling of the environment. I've started out modelling clouds and weather, then as I discovered shaders I've also included dust, haze and light scattering effects, and of late I am into improved ways of texturing the terrain.


All these areas are related, so it's actually pretty powerful if the same person knows how to affect all of them - for instance, on a rainy day, we not only see an overcast cloud layer, but also the light beneath the clouds is dimmed, the sunrise has a different color hue, the ground is wet and hence darker than usual and there may be water on the ground. Being able to do all these things with the same environment model is pretty cool.
All these areas are related, so it's actually pretty powerful if the same person knows how to affect all of them - for instance, on a rainy day, we not only see an overcast cloud layer, but also the light beneath the clouds is dimmed, the sunrise has a different color hue, the ground is wet and hence darker than usual and there may be water on the ground. Being able to do all these things with the same environment model is pretty cool.


* What project are you working on right now?
* '''What project are you working on right now?'''
 
Procedural texturing, i.e. computing the texture mix to be displayed on the terrain inside the shader code - this allows for effects which would be impossible to achieve with the standard way of assigning textures due to the huge memory footprint.
Procedural texturing, i.e. computing the texture mix to be displayed on the terrain inside the shader code - this allows for effects which would be impossible to achieve with the standard way of assigning textures due to the huge memory footprint.


* What do you plan on doing in the future?
* '''What do you plan on doing in the future?'''
 
Who knows? I have plenty of things I would like to do and in principle know how to do - the problem is just making them run fast enough. It's pretty amazing how fast a graphics card can crunch numbers, but there are limits eventually. And basically every day, looking out of the window and observing the richness in detail on a real sky, I see how inadequate even our most advanced shading models really are. It's amazing how nature solves all the rendering equations in real time.
Who knows? I have plenty of things I would like to do and in principle know how to do - the problem is just making them run fast enough. It's pretty amazing how fast a graphics card can crunch numbers, but there are limits eventually. And basically every day, looking out of the window and observing the richness in detail on a real sky, I see how inadequate even our most advanced shading models really are. It's amazing how nature solves all the rendering equations in real time.


* Are you happy with the way the FlightGear project is going?
* '''Are you happy with the way the FlightGear project is going?'''
 
Mostly. I know many people think FlightGear should have a project structure which works more like a commercial project, i.e. with clearly defined project goals and well-defined tasks. Rather, it is a somewhat anarchic collection of different individual projects merged together, often with multiple ways to solve the same problem (we support as many as four different ways to generate clouds for instance) which makes it not always easy for new contributers in need of a feature. But, coming from a research environment, I actually feel quite at home with such a development model - science works the same way, and for instance, while having several independent ways of doing the same thing can be seen as a waste of resources, it can also be seen as a feature - we explore many different ways of doing things which helps us find the best solution.
Mostly. I know many people think FlightGear should have a project structure which works more like a commercial project, i.e. with clearly defined project goals and well-defined tasks. Rather, it is a somewhat anarchic collection of different individual projects merged together, often with multiple ways to solve the same problem (we support as many as four different ways to generate clouds for instance) which makes it not always easy for new contributers in need of a feature. But, coming from a research environment, I actually feel quite at home with such a development model - science works the same way, and for instance, while having several independent ways of doing the same thing can be seen as a waste of resources, it can also be seen as a feature - we explore many different ways of doing things which helps us find the best solution.


What I don't like is that there is often a lot of friction - for instance 3-D modellers feel underappreciated since most of the project decisions are made by the coders, there's an ongoing controversy between scripting space (Nasal) and C++ coding, and there are contributors of world scenery vs. custom scenery creators. While some level of discussion seems useful to me, related discussions often reach a point which I find no longer productive.
What I don't like is that there is often a lot of friction - for instance 3-D modellers feel underappreciated since most of the project decisions are made by the coders, there's an ongoing controversy between scripting space (Nasal) and C++ coding, and there are contributors of world scenery vs. custom scenery creators. While some level of discussion seems useful to me, related discussions often reach a point which I find no longer productive.


* What do you enjoy most about developing for FlightGear?
* '''What do you enjoy most about developing for FlightGear?'''
 
The same thing Tolkien enjoyed about writing 'The Lord of the Rings' - the possibility to do subcreation. The visible FlightGear scenery is a world to explore, and this world is directly and visibly influenced by code I write. I can place myself high up in the air, look down and wave my mouse - and a whole layer of clouds appears. I get to decide what color the sunrise has. That's pretty fascinating as far as that goes.
The same thing Tolkien enjoyed about writing 'The Lord of the Rings' - the possibility to do subcreation. The visible FlightGear scenery is a world to explore, and this world is directly and visibly influenced by code I write. I can place myself high up in the air, look down and wave my mouse - and a whole layer of clouds appears. I get to decide what color the sunrise has. That's pretty fascinating as far as that goes.


And actually, I've always enjoyed flying through clouds in flight simulators - in the early ones, they were just so bad, but now I can make them just the way I've always wanted them to be. Flying between two scattered cloud layers is still one of my favourite activities.
And actually, I've always enjoyed flying through clouds in flight simulators - in the early ones, they were just so bad, but now I can make them just the way I've always wanted them to be. Flying between two scattered cloud layers is still one of my favourite activities.


* Are there any "hidden features" you have worked on in FlightGear that new users may miss?
* '''Are there any "hidden features" you have worked on in FlightGear that new users may miss?'''
 
Plenty. Several I decided not to release since they are too tricky to control, so flags switch them off. For instance, there's a working model for wave lift in the Advanced Weather code, but there is no code to automatically place it (that's much more tricky to develop), so the wave needs to be placed by hand with a suitable line of Nasal. There are experimental cloud layer definitions which are just too expensive to render on a normal system. Many things I just try, and when I find no good way of implementing them, they stay in the code in a de-activated mode.
Plenty. Several I decided not to release since they are too tricky to control, so flags switch them off. For instance, there's a working model for wave lift in the Advanced Weather code, but there is no code to automatically place it (that's much more tricky to develop), so the wave needs to be placed by hand with a suitable line of Nasal. There are experimental cloud layer definitions which are just too expensive to render on a normal system. Many things I just try, and when I find no good way of implementing them, they stay in the code in a de-activated mode.


* What advice can you give to new developers who want to get started on their first aircraft/new feature/Nasal script?
* '''What advice can you give to new developers who want to get started on their first aircraft/new feature/Nasal script?'''
 
Be patient. The world doesn't revolve around you, but good work is recognized eventually.
Be patient. The world doesn't revolve around you, but good work is recognized eventually.


Line 180: Line 147:


I know it looks pretty unwelcoming if someone wants to contribute and needs to go a long way before getting help. On the other hand, I know the other perspective of investing a lot of work into someone's project, just to see the other person disappear and all that work being lost. So I understand much better that established developers want to see that someone is serious about what he proposes to do before they jump in.  
I know it looks pretty unwelcoming if someone wants to contribute and needs to go a long way before getting help. On the other hand, I know the other perspective of investing a lot of work into someone's project, just to see the other person disappear and all that work being lost. So I understand much better that established developers want to see that someone is serious about what he proposes to do before they jump in.  
More questions are being collected here: [[Interview questions]].
Stay tuned for next month's interview, featuring FlightGear contributor XXXXXXXX
== Snapshot releases ==
Every now and then, easy-to-install development snapshots are created (usually, twice montlhy). These snapshos depict a recent state of the development version of FlightGear. By using them users can test out features that will be included in the upcoming release. Testers are encouraged to file bugs at [http://code.google.com/p/flightgear-bugs/ the issue tracker].
The snapshot can be download via the links at the bottom of this page: http://www.flightgear.org/download/. Updates and feedback can be found [http://flightgear.org/forums/viewtopic.php?f=28&t=10488&p=144233&hilit=snapshot#p144233 at the forum].


== Translators required ==
== Translators required ==
Line 201: Line 159:
|De FlightGear Wiki kan nog steed hulp gebruiken bij het vertalen van artikelen. Als je interesse hebt om de wiki meertalig te maken, raden we je aan om een kijkje te nemen bij [[:nl:Help:Vertalen|Help:Vertalen]].
|De FlightGear Wiki kan nog steed hulp gebruiken bij het vertalen van artikelen. Als je interesse hebt om de wiki meertalig te maken, raden we je aan om een kijkje te nemen bij [[:nl:Help:Vertalen|Help:Vertalen]].
|}
|}
== Nasal for newbies ==
== New software tools and projects ==
== FlightGear addons and mods ==
== In the hangar ==
All the way back in May 2011, we addopted a new status-rating system for aircraft. So far, only a few have actually been rated, as can be seen in the list 'hockenberry' set up at [https://docs.google.com/spreadsheet/ccc?key=0ApzphjA4w05ndF94Y2F0bzJTbHQ5QTJXZXJRcUVRbWc&hl=en_US Google Docs]. If you're an aircraft developer and your aircraft is/are not on the list, please consider rating their status. All you'll need to know/do is described at [[Formalizing Aircraft Status]]. If you'd just like to get started contributing to FlightGear, this would also seem like an excellent way to get started.
=== New aircraft ===
=== Updated aircraft ===
=== Liveries ===


== Scenery corner ==
== Scenery corner ==
Line 252: Line 194:


The creation of the scenary is still an on-going project. Additional information and temporary data files can be found at [http://flightgear.creatuforo.com/-temas30521.html?sid=976c97a07264ae7e75b15fbee03373a0#30521 Vive FG!]
The creation of the scenary is still an on-going project. Additional information and temporary data files can be found at [http://flightgear.creatuforo.com/-temas30521.html?sid=976c97a07264ae7e75b15fbee03373a0#30521 Vive FG!]
== Aircraft of the month ==
== Airport of the month ==
== Screenshot of the month ==
== Suggested flights ==
== Aircraft reviews ==
== Wiki updates ==
===New articles===
<DynamicArticleList>
  type=new
  count=10
</DynamicArticleList>
===New aircraft articles===
<DynamicArticleList>
  type=new
  count=10
  categoryRoot=Aircraft
</DynamicArticleList>
===Most popular newsletters===
<DynamicArticleList>
  type=hot
  count=5
  categoryRoot=FlightGear Newsletter
</DynamicArticleList>


== Community news ==
== Community news ==
=== FlightGear on YouTube ===
=== FSweekend 2012 ===
[[Image:FSweekend_2011.jpg|thumb|270px|The FlightGear booth at FSweekend 2011.]]
On 3 and 4 November 2012, FlightGear will be present at [[FSweekend 2012]], the world's largest flight simulator event. Will you visit our booth? More information at the event's page: [[FSweekend 2012]].


=== New tutorials and screencasts ===
[[File:FSweekend banner 2012.jpg]]
=== Forum news ===
=== Multiplayer ===
=== Virtual airlines ===
=== FlightGear events ===


== Useful links ==
== And finally ... ==
== And finally ... ==
=== Contributing ===
=== Contributing ===
Line 303: Line 216:
* The [[FGFSPM]] (FlightGear Package Manager) is looking for a new maintainer.
* The [[FGFSPM]] (FlightGear Package Manager) is looking for a new maintainer.


=== Did you know ===
[[Category:FlightGear Newsletter|2012 09]]
 
[[Category:FlightGear Newsletter]]

Navigation menu