These pages, available as GitHub pages, document both usage and internals of the XPMP2 library.
Content and availability status:
These aspects are relevant for developers using XPMP2 in their own plugin:
XPMP2 can be included into your projects as GitHub submodule, and into a CMake build plan via add_subdirectory.
XCode projects, Visual Studio solutions, and a Docker environment for
Linux and Mac OS builds are provided. The details are
documented here.
This part will probably need more attention, but find some first information here and study the working sample plugin available as separate Github repo XPMP2-Sample.
All header (and code) files are documented using Doxygen-style comments. The generated doxygen files are checked in, too, so that the are available online:
XPMP2 came into being as replacement for the original libxplanemp and should still
be largely compatible. But time has moved on and backwards compatibility is
no longer a prime goal. Still,
this information on backward compatibility
is retained just in case you still find some old plugin that needs
libxplanemp replaced with XPMP2.
Apart from the binaries that you build you will need to ship the files provided here in the ‘Resources’ folder. Also, users will need to install CSL models. Find more details here.
These aspects are relevant for CSL model developers and package providers:
xsb_aircraft.txt File FormatThe xsb_aircraft.txt file defines the content of one CSL model packages.
It´s format is define here.
To drive CSL models’ ANIMations, a long list of dataRefs is provided by XPMP2. See its documentation here.
.obj files on loadCSL packages come in different flavours. Popular ones for general use are
the Bluebell and the X-CSL packages. Both come with different history.
For XPMP2 to use all their features it needs to change their .obj files.
Performing these changes is built into XPMP2.
See here for details.
The TCAS Override approach
explains how TCAS information is provided, the classic multiplayer dataRefs are maintained
and how 3rd party plugins can access this information. XPMP2 publishes data
via the sim/cockpit2/tcas/targets dataRefs.
X-Plane’s approach to Wake Turbulence support for TCAS targets is described in this blog post featuring LiveTraffic screenshots and this article on the dataRef details.