-
Notifications
You must be signed in to change notification settings - Fork 7
OBJ8 CSL
The new "OBJ8" CSL format is built on top of the LegacyCSL format, but using the standard X-Plane OBJ8 format.
In order to declare models to use this format, new commands in the xsb_aircraft.txt
files are necessary:
Animations for OBJ8 CSLs are controlled via dataref. It is up to the pilot client as to how these should be computed, but the expected ranges and behaviours are documented below.
The datarefs are as follows:
Dataref | Description |
---|---|
libxplanemp/controls/gear_ratio |
Landing Gear position. 0.0 is fully retracted, 1.0 is fully extended |
libxplanemp/controls/flap_ratio |
Flaps Position. 0.0 is fully retracted. 1.0 is full extension |
libxplanemp/controls/slat_ratio |
Slats Position. 0.0 is fully retracted. 1.0 is full extension |
libxplanemp/controls/spoiler_ratio |
Spoiler Position. 0.0 is fully retracted. 1.0 is full extension |
libxplanemp/controls/speed_brake_ratio |
Speedbrake Position. 0.0 is fully retracted. 1.0 is full extension |
libxplanemp/controls/wing_sweep_ratio |
Wing Sweep Position. Notionally 0.0 through 1.0. Not strictly defined. |
libxplanemp/controls/thrust_ratio |
Engine RPM/N1 as ratio of maximum speed. 0.1 is idle. 1.0 is max N1/RPM. 0.0 is off. |
libxplanemp/controls/yoke_pitch_ratio |
Pitch Control Position. -1.0 to 1.0. |
libxplanemp/controls/yoke_roll_ratio |
Roll control position. -1.0 to 1.0. |
libxplanemp/controls/yoke_heading_ratio |
Rudder Control Position. -1.0 to 1.0 |
libxplanemp/controls/landing_lites_on |
Landing Lights. |
libxplanemp/controls/beacon_lites_on |
Anti-Collision Beacon. |
libxplanemp/controls/strobe_lites_on |
Wingtip Strobes. |
libxplanemp/controls/nav_lites_on |
Navigation Lights. |
All commands as in the LegacyCSL document still work, however 2 new commands are required to declare OBJ8 models.
When defining a OBJ8 model, you must not use the TEXTURE or HASGEAR commands.
OBJ8_AIRCRAFT <name>
OBJ8_AIRCRAFT
starts defining a new aircraft using the OBJ8 format.
<name>
is a identifier that must unique within the current package. It can be anything, as long as it is unique. It should be related to the aircraft in some way. Currently, no spaces are allowed in the name.
OBJ8 <part> <animated> <obj8 path>
OBJ8
defines the components (attachments) that make up the aircraft.
<part>
can be one of: GLASS
, LIGHTS
, LOW_LOD
or SOLID
.
<part> value |
Purpose |
---|---|
SOLID |
For objects that contain the opaque parts of the aircraft. |
GLASS |
For objects taht contain the transparent parts of the aircraft. |
LIGHTS |
For objects taht contain the lights of the aircraft. |
LOW_LOD |
For low-poly objects to use when rendering at large distances. |
<animated>
can be one of YES
or NO
. This indicates if the specified object file has animations that will need to be processed.
<obj8 path>
is a package and path as per the OBJECT command.