Portal:Developer: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
m (+ada article)
m (+-link: Interactive traffic → AI Traffic)
(12 intermediate revisions by 7 users not shown)
Line 29: Line 29:
<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/>
Line 59: 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>
   |rightcolumn8= [[File:Nasallogo3.png|40px]] </div>
Line 81: Line 82:


{{Main page/Leftbox|title=Put a piece of yourself into FlightGear!
{{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.
   |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.
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 [http://code.google.com/p/flightgear-bugs issue tracker]
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]].
Remember: we might call it volunteering, but what should drive you is [[How the FlightGear project works|the fun of doing something]].
Line 139: Line 140:
* {{Pending}} [[A_local_weather_system#Feature_requests_on_the_C.2B.2B_side|Local weather system Improvements]] (Requested C++ Changes)
* {{Pending}} [[A_local_weather_system#Feature_requests_on_the_C.2B.2B_side|Local weather system Improvements]] (Requested C++ Changes)
* {{Pending}} [[Subsystem-level Memory Tracking for FlightGear]]
* {{Pending}} [[Subsystem-level Memory Tracking for FlightGear]]
<!--
* {{Pending}} [[How the Nasal GC works|Fixing the Garbage Collector]] (the GC in [[Nasal]] needs to be improved)
* {{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}} [[CompositeViewer Support|Switching to osgViewer::CompositeViewer]] (multiple scenery cameras and moving maps)
* {{Pending}} [[Performance Database via FDM]] - implementing VNAV support for FlightGear aircraft
* {{Pending}} [[Performance Database via FDM]] - implementing VNAV support for FlightGear aircraft
Line 159: Line 162:
[[Category:Portals]]
[[Category:Portals]]


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

Revision as of 21:41, 21 November 2019

Welcome to the developer portal

Please visit our forum if you cannot find what you're looking for.
 
 

Put a piece of yourself into FlightGear!

In FlightGear, "development" is anything that improves the project. So, it's not just code-related core development. There's also scenery development, 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 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 forum, and for core development subscribe to the mailing list too and consider visiting the issue tracker.

Remember: we might call it volunteering, but what should drive you is the fun of doing something.
 
 

For core developers

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 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:

Creating an integrated Canvas based GUI launcher/package manager ticket #1295:

Cquote1.png For aircraft, the system supports aircraft dirs, there is the package manager code which works but is currently unused, which can download and extract zipped aircraft. This needs a GUI but thanks to the new reset architecture we can finally build this GUI inside FG - i.e an ‘aircraft chooser’ UI - however I am find building such a UI rather outside my comfort zone. If anyone would like to help in this area, let me know.[1]
— James Turner
Cquote2.png


The YASim FDM is looking for a new maintainer:

Cquote1.png There are some pending merge requests[1] 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.

Obviously this is chicken-and-egg, since no one can become expert enough in the code to become a maintainer :)

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, 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.[2]
— James Turner
Cquote2.png
Cquote1.png 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.[3]
— Andy Ross
Cquote2.png
  1. James Turner (2014-04-17 18:23:24). size of flightgear-data.
  2. James Turner (Fri, 05 Oct 2012 03:54:43 -0700). YASim and documentation.
  3. Andy Ross (Fri, 05 Oct 2012 03:54:43 -0700). YASim and documentation.
 
 

Coding Help Needed! (Updated 11/2013)


 
 

Wanted: interview candidates

Every month we try to include an interview with a contributor in the FlightGear Newsletter. Anyone contributing to FlightGear, in whatever way, is welcome to answer a few questions and write his/her own interview.

More info at FlightGear Newsletter: Interview.

Development repository status

Current release: 2020.3.19 (18 Oct 2023)
Next release: 2020.3.20
See release plan for details.

Getting started
How the FlightGear project works
The development process · Release plan
Building FlightGear · Git · Build server
Property tree · File formats · Tools of the Trade

General
Long term goals · Popular Ideas · Google Summer of Code
Project infrastructure enhancements
Improving glider realism / helicopter realism
Setting up a multiplayer server · Expo checklist

Portal aircraft.png

Aircraft
Howto:Troubleshooting Aircraft Performance Issues· Making an aircraft · Flight dynamics model
3D aircraft models · Liveries · Resources
Soaring instrumentation sdk · Creating instruments · System dependent instruments
Designing an autopilot

Nuvola apps kaboodle.png

Animations
Animate models · Illuminate objects
Gear scissors · Tracking animation
Clickable panels · Knob / slider animation

Portal developer.png

Core
List of Core Developers · Developer Plans · Projects
Getting started · Programming resources · Adding scripting bindings
Adding fgcommands · Creating subsystems
Built-in Profiler · Howto:Extend Nasal · Howto:Using Ada in FlightGear (updated!)
Howto:Use Property Tree Objects · Code cleanup
FlightGear-Points of Interest · Request for comments
OpenSceneGraph · Rendering system improvements

Portal scenery.png

Scenery
Procedural Texturing
Placing objects · Airport signs
Converting from X-Plane/MSFS
Making an airport · Generating terrain
AI Traffic

Nasallogo3.png

Scripting
Frequently asked questions · Writing simple scripts
Nasal for C++ programmers · Variables and their types
Conditionals · Loops · Operators · In-sim console

Animation Icon.png

Effects and shaders
Shaders · Project Rembrandt
Shader programming in FlightGear
Best Practices · GLSL resources