Panels for MS Flight Simulator Authors
From X-Plane Wiki
This page attempts to explain some of the differences between the panel and gauge system in X-Plane and Microsoft Flight Simulator 9/10. It is aimed at third party developers who are exploring the option of porting their gauges to X-Plane. All information is current to the latest X-Plane 9 patch (that is, X-Plane 9.21r1).
Contents |
Third Party Code
X-Plane allows third party code via the plugin system; plugins are more general than gauges - they can be installed per airplane or for the whole simulator. Many of the feature limitations in X-Plane 9 can be worked around by custom code in plugins.
2-d Panel
X-Plane provides only one 2-d panel. It is at least 1024 pixels wide and at most 2048x2048 (1024x1024 for x-plane 8). Under some conditions X-Plane will zoom the panel to be larger to fill the screen. If the panel is too large for the user's screen, it can be scrolled with the arrow keys.
There are no popup panels built in to X-Plane.
The 2-d panel in X-Plane 9 is optional - an author can simply choose to use the 3-d cockpit for all views, including the "2-d forward" view.
Workaround: see generic instruments below - a generic instrument can be shown or hidden, to create a popup effect, but they cannot be repositioned. Some planes for example use this feature to optionally hide the yoke.
Plugins: plugins can create an arbitrary number of popup windows within X-Plane's display. For example, the x737 uses a plugin to make a popup overhead panel.
Instruments (Gauges)
For the 2-d panel, X-Plane lets the author place an unlimited (300 for X-Plane 8) number of instruments. These instruments include a large set of predefined instruments and a small set of generic instruments.
The generic instruments are similar to what can be created using a panel XML file in FS X - they provide simple motions like rotation (for needles) and translation (for levers), and are hooked up to datarefs (which are similar to simconnect variables in that they are simulation variables like airspeed, etc).
The predefined instruments are ready-made and cover a huge range of functionality, including glass cockpits, steam gauges, etc.
Instrument bitmaps can be replaced by custom artwork; the functionality of the predefined instruments can sometimes be tweaked in small ways; the generic instruments have a wide variety of user controlled parameters.
Plugins: X-Plane does not have a way for third parties to create new instruments in Plane-Maker, but a plugin can draw onto the panel using a drawing callback. The only difficulty of this technique is that the plugin must use an ad-hoc method to decide where on the panel to draw.
3-d Cockpit (Virtual Cockpit)
X-Plane has a virtual cockpit (called a "3-d cockpit" typically), modeled as a series of meshes. The 2-d panel (or a special hidden "3-d panel" are used as a texture to map 2-d instruments onto the 3-d panel; animation can also be used to directly move 3-d meshes.
3-d cockpits are optional; a plane may only have a 2-d panel. X-Plane provides a simple 3-d view of the 2-d panel for users who want to use a head tracker.