Have you ever wondered what all those parameters in an aircraft's panel.cfg file mean?
Table of Contents
Most panel configuration file contains the following sections:
[Window Titles] section
[Default View] section
Alternatively the panel can use aliasing, and have a single section:
The Panel system creates the aircraft's panel windows from the information in this section. The variables are used to set the initial state of each panel window and each interior view. For each WindowNN variable in this section, the Panel system creates a panel window. It starts with Window00 and creates panel windows until it reaches Window63 or until it finds a break in the progression. When creating the panel window, the system looks for corresponding [WindowNN] sections later in the configuration file. After the panel window is created, the gauges listed in the [WindowNN] section are loaded.
Use the marks "//" to add a comment, or comment out a line you do not wish to be processed, in the panel.cfg file.
window00 to windowNN
The list of panels for the aircraft. The order in which you assign panel windows does not matter, so long as you start with window00.
The string you assign to each WindowNN line (for example, Window02=Radio Stack) is the title displayed for the panel window in ESP when it is undocked. The string is also displayed on a submenu menu when you click Instrument Panel on the Views menu. You should therefore make sure the label you use for each window is appropriate.
B737_800( window00=Main Panel ) ControlTower( Window00=Radar Map ) Aircreation_582SL( Window01=Popup ) B737_800( window01=Radio Stack ) Aircreation_582SL( Window02=Radio Stack ) Lear45( Window02=Throttle Quadrant )
beech_baron_58( Window00=Main Panel ) beech_baron_58( Window01=Radio Stack ) beech_baron_58( Window02=Fullscreen PFD ) beech_baron_58( Window03=Throttle Quadrant ) beech_baron_58( Window04=Compass) beech_baron_58( Window05=Mini Panel )
[window00] and [vcockpit00]
This section describes a panel window, including its shape, position, properties, the background image, and what gauges belong to the panel. The same structure is used for Virtual Cockpits, with the single addition of the texture parameter.
file Specifies the bitmap file to load and use for the panel window background (1024 by 768 resolution). This .bmp file must be in the same directory as the Panel.cfg file.
Aircreation_582SL( file=AirCreation_582SL_popup_background.bmp ) Beech_King_Air_350( file=Radio_Stack_bg.bmp ) Douglas_DC3( file=DC3_background.bmp )file_1024The bitmap file to use when the screen width has been set by the user to more than 800.Panel( file_1024=airbus_a321_panel_background.bmp ) Aircreation_582SL( file_1024=AirCreation_582SL_background.bmp ) B737_800( file_1024=737-800_panel_background.bmp ) b747_400( file_1024=747_Background_1024.bmp )
size_mmA definition of the unit size used for placing and sizing gauges on this panel. For example, if the size_mm is 200 x 200 and a gauge’s size is 50, 50, it will take up 1/16th ( ¼ x ¼) of the panel window. If no size_mm is defined, the size of the panel’s background bitmap (not the gauge’s background bitmap) will be used. If no background bitmap is defined (as is often the case with popup panels that contain only one gauge), a default size of 100 x 100 is used. If window_size is not specified, the size of the window on screen will be size_mm divided by the size_mm for the first window specified in the panel.cfg. For example, if the size_mm for a given panel is 200, 200 and the size_mm for the first panel in the panel.cfg is 1024 x 768, the given panel would occupy 19% of the screen in the x dimension and 26% in the y dimension, or a total of 5% of the total screen area.
Panel( size_mm=1024 ) Aircreation_582SL( size_mm=1024,768 ) B737_800( size_mm=127,345 ) b747_400( size_mm=640 )
position Specifies the relative position of a panel window to the main window. A number from 0 to 8 (as shown below) designates the position of the panel window. If nothing is specified, 7 is the default, otherwise, one of:
0 = upper-left corner 1 = upper-middle side 2 = upper-right corner 3 = middle-left side 4 = middle 5 = middle-right side 6 = lower-left corner 7 = lower-middle side 8 = lower-right corner.
Panel( position=7 ) Aircreation_582SL( position=8 ) B737_800( position=0 ) b747_400( position=2 )visibleSet to 0 if the panel is not visible by default. The default is 1 (visible).Panel( visible=1 ) Aircreation_582SL( visible=0 ) B737_800( VISIBLE=0 )
ident Specifies a unique identifier to define the panel window. You must have an ident for each panel window. Valid entries are the following:
MAIN_PANEL MAIN_PANEL_ALTn (where n is 1 to 9) THROTTLE_PANEL RADIO_STACK_PANEL COMPASS_PANEL MINI_CONTROLS_PANEL ANNUNCIATOR_PANEL ANNUNCIATOR2_PANEL IFR_MAIN_PANEL COLLECTIVE_PANEL GPS_PANEL OVERHEAD_PANEL PARKING_BRAKE_PANEL FLAPS_TRIM_PANEL FUEL_PANEL ELECTRICAL_PANEL TRIM_PANEL LANDING_GEAR_PANEL MISC_POPUP_n (where n is 1 to 10) MINIPANEL
If your panel windows description does not fit any of above, use any number between 10000 and 19999. Lower and higher numbers are used internally.
There should be a MAIN_PANEL for every aircraft, otherwise other panels may not be rendered correctly.
Panel( ident=MAIN_PANEL ) Aircreation_582SL( ident=150 ) B737_800( ident=RADIO_STACK_PANEL ) b747_400( ident=GPS_PANEL ) beech_baron_58( ident=THROTTLE_PANEL ) Beech_King_Air_350( ident=ANNUNCIATOR_PANEL ) Bombardier_CRJ_700( ident=OVERHEAD_PANEL ) C172( ident=MAIN_PANEL_ALT1 ) C208B( ident=200 ) DeHavilland_Beaver_DHC2( ident=MAIN_PANEL_ALT2 ) Sailplane( ident=MINIPANEL ) Douglas_DC3( ident=125 ) Grumman_Goose_G21A( ident=250 ) Mooney_Bravo( ident=IDENT_MISC_POPUP_1 ) PANEL.CFG( ident=270 ) ControlTower( ident=MISC_POPUP_1 ) Bell206B( ident=COLLECTIVE_PANEL )
background_color Use for a background created with no background bitmap. Use 0,0,0 for a transparent background.
Panel( BACKGROUND_COLOR=16,16,16 ) Aircreation_582SL( BACKGROUND_COLOR=0,0,0 ) B737_800( background_color=0,0,0 ) b747_400( BACKGROUND_COLOR=2,2,2 )
window_size The percentage of the screen to be taken up by window, from 0 to 1. If this is set, the size of the main panel is ignored for this panel and size_mm becomes irrelevant for determining the size of the panel window. (size_mm is still used for calculating the relative sizes of the gauges within the window).
Panel( window_size=0.5 ) Aircreation_582SL( window_size=0.5,0.3625 ) beech_baron_58( window_size=1.000,1.000 ) C172( window_size=0.243,0.641 )
child_3d This indicates that the window is part of the 3D scene, and cannot be undocked or dragged around the screen.Panel( child_3d=1 )windowsize_ratioA multiplier for the size of the panel window (default is 1.0 for 100% of the original size). This is ignored if window_size is set. For example, if the size_mm for a given panel is 200, 200 and the size_mm for the first panel in the panel.cfg is 1024 x 768, the given panel would occupy 19% of the screen in the x dimension and 26% in the y dimension, or a total of 5% of the total screen area. If windowsize_ratio value to set to 2.0, the panel’s x dimension will be 38% of the screen width; its y dimension will be 52% of the screen height. In total, the panel will now occupy 20% of the total screen area.
Aircreation_582SL( windowsize_ratio=1.000 ) b747_400( windowsize_ratio=0.8 ) beech_baron_58( windowsize_ratio=0.73 ) Beech_King_Air_350( windowsize_ratio=1.3 )
sizeable If this is set to 0 (the default is 1), then the user cannot resize this panel. This means that the window cannot be stretched in any way; its size is maintained once the panel window is loaded. If the main application window grows or shrinks, the size of the panel window stays the same; if the panels or entire aircraft are then reloaded after the main application window has been resized, the panel window then grows or shrinks to its appropriate size.No examplesupdate_rateThe default update rate is 18hz. This parameter can be used to change this (to 6hz, or six times per second in the example). Note that this is the default rate for the whole panel, and this can be overridden by the update rate for individual gauges.b747_400( update_rate=6 )window_posOverrides the position and windowsize_ratio variables. Provide at least an x value, the y value is optional.
b747_400( window_pos=0.05, 0.25 ) beech_baron_58( window_pos=0.0,0.0 ) C172( window_pos=0.0,0.15 ) Extra300( window_pos= 0.000, 0.000 )
draw_order00 to draw_orderNN Instructs the renderer to draw certain sets of gauges in a specific order. In any draw order list, the gauges are drawn in that order.
For example: draw_order00=gauge50, gauge60 simply means gauge50 is drawn before gauge60.
b747_400( draw_order00=gauge12, gauge09, gauge10, gauge11 ) beech_baron_58( draw_order00=gauge50, gauge60 ) Sailplane( draw_order00=gauge18, gauge15 )
beech_baron_58( draw_order01=gauge51, gauge60 ) Sailplane( draw_order01=gauge17, gauge16 )
beech_baron_58( draw_order02=gauge52, gauge60 ) Sailplane( draw_order02=gauge17, gauge15 )
beech_baron_58( draw_order03=gauge53, gauge60 )
no_luminous Set to 1 to ignore luminous flags for this panel. Default is 0.beech_baron_58( no_luminous=1 )zorderDetermines the order of appearance of the panels on the screen. Takes values from 0 (bottom) to 100 (top).
beech_baron_58( zorder=0 ) C172( zorder=1 ) Mooney_Bravo( zorder=3 ) ControlTower( zorder=2 )
view_window_rect Determines the size in units of the view outside the window. Reducing this size from the default of 8192 x 6144 affects the position of the horizon line, and reducing the view size can help performance.
Beech_King_Air_350( view_window_rect=0,0,8192,3000 ) C172( view_window_rect=0,0,8192,4000 ) Grumman_Goose_G21A( view_window_rect=0,0,8192,5900 )file_1024_nightAn optional bitmap file to use at night.C172( file_1024_night=cessna_172_background_night.bmp) C208B( file_1024_night=caravan_main_panel_night.bmp ) DeHavilland_Beaver_DHC2( file_1024_night=beaver_small_background_night.bmp ) Grumman_Goose_G21A( file_1024_night=goose_background_lower_view_night.bmp)
alpha_blend The percentage (from 0.0 to 1.0) to blend the panel window with the background scene when the panel is docked. For example, for a 65% blending: alpha_blend=0.65.Lear45( alpha_blend=0.65 )window_size_ratioDetermines the width of a panel window as a ratio of the client area of the main window. If not specified, 1.0 is the default.Bell206B( window_size_ratio=1.000 )render_3d_windowSpecifies the type of window on which to render. A value of 1 specifies that the gauge will only render onto a 3-D view window, not a separate window. Note that you won’t be able to undock this panel.nomenuSpecifies whether the menu will appear in the Views menu. A value of 1 specifies that the window will not appear in the menu. By default, a panel window appears in the menu.textureTexture only applies to Virtual Cockpits. You must specify a name that starts with the dollar sign ($) and is no longer than 15 symbols.
Panel( texture=$737_1 ) B737_800( texture=$737_2 ) b747_400( texture=$747_1 ) beech_baron_58( texture=$Beech_Baron_1 )
gauge00 to gaugeNN Specifies which gauge file to load and the X,Y position of the gauge. The Panel system starts loading gauges, starting from gauge00 until it reaches gauge99. After that, it loads gauge100, gauge101, and so on until it finds a break in the progression. This comma-delimited variable exists primarily to specify which gauge DLL file to load and the X, Y position of the gauge, in millimeters. This will override the size_mm setting.
The basic format is: gauge##=gaugefile!gaugename, X, Y, W, H, parameters.
gauge# indicates the order in which the gauge is loaded
gaugefile! indicates the specific .gau file in which the gauge is found (if the gauge is C based) or the cabinet file (if the gauge is XML based).
gaugename displays the name of the gauge you assign in your gauge code via the GAUGE_NAME variable (C based), or the file name (XML based).
X, Y indicates the X and Y position of the gauge, in millimeters, relative to the panel background. W indicates the width of the gauge in millimeters. H indicates the height of the gauge in millimeters. Parameters are passed to the gauge as a text string argument. However, if you have set size_mm to be 1024, these values are also the pixel values, which can be much easier to deal with.
Panel( gauge00=Airbus_A321!altimeter_backup, 676,505 ) Aircreation_582SL( gauge00=Aircreation_582SL!altimeter, 326,624 ) B737_800( gauge00=B737_800!pfd_screen, 189,548 ) b747_400( gauge00=Boeing747-400!Nav-GPS Switch, 212, 98 )
Aircreation_582SL( gauge01=Aircreation_582SL!compass, 456,624 ) B737_800( gauge01=B737_800!pfd, 210,567,175,276 ) b747_400( gauge01=Boeing747-400!Nav Display Switch, 264, 98 )
Aircreation_582SL( gauge02=Aircreation_582SL!asi, 585,624) B737_800( gauge02=B737_800!mfd_screen, 409,548 ) b747_400( gauge02=Boeing747-400!Primary Flight Display Switch, 158, 98 )
b747_400( gauge33=Boeing747-400!Autopilot IAS-Mach Window, 321, 26 ) beech_baron_58( gauge33=Beech_Baron!Left Alternator Switch, 123, 281 ) Beech_King_Air_350( gauge33=KingAir!omi lights, 249, 480, 49, 19 )
This section sets the overall default view for the default 3-D window.
x Specifies the X position of the default 3D window.
Aircreation_582SL( SIZE_Y=0) b747_400( SIZE_Y=0) beech_baron_58( SIZE_Y=0)ySpecifies the Y position of the default 3D window.Aircreation_582SL( SIZE_Y=0) b747_400( SIZE_Y=0) beech_baron_58( SIZE_Y=0)size_xSpecifies the width of the default 3D window.Aircreation_582SL( SIZE_Y=8192) b747_400( SIZE_Y=8192) beech_baron_58( SIZE_Y=8192)size_ySpecifies the height of the default 3D window.Aircreation_582SL( SIZE_Y=6144 ) b747_400( SIZE_Y=2800 ) beech_baron_58( SIZE_Y=2500 )
This section allows the default color lighting settings to be changed.
day The lighting color applied during daytime (RGB).
Default( Day=255,255,255 )
night The lighting color applied at night (RGB).Default( Night=205,101,100 )
b747_400( Night=233,166,134 ) beech_baron_58( Night=225,117,89 ) Bombardier_CRJ_700( Night=223,86,88 )
luminous The lighting color applied to gauges that are luminous (RGB).
Panel( Luminous=147,64,64 ) b747_400( Luminous=201,64,64 ) beech_baron_58( Luminous=200,200,101 ) Beech_King_Air_350( Luminous=233,109,72 )
The day and night colors effectively determine the maximum and minimum brightness of the panel. Luminous specifies the color that can be applied to the luminous sections of the gauges. Here is an example to demonstrate what these colors mean. In this example, the colors for day, night, and luminous are red, green, and blue, respectively. Note the subtle difference between dusk and night – in this the environmental lighting system the height of the sun in the sky, moonlight, and so on, determines what percentage of the day color to use. When the lights are off no specified color is applied to the panel and its gauges however the brightness of the images are still affected by the environmental lighting.