Portal:Developer: Difference between revisions

Jump to navigation Jump to search
m
+-link: Category:Aircraft Resources → Category:Aircraft resources
m (Update forum links)
m (+-link: Category:Aircraft Resources → Category:Aircraft resources)
(44 intermediate revisions by 12 users not shown)
Line 7: Line 7:
-------------------------------------------------------------->
-------------------------------------------------------------->
   |rightcolumn1= </div>
   |rightcolumn1= </div>
{{Main page/Rightcolumn end
<span style="font-size:105%; font-weight:bold">[[FlightGear and Git|Development repository status]]</span><br />
  |title= [[FlightGear and Git|Development repository status]]
<center style="padding-top:.9em;">{{GitStatus}}</center>
  |contents= <center style="padding-top:.9em;">{{GitStatus}}</center>
  |padding-right=23px
}}


  |rightcolumn2= </div>
<span style="font-size:105%; font-weight:bold">Getting started</span><br />
<span style="font-size:105%; font-weight:bold">Getting started</span><br />
<span style="font-style:italic;">
<span style="font-style:italic;">
Line 20: Line 18:
[[Property tree]] · [[File formats]] · [[Tools of the Trade]]</span>
[[Property tree]] · [[File formats]] · [[Tools of the Trade]]</span>


   |rightcolumn2= </div>
   |rightcolumn3= </div>
<span style="font-size:105%; font-weight:bold">General</span><br />
<span style="font-size:105%; font-weight:bold">General</span><br />
<span style="font-style:italic;">
<span style="font-style:italic;">
[[Long Term Goals|Long term goals]] · [[Google Summer of Code]]<br/>
[[Long Term Goals|Long term goals]] · [[:Category:Popular Community Requests|Popular Ideas]] · [[Google Summer of Code]]<br/>
[[Project Infrastructure Enhancements|Project infrastructure enhancements]]<br/>
[[Project Infrastructure Enhancements|Project infrastructure enhancements]]<br/>
[[Improving Glider Realism|Improving glider realism]] / [[Improving Helicopter Realism|helicopter realism]]<br/>
[[Improving Glider Realism|Improving glider realism]] / [[Improving Helicopter Realism|helicopter realism]]<br/>
[[Howto:Set up a multiplayer server|Setting up a multiplayer server]] · [[FlightGear Expo Checklist|Expo checklist]]</span>
[[Howto:Set up a multiplayer server|Setting up a multiplayer server]] · [[FlightGear Expo Checklist|Expo checklist]]</span>


   |rightcolumn3= [[File:Nuvola apps kaboodle.png|40px]] </div>
   |rightcolumn4= [[File:Portal aircraft.png|40px]]</div>
<span style="font-size:105%; font-weight:bold">[[Portal:Developer/Aircraft|Aircraft]]</span><br />
<span style="font-size:105%; font-weight:bold">[[Portal:Developer/Aircraft|Aircraft]]</span><br />
<span style="font-style:italic;">
<span style="font-style:italic;">
[[Howto:Troubleshooting Aircraft Performance Issues]]·
[[Howto: Make an aircraft|Making an aircraft]] · [[Flight Dynamics Model|Flight dynamics model]]<br/>
[[Howto: Make an aircraft|Making an aircraft]] · [[Flight Dynamics Model|Flight dynamics model]]<br/>
[[Howto: 3D Aircraft Models|3D aircraft models]] · [[Howto: Edit a livery|Liveries]] · [[:Category:Aircraft Resources|Resources]]<br/>
[[Howto: 3D Aircraft Models|3D aircraft models]] · [[Howto: Edit a livery|Liveries]] · [[:Category:Aircraft resources|Resources]]<br/>
[[Creating instruments for FG|Creating instruments]] · [[System dependent instruments|System dependent instruments]]<br/>
[[Soaring instrumentation sdk]]  · [[Creating instruments for FG|Creating instruments]] · [[System dependent instruments|System dependent instruments]]<br/>
[[Howto: Design an autopilot|Designing an autopilot]]</span>
[[Howto: Design an autopilot|Designing an autopilot]]</span>


   |rightcolumn4= [[File:Portal developer.png|40px]] </div>
   |rightcolumn5= [[File:Nuvola apps kaboodle.png|40px]] </div>
<span style="font-size:105%; font-weight:bold">Animations</span><br />
<span style="font-size:105%; font-weight:bold">Animations</span><br />
<span style="font-style:italic;">
<span style="font-style:italic;">
Line 43: Line 42:
[[Howto: Make a clickable panel|Clickable panels]] · [[Knob / slider animation]]</span>
[[Howto: Make a clickable panel|Clickable panels]] · [[Knob / slider animation]]</span>


  |rightcolumn5= [[File:Portal aircraft.png|40px]] </div>
  |rightcolumn6= [[File:Portal developer.png|40px]] </div>
<span style="font-size:105%; font-weight:bold">Core</span><br />
<span style="font-size:105%; font-weight:bold">Core</span><br />
<span style="font-style:italic;">
<span style="font-style:italic;">
[[:Category:FlightGear Core developers|List of Core Developers]] · [[:Category:Developer Plans|Developer Plans]] · [[:Category:Core development projects|Projects]] <br/>
[[:Category:FlightGear Core developers|List of Core Developers]] · [[:Category:Developer Plans|Developer Plans]] · [[:Category:Core development projects|Projects]] <br/>
[[Howto: Start core development|Getting started]] · [[Programming resources]] <br/>
[[Howto: Start core development|Getting started]] · [[Programming resources]] · [[Nasal/CppBind|Adding scripting bindings]]<br/>
[[Howto:Add new fgcommands to FlightGear|Adding fgcommands]] · [[Howto:Create new subsystems|Creating subsystems]] <br/>
[[Howto:Add new fgcommands to FlightGear|Adding fgcommands]] · [[Howto:Create new subsystems|Creating subsystems]] <br/>
[[Built-in Profiler]] · [[Howto:Extend Nasal]] <br/>
[[Built-in Profiler]] · [[Howto:Extend Nasal]] · [[Howto:Using Ada in FlightGear]] <small>(<font color="red">updated!</font>)</small><br/>
[[Howto:Use Property Tree Objects]] · [[Code cleanup]] <br/>
[[Howto:Use Property Tree Objects]] · [[Code cleanup]] <br/>
[[FlightGear-Points of Interest]] · [[Request for comments]] <br/>
[[FlightGear-Points of Interest]] · [[Request for comments]] <br/>
[[OpenSceneGraph]] · [[Rendering system improvements]]</span>
[[OpenSceneGraph]] · [[Rendering system improvements]]</span>


  |rightcolumn6=  </div>
   |rightcolumn7= [[File:Portal scenery.png|40px]] </div>
<span style="font-size:105%; font-weight:bold">[[Portal:Developer/Nasal|FlightGear Scripting with Nasal]]</span><br />
<span style="font-style:italic;">
[[Nasal FAQ|Frequently asked questions]] · [[Howto:Write simple scripts in Nasal|Writing simple scripts]] <br />
[[Nasal for C++ programmers]] · [[Nasal Variables|Variables and their types]] <br />
[[Nasal Conditionals|Conditionals]] · [[Nasal Loops|Loops]] · [[Nasal Operators|Operators]] · [[Nasal Console|In-sim Console]]</span>
 
   |rightcolumn7= [[File:Portal scenery.png|40px]]<br/> </div>
<span style="font-size:105%; font-weight:bold">[[Portal:Developer/Scenery|Scenery]]</span><br />
<span style="font-size:105%; font-weight:bold">[[Portal:Developer/Scenery|Scenery]]</span><br />
<span style="font-style:italic;">
<span style="font-style:italic;">
Line 68: Line 60:
[[Howto: Convert objects from X-Plane|Converting from X-Plane/MSFS]]<br/>
[[Howto: Convert objects from X-Plane|Converting from X-Plane/MSFS]]<br/>
[[Howto: Make an airport|Making an airport]] · [[Using TerraGear|Generating terrain]]<br/>
[[Howto: Make an airport|Making an airport]] · [[Using TerraGear|Generating terrain]]<br/>
[[Interactive traffic]]</span>
[[AI Traffic]]</span>
 
  |rightcolumn8= [[File:Nasallogo3.png|40px]] </div>
<span style="font-size:105%; font-weight:bold">[[Nasal|Scripting]]</span><br />
<span style="font-style:italic;">
[[Nasal FAQ|Frequently asked questions]] · [[Howto:Write simple scripts in Nasal|Writing simple scripts]] <br />
[[Nasal for C++ programmers]] · [[Nasal Variables|Variables and their types]] <br />
[[Nasal Conditionals|Conditionals]] · [[Nasal Loops|Loops]] · [[Nasal Operators|Operators]] · [[Nasal Console|In-sim console]]</span>
 
  |rightcolumn9= [[File:Animation Icon.png|40px]] </div>
<span style="font-size:105%; font-weight:bold">Effects and shaders</span><br />
<span style="font-style:italic;">
[[Shaders]] · [[Project Rembrandt]]<br/>
[[Howto:Shader Programming in FlightGear|Shader programming in FlightGear]]<br/>
[[Shader Coding - Best Practices|Best Practices]] · [[GLSL Shader Programming Resources|GLSL resources]]</span>
    
    
<!-------------------------------------------------------------
<!-------------------------------------------------------------
Line 74: Line 80:
-------------------------------------------------------------->
-------------------------------------------------------------->
   |sections=
   |sections=
{{Main page/Leftbox|title=Get involved!
  |contents=If you would like to help with FlightGear's development, it's a good idea to subscribe yourself to the FlightGear development [[mailing list]]. Use the list or the FlightGear [http://code.google.com/p/flightgear-bugs issue tracker] to get in touch with fellow FlightGear core developers.


Visit [[:Category:Core development projects]] to see a list of currently ongoing projects!
{{Main page/Leftbox|title=Put a piece of yourself into FlightGear!
  |contents=In FlightGear, "development" is [[Howto:Understand the FlightGear development process|anything that improves the project]]. So, it's not just code-related [[Howto:Start core development|core development]]. There's also [[Portal:Developer/Scenery|scenery development]], [[Portal:Developer/Aircraft|aircraft development]] and all the stuff you can see in the column here on the left. If you want an extended overview, check out the [[Volunteer]] page.
 
Actually that's not all you can contribute. There's also documentation, with the [[FlightGear Manual]]... and this wiki of course! To contribute to the wiki, head off to the [[Portal:Wiki|Wiki Portal]]. There's a lot to do there too.
 
If you want to get in touch with other developers, register an account at the [http://forum.flightgear.org/viewforum.php?f=18 forum], and for core development subscribe to the [[mailing list]] too and consider visiting the {{tickets|issue tracker}}.
 
Remember: we might call it volunteering, but what should drive you is [[How the FlightGear project works|the fun of doing something]].
}}
 
{{Main page/Leftbox|title=For core developers
  |contents=Visit [[:Category:Core development projects]] to see a list of currently ongoing projects!
See [[:Category:Developer Plans]] to see a list of developer plans for the upcoming release.
See [[:Category:Developer Plans]] to see a list of developer plans for the upcoming release.
See [[request for comments]] for a list of long-standing issues and challenges affecting FlightGear's evolution and overall development progress (admittedly a little outdated meanwhile).
See [[request for comments]] for a list of long-standing issues and challenges affecting FlightGear's evolution and overall development progress (admittedly a little outdated meanwhile).


'''Help needed:''' SimGear 2.11+ now has experimental support for a libsvn replacement, people building from source are encouraged to help with testing and debugging this new feature:
'''Help needed:'''  


{{cquote|<nowiki>First, I need some help; for people to rebuild simgear with -DSG_SVN_CLIENT=1, and mv / erase their TerraSync dir. Then simply run FGFS as normal, as if you were starting on a new machine / account with no previous use of TerraSync.</nowiki><ref>{{cite web |url=http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg40191.html|title=TerraSync libSVN replacement testing|author=James Turner|date=Tue, 11 Jun 2013 08:58:20 -0700}}</ref>|James Turner}}
The [[YASim]] FDM is looking for a new maintainer:


{{cquote|<nowiki>So, as I've previously asked before, I really need people running from 'next'
{{cquote|There are some pending merge requests[http://sourceforge.net/p/flightgear/mailman/flightgear-devel/thread/533DBD01.9040802%40sol2500.net/#msg32183541] to add some YASim features, but we have an issue that since none of the current C++ developers own, or are experts in YASim, we're reluctant to be the person who merges such changes, and potentially introduces subtle regressions.
to try with -DSG_SVN_CLIENT=1 when configuring SimGear, move their existing
TerraSync dir out the way, and test, test, test. I'm sure the new code isn't
100% trouble free (in particular I think there is still the occasional time
when it gets stuck not doing any more downloads until FG is restarted), but I
really don't want to move forwards with the code until I have a bit more
assurance it's not going to make everyone's setup crash 80% of the time, which
is what some people have reported.


Note this applies even if you 'don't use' terrasync since the SVN sync engine
Obviously this is chicken-and-egg, since no one can become expert enough in the code to become a maintainer :)
is going to be used for other pieces of data as soon as it's stable. (I will be
 
adding a new preference to globally control whether FG works in online/offline
So, I'm more than happy to apply patches *providing* I can be convinced they are sane+reasonable from a pure code perspective (happy to help with that, too,
mode, of course)</nowiki><ref>{{cite web |url=http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg40775.html|title=<nowiki>[Flightgear-devel] Built-in Svn client code crashing</nowiki>|author=<nowiki>James Turner</nowiki>|date=<nowiki>Fri, 20 Sep 2013 09:54:38 -0700</nowiki>}}</ref>|<nowiki>James Turner</nowiki>}}
if people are new to C++), and providing we have some assurance that a representative sample of YASim aircraft are unchanged or improved by the patch.
Suggestions for that means in practice, are most welcome!
 
Otherwise I worry, given the nature of the solver, we'll keep optimising the solver for some aircraft, and making other existing aircraft worse - until someone tests them, and announced that they're no longer working.<ref>{{cite web |url=http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg23986.html  
|title=YASim and documentation
|author=James Turner |date= Fri, 05 Oct 2012 03:54:43 -0700}}</ref>|James Turner}}
 
{{cquote|I am still broadly happy to answer questions if posed (as long as I remember enough to come up with a meaningful answer).  Just cc: me if you do, because my latencies here are measured in weeks.Bugs can always be fixed.  What YASim needs is a maintainer, not really expertise per se.  The latter comes from the former.<ref>{{cite web |url=http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg23986.html
|title=YASim and documentation
|author=Andy Ross |date= Fri, 05 Oct 2012 03:54:43 -0700}}</ref>|Andy Ross}}


<references/>
<references/>
Line 103: Line 120:
}}
}}


{{Main page/Leftbox|title=Coding Help Needed! (Updated 11/2013)
{{Main page/Leftbox|title=Coding Help Needed! (Updated 06/2020)
   |contents=
   |contents=
* {{Pending}} [[FlightGear 3.0  backlog]] a backlog of open items for the 3.0 release
* {{Progressbar|70}} [[Compositor#TODO|Compositor roadmap]]
* {{Pending}} [[Reset & re-init]] and [[Fixing Presets]]
* {{Progressbar|40}} [[Deboosting FlightGear|Replacing boost]]
* {{Pending}} [[USB HID Support]] - mapping USB/HID devices onto the property tree
* {{Pending}} [[CompositeViewer Support|Switching to osgViewer::CompositeViewer]] (multiple scenery cameras and moving maps)
* {{Pending}} [[Project Rembrandt#TODO List|Project Rembrandt (Todo List)]] (Shadows/Deferred Rendering: OpenGL/OSG, C++)
* {{Pending}} [[World Scenery 3.0 roadmap]]  
* {{Pending}} [[Reset & re-init]]  
* {{Pending}} [[Canvas Development]] - discusses possible future Canvas additions
* {{Pending}} [[Canvas Properties#Planned Features|Canvas Project (Planned Features)]] (fully scriptable 2D rendering API)
* {{Pending}} [[Canvas Properties#Planned Features|Canvas Project (Planned Features)]] (fully scriptable 2D rendering API)
* {{Pending}} [[Canvas Widgets#Missing_.2F_Todo|Canvas Widgets (Missing Features)]] (Canvas GUI layer for scriptable widgets)
* {{Pending}} [[Canvas Widgets#Missing_.2F_Todo|Canvas Widgets (Missing Features)]] (Canvas GUI layer for scriptable widgets)
* {{Pending}} [[Howto:Use Property Tree Objects|Depreciate tied properties and use PropertyObjects instead]]
* {{Pending}} [[Howto:Use Property Tree Objects|Depreciate tied properties and use PropertyObjects instead]]
* {{Pending}} [[A_local_weather_system#Feature_requests_on_the_C.2B.2B_side|Local weather system Improvements]] (Requested C++ Changes)
* {{Pending}} [[Airport data (apt.dat) update]] (switch to the newer 850 format)
* {{Pending}} [[How the Nasal GC works|Fixing the Garbage Collector]] (the GC in [[Nasal]] needs to be improved)
* {{Pending}} [[CompositeViewer Support|Switching to osgViewer::CompositeViewer]] (multiple scenery cameras and moving maps)
<!--
* {{Pending}} [[FlightGear Run Levels|Subsystem allocation and re-initialization via listeners]] (Making subsystems optional and better configurable)
-->


}}
}}
Line 130: Line 142:
}}
}}


[[Category:FlightGear wiki:Portals]]
[[Category:Portals]]


[[ca:Portal:Desenvolupador]]
[[es:Portal:Desarrollo]]
[[de:Portal:Entiwcklung]]
[[fr:Portal:Développeur]]
[[fr:Portal:Développeur]]
[[sr:Portal:Razvoj]]
[[zh:Portal:Developer]]

Navigation menu