SIM3D
Instrument Panels

Instrument Panels

Instrument Panels

There are two types of panels available in Virtual Sailor, the onscreen panel and the vehicle panel, the onscreen panel can be seen pressing P, the vehicle panel is part of the the vehicle itself and is seen inside the cabin.

You can use any type of panel you wish, pressing Control + P shows available panel options for the onscreen panel.

The Coordinate System:

All positions and angles of vehicle parts and panels in Virtual Sailor are measured in a left hand coordinate system, positions are given in meters, angles are given in radians ( 1 Radian = 57.295 degress ).

The On Screen Panel:

For every type of vehicle there is a different type of panel seen on screen, this type is defined by a file in the panels directory of the program.

This file contains the name, position and scale of panel used for each type of vehicle, for example these are the contents of the fileplane.cfginside the panels directory.

panel_2 [panel_name]
1.0 [panel_scale]
0.0 [panel_x]
-0.4 [panel_y]
1.0 [panel_z]
0 [panel_alfa]
0 [panel_beta]
0 [panel_gama]

The panel parameters are:

  • [panel_name] – the name of the panel
  • [panel_scale] – the scale of the panel
  • [panel_x] – the x position of the panel
  • [panel_y] – the y position of the panel
  • [panel_z] – the z position of the panel
  • [panel_alfa] – the pitch angle of the panel
  • [panel_beta] – the yaw angle of the panel
  • [panel_gama] – the roll angle of the panel

The first parameter is the name of the panel to use when this type of vehicle is loaded, this name points to a directory inside the panels directory, where the panel structure is defined.

The other parameters are the panel scale, x,y,z position, and angles of rotation.
Positions are given in meters measured from the viewer, angles are given in radians.

Except for the name of the panel, the other parameters are optional, when missing, default values are used.

A typical onscreen panel can be seen in the image below.

The Vehicle Panel:

Inside thevehicle.cfgthere are optional parameters defining the type and position of panel inside the vehicle’s cabin, are measured from the origin of the vehicle, for example this is a part of thevehicle.cfgof the Aerolight vehicle.

// instrument panel

panel_2 [panel_name]
0.8 [panel_scale]
0.0 [panel_x]
-0.16 [panel_y]
1.2 [panel_z]
0.3 [panel_alfa]
0 [panel_beta]
0 [panel_gama]

The panel parameters are:

  • [panel_name] – the name of the panel
  • [panel_scale] – the scale of the panel
  • [panel_x] – the x position of the panel
  • [panel_y] – the y position of the panel
  • [panel_z] – the z position of the panel
  • [panel_alfa] – the pitch angle of the panel
  • [panel_beta] – the yaw angle of the panel
  • [panel_gama] – the roll angle of the panel

The first parameter is the name of the panel to use when this type of vehicle is loaded, this name points to a directory inside the panels directory, where the panel structure is defined.

The other parameters are the panel scale, x,y,z position, and angles of rotation.
Positions are given in meters measured from the viewer, angles are given in radians.

Except of the name of the panel, the other parameters are optional, when missing default values are used.

A typical vehicle panel can be seen in the image below.

The Panel Configuration File:

Each directory inside the panels directory of the program contains a panel structure, this file is calledpanel.cfg, a typical panel file looks like this:

0.0 [xpos]
0.0 [ypos]
0.1 [zpos]
0.1 [scale]
3 [instruments]
speed_5 [name]
-1.8 [xpos]
0.0 [ypos]
0.0 [zpos]
0.1 [alfa]
0.1 [beta]
0.1 [gama]
1.0 [scale]
alt_2 [name]
-0.65 [xpos]
0.0 [ypos]
0.0 [zpos]
0.5 [beta]
1.0 [scale]
vsi_2 [name]
0.65 [xpos]
0.0 [ypos]
0.0 [zpos]
1.0 [scale]

The first parameters of this file give the position and scale of the panel, and the number of instruments in it, the following lines give instrument name, position, orientation angles and scale for each instrument, these parameters are optional, when missing default ones are used.

The panel parameters are:

  • [instruments] – number of instruments in panel
  • [scale] – the scale of the panel
  • [xpos] – the x position of the panel
  • [ypos] – the y position of the panel
  • [zpos] – the z position of the panel

The instrument parameters are:

  • [name] – name of instrument
  • [scale] – the scale of the instrument
  • [xpos] – the x position of the instrument
  • [ypos] – the y position of the instrument
  • [zpos] – the z position of the instrument
  • [alfa] – the pitch angle of the instrument
  • [beta] – the yaw angle of the instrument
  • [gama] – the roll angle of the instrument

The Panel Mesh File

The panel can have also a 3D mesh file for the part in which instruments are placed, this file is calledpanel.x,this file and attached textures are also placed inside the panel directory.

Instrument Types

There are many instrument types in Virtual Sailor, some have functions suitable for specific vehicle types, for example when a radar instrument is used, the vehicle type used determines the type of radar used, marine or airborne.

Instruments have four basic types:

  • Analogue instruments made of dial and needles.
  • Digital instruments showing one digital reading.
  • Screen instruments showing buttons and graphics.
  • DLL instruments showing custom button and graphics.

Instrument names determine their function, the name is checked against the list of tags below and the instrument type is set, the following table shows the available instrument tags and their function.

rpm – engine RPM
rpm1 – engine 1 RPM
rpm2 – engine 2 RPM
rpm_dual- engine 1,2 RPM

speed – vehicle speed
fuel – available fuel
alt – altimeter
vsi – vertical sink indicator
hcomp – flat dial compass
comp – vertical axis compass
clock – analogue clock
horiz – horizon indicator
turn – turn indicator with ball
accel – accelerometer

ball – ball type horizon indicator
ball – ball compass for boats
hand – hand compass
rudder – rudder indicator

rotor – rotor rpm indicator
torq -rotor torque indicator

gyro – gyro compass with knob
adf – ADF indicator
rmi – RMI indicator
vor – VOR indicator
ils – ILS indicator
nsd – NSD indicator
adi – ADI indicator

flaps – flaps indicator and handle
brakes – spoilers indicator and handle
trim – trim indicator and handle
gear – landing gear indicator and handle

yoke – yoke handle
string – yaw string

pthrot – throttle push handle
throt – throttle slider

throt1 – throttle 1 slider
throt2 – throttle 2 slider

ppitch – airplane propeller pitch push handle
pitch – airplane propeller pitch slider handle

pmixt – airplane mixture push handle
mixt – airplane mixture slider handle
manpr – manifold pressure indicator

depth – submarine depth indicator
flow – submarine or balloon flow indicator
dive – submarine dive handle
ballast – submarine ballast indicator
volume – balloon volume indicator
temp – balloon temperature indicator

thruster1 – bow thruster handle
thruster2 – stern thruster handle

sailb – main sail indicator
sails – jib sail indicator
wind – appearant wind indicator
winchb – winch for main sail
winchs – winch for jib sail

engine – engine on/off switch
autop – auto pilot on/off switch
autos – auto sail on/off switch
lights – nav/cabin lights switch
stall – stall warning light
park – parking brake switch
reverse – engine reverse switch
anchor – anchor on/off switch
dock – dock on/off switch

dgcomp – digital compass reading
dgspeed – digital speed reading
dgrpm1 – digital RPM reading
dgrpm2 – digital RPM reading
dgrpm – digital RPM reading
dgfuel – digital fuel reading
dgdepth – digital depth reading
dgclock – digital clock reading
dgstrip – digital compass strip
dgsink – digital sink indicator
dgalt – digital altitude reading

dgmap – map screen
dggps – GPS screen
dgradar – RADAR (air/marine) screen
dghud – HUD screen
dgap – auto pilot screen
dgnav – radio navigation screen
dgecho – echo sounder screen
dgweapon- Weapon screen.
dll – DLL screen instrument

Analogue Instruments:

Most of the instruments used in panels are analogue, this means that they have a dial and several needles, each needle measures some value between a minimum and maximum value, and rotates between a minimum and a maximum angle.

For every instrument there is a directory inside the instruments directory of the program, inside the instrument structure file calledinstrument.cfg, a typical instrument file looks like this:

3 [needles]
0.0 [xpos]
0.0 [ypos]
-0.02 [zpos]
1.0 [scale]
0.0 [x0]
30480.0 [x1]
0.0 [y0]
-6.283 [y1]

0.0 [xpos]
0.0 [ypos]
-0.04 [zpos]
0.7 [scale]
0.0 [x0]
3048.0 [x1]
0.0 [y0]
-6.283 [y1]

0.0 [xpos]
0.0 [ypos]
-0.06 [zpos]
1.0 [scale]
0.0 [x0]
304.8 [x1]
0.0 [y0]

The first parameters of this file give the number of needles in the instrument, the following lines give the position of the needle and the measured limits for the needle and rotation angles for these limits.

Analogue instrument parameters:

  • [needles] – number of needles in the instrument
  • [scale] – the scale of the needle
  • [xpos] – the x position of the needle
  • [ypos] – the y position of the needle
  • [zpos] – the z position of the needle
  • [x0] – minimal measured value for the needle
  • [x1] – maximal measured value for the needle
  • [y0] – minimal rotation angle for the needle
  • [y1] – minimal rotation angle for the needle

A typical analogue instrument looks like the image below.

Digital instruments:

some of the instruments have digital counterparts as well, these give a simple digital reading of one or more value, and show it against the dial of the instrument in a given font and color.

For digital instruments the parameters have a fixed format, this is a typical sample of such instrument.

0.0 [xpos]
0.1 [ypos]
0.0 [zpos]
9.0 [scale]
63 [r]
63 [g]
63 [b]
255 [a]
1 [bold]

Digital instrument parameters:

  • [scale] – the scale of the needle
  • [xpos] – the x position of the needle
  • [ypos] – the y position of the needle
  • [zpos] – the z position of the needle
  • [r] – red value of font color
  • [g] – green value of font color
  • [b] – blue value of font color
  • [bold] – weight of font

A typical digital instrument looks like the image below.

The Instrument Mesh Files

The instrument can have also a 3D mesh file for the part in which needles are placed, this file is calleddial.x,this file and attached textures are also placed inside the instrument directory, there are also 3D mesh files for each needle, calledneedle1.x, needle2.x, etc..

Screen Instruments:

Some of the instruments require a specific screen with several button and specific display, such instruments include the MAP, the GPS, the marine RADAR, the airborne RADAR, the Echo Sounder, the Radio Navigation settings and the Auto Pilot settings.

These instruments do not have a directory inside the instruments directory and not have any mesh parts, the name of the instrument is fixed, and is used along with its position and scale to place this instrument upon the instrument panel.

A typical screen instrument looks like the image below.

DLL Instruments:

The most powerful aspect of Virtual Sailor instrument panel is the ability to connect custom made instruments and panels to it, this is done using a specific DLL and drawing into a device context it provides.

The DLL has a structure which is filled by the program in runtime, and a device context in which the DLL draws, alternatively you can create your own custom window and draw into it instead.

This DLL is written in C++, the source file is given inside theDLL_G1000instrument directory of the program, the documentation of this DLL is given inside it for the benefit of users who would like to expand this DLL into their own instrument or panel.

A typical DLL instrument looks like the image below.