# Airport Objects An **Airport** object is an object element used to add an airport area to the world. Adding this object will permit you to define certain meta-data for the Airport and then add airport-specific object elements from the Scenery Editor. These object elements are: - [Apron](../apron-objects/) - [ControlTower](../tower-objects/) - [Helipad](../helipad-objects/) - [Jetway](../jetway-objects/) - [LightRow](../lightrow-objects/) - [LightSupport](../lightsupport-objects/) - [PaintedHatchedArea](../paintedhatchedarea-objects/) - [PaintedLine](../paintedline-objects/) - [Runway](../runway-objects/) - [TaxiwayParking](../taxiwayparking-objects/) - [TaxiwayPath](../taxiwaypath-objects/) - [TaxiwayPoint](../taxiwaypoint-objects/) - [TaxiwayServiceStand](../taxiwayservicestand-objects/) - [TaxiwaySign](../taxiway-sign-objects/) - [TextMarking](../textmarking-objects/) - [VDGS](../vdgs-objects/) - [VectorPlacement](../vectorplacement-objects/)   When you select this object type the [Objects](../../menus/the-view-menu/#objects) window will not show any different object elements as there is only one type of airport and it's meta-data is defined through the [Properties](../../using-the-scenery-editor/#properties): {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_1_list.png" alt="The Airport Object In The Objects Window" >}} When you click the {{< button "Add" />}} button, the Airport object will be added to the scene and can be positioned using the [Gizmo](../../menus/the-view-menu/#gizmo). The position of this airport object will be used to define the **airport reference point** which is used for placing in-sim markers but otherwise has little bearing on the contents of the airport. Note that when you add an Airport object to scene for the first time, it will be created in [The Scenery Contents List](../../the-scenery-editor/#the-scenery-contents-list) of the Scenery Editor as a unique **group** rather than as a single object listing. This is because airports, while themselves an object, are also a type of "container" for other object types that can *only* be placed within an airport: {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_3_groups.png" alt="Airport Groups In The Scenery Editor" >}} Any further airports you add to the package will be listed as an individual named group, and each named airport group will contain all the sub-groups and object elements that are created for it. For more information see the section on [Scenery Groups](../../the-scenery-editor/#scenery-groups). ### Properties The **Properties** window for an Airport looks like this: {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_2_props.png" alt="The Properties Window For An Airport Object" >}} - ##### Name This is the name of the element as defined from its type. The name will be appended with additional information in brackets depending on the rest of the options in the Properties window (for example, the {{< glossterm >}}icao_code{{< /glossterm >}} or the Airport Name). This element cannot be directly edited. - ##### Display Name This is the name of the element as it will be displayed in the [The Scenery Contents List](../../the-scenery-editor/#the-scenery-contents-list). This can be edited and is helpful for identifying elements when you have a lot of items in the content list. - ##### ICAO This is the {{< glossterm >}}icao_code{{< /glossterm >}} for the Airport being defined. This value is **obligatory** and you will get an error in the Scenery Editor if it's not supplied. Note that after entering the ICAO into the input field, *you need to press the {{< input "Enter" />}} key to confirm it*. - ##### Country Code This is the {{< glossterm >}}icao{{< /glossterm >}} **country code** which must be a maximum of two characters. See [here](https://www.avcodes.co.uk/icaonat.asp) for more information. - ##### Region Name This is the name of the region the airport is in. Generally the region would be one of the following: - **Japan** - **Asia** (China, India, Sri Lanka, Philippines, Taiwan, etc...) - **North America** (Canada, USA) - **Latin America** (Argentina, Cuba, Venezuela, Brazil, etc...) - **Middle East** (UAE, Israel, Saudi Arabia, Iran, etc...) - **Europe** (France, Spain, Germany, United Kingdom, etc...) - **Africa** (Tunisia, Chad, Kenya, Madagascar, etc...) - ##### Country Name This is the name of the country the airport is in. This string can be localised using the `TT:` format, as explained in the [LOC Files (Localization)](../../../../../content-configuration/localization/loc-files-localization/) documentation. - ##### State Name This is the name of the state the airport is in. This string can be localised using the `TT:` format, as explained in the [LOC Files (Localization)](../../../../../content-configuration/localization/loc-files-localization/) documentation. - ##### City Name This is the name of the city that the airport is either in or nearest to. This string can be localised using the `TT:` format, as explained in the [LOC Files (Localization)](../../../../../content-configuration/localization/loc-files-localization/) documentation. - ##### Airport Name This is the name of the airport itself and will be displayed to the user. This value is **obligatory** and you will get an error in the Scenery Editor if it is not supplied. This string can be localised using the `TT:` format, as explained in the [LOC Files (Localization)](../../../../../content-configuration/localization/loc-files-localization/) documentation. - ##### Object Test Radius This is the radius (in meters) around the airport reference point in which you are permitted to place any of the listed airport objects. In the world, this can be seen rendered as a dark blue circle. - ##### Apply Flatten Checking this option will auto-generate terraforming rectangles within the bounds of the airport test radius to flatten the terrain. These rectangles are internally defined and not rendered in the world as objects, although their effects will be visible on the terrain. - ##### Star Airport Checking this will make the airport a "star" airport on the world map, highlighting it to users. - ##### TIN Colour Correction This option is enabled by default on all new airports and applies colour correction to certain airport features - mainly runways and aprons - to eliminate unnatural {{< glossterm >}}tin{{< /glossterm >}} colours bleeding into them. Mouse over the image below to see an example of the difference this option can make (note that the difference will depend on the location): {{< image-hover src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_14_tin1.png" hover="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_14_tin2.png" alt="TIN Colour Correction Example" >}} - ##### Closed Airport When checked, this will stop the airport from being accessible or interactive in any interface such as the world map, the instruments or the {{< glossterm >}}atc{{< /glossterm >}} system. Essential meaning the airport is only going to be rendered and nothing else. - ##### Generate Taxiway Signs Clicking the Generate Taxiway Signs button will add auto-generated [TaxiwaySign Objects](../taxiway-sign-objects/) to the airport based on the [TaxiwayPath Objects](../taxiwaypath-objects/) that have been added. This button requires at least one taxiway path to exist in the airport. - ##### Text Marking Tiling This option permits you to set the tiling size in meters for text. This size is the area covered by a single tile of the text marking paint texture and is used by some outline text markings and background features. #### Ground Merging When you expand the **Ground Merging** section, initially you'll be presented with a single button: {{< button "Setup Transfer Parameters" />}}. Clicking this will expand the Properties window to show the following: {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_4_ground.png" alt="The Ground Merging Options For An Airport" >}} Basically, these sliders define how much aerial map detail will remain visible by changing the transparency of the lighter (*transfer bright*) and darker (*transfer dark*) areas of the element individually. {{< callout context="note" title="NOTE" icon="outline/bulb" >}} This option is only valid for {{< link "apron-objects/" >}}Apron Objects{{< /link >}} in the airport. {{< /callout >}} You can disable this option by clicking the {{< button "Remove Parameters" />}} option which will remove the bright/dark parameters from all applicable ground elements. {{% tagged "internal" %}} Delete Command (Not available for World Hub Airports) {{% /tagged %}} #### Delete Command When you expand the **Delete Command** section of the Airport properties you'll see the following list of options for deleting object elements: {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_5_delete.png" alt="The Delete Command Option For An Airport In The Properties Window" >}} These various options can be used to remove selected object elements from the airport being rendered. *Note that this does not include anything actually in the **current** airport!* The options provided here are meant to delete things from a previously loaded package, and is dependent on the package load order. So, packages loaded *after* the package with this airport will be rendered as normal, and packages loaded *before* the package with this airport will have elements removed. Essentially this is a mechanism designed for overwriting an existing airport from another package. #### Override Airport Archetypes {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_16_overridemenu.png" alt="The Override Airport Archetypes Sub-Menu" >}} From this menu you can access some global override options that will affect how some areas of your airport will be rendered. To start with you should choose one of the default **Archetype** options that are presented in the drop down menu at the top, and then continue on to edit (if necessary) the various archetype sub-sections listed under this menu option. Each archetype sub-section is linked below and will take you to a description of the available parameters and their effect for the selected archetype. The options provided are designed to create the general look you want for the features, but without any guaranteed specific placing or graphic(s) being used. It should be noted that some of these effects are based on a random seed which is based on airport {{< glossterm >}}icao{{< /glossterm >}}. This means that RNG-dependent effects will be different from one airport to another, but all users at the *same* airport should see the same things in the same places. - [Taxiway Tire Gum](../airport-archetype-overrides/#taxiway-tire-gum) - [Runway Tire Gum](../airport-archetype-overrides/#runway-tire-gum) - [Runway Crack](../airport-archetype-overrides/#runway-crack) - [Sealed Joint](../airport-archetype-overrides/#sealed-joint) - [Runway Patch](../airport-archetype-overrides/#runway-patch) - [Runway Grooving](../airport-archetype-overrides/#runway-grooving) - [Asphalt Dirt](../airport-archetype-overrides/#asphalt-dirt) - [Taxiway Tire Stains](../airport-archetype-overrides/#taxiway-tire-stains) - [Apron Patches](../airport-archetype-overrides/#apron-patches) - [Apron Stains](../airport-archetype-overrides/#apron-stains) - [Apron Car Tire Mark](../airport-archetype-overrides/#apron-car-tire-mark) - [Apron Crack](../airport-archetype-overrides/#apron-crack) - [Traffic](../airport-archetype-overrides/#traffic) - [TaxiwaySign](../airport-archetype-overrides/#taxiwaysign) #### Navigation Data {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_32_navdata.png" alt="The Navigation Data Section" >}} From this section, you can change various details related to the airport navigation data. It has the following three parameters which can be edited initially: - ##### Magvar This is the magnetic variation for the airport position. This is the angle difference between the *magnetic* north and *true* north. A negative value here means it's to the east and positive value is to the west, and the value is measured in degrees between -360.0° and 360.0°. - ##### Transition Altitude This defines the transition altitude - the altitude above sea level at which aircraft change from the use of *local pressure* to the use of *standard pressure* - for the airport, in {{< glossterm >}}ft{{< /glossterm >}}. - ##### Transition Level Defines the transition level - the height above sea level that *flight level* is used instead of feet or meters - for the airport. In addition to these values, you have two expandable sections to further define the airport NavData. These are explained below. {{% tagged "internal" %}} Delete Command (Not available for World Hub Airports) {{% /tagged %}} ##### Delete Command {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_33_deletenav.png" alt="The NavData Delete Commands" >}} From here you can delete certain navigation frequencies for the airport. {{< callout context="caution" title="IMPORTANT!" icon="outline/alert-triangle" >}} Using many of the delete options for navigation aids (like deleteAllApproaches or deleteAllILSs) can cause aircraft instrument procedures to no longer load correctly. As such great care should be taken when using them. {{< /callout >}} {{% tagged "internal" %}} Frequencies (Not available for World Hub Airports) {{% /tagged %}} ##### Frequencies {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_15_freq.png" alt="The Frequencies Option With A New Frequency" >}} The **Frequencies** section permits you to define the exact frequencies of certain navigation and communication systems. To add a new frequency, click on the Add Frequency button, then fill in the following details: - ###### Frequency The frequency (in MHz) that for the system you are defining - ###### Type The type of system being defined, which can be any of the following: - APPROACH - ASOS - ATIS - AWOS - CENTER - CLEARANCE - CLEARANCE_PRE_TAXI - CTAF - DEPARTURE - FSS - GROUND - MULTICOM - REMOTE_CLEARANCE_DELIVERY - TOWER - UNICOM - ###### Name The "common name" that you wish to give the frequency. {{% tagged "internal" %}} Light Presets (Not available for World Hub Airports) {{% /tagged %}} #### Light Presets Light presets aim to make it easier and quicker to add lighting to your airport. The basic principle is that you can create one or more light presets for an airport, and then apply these presets to any of the possible lighting object elements that you add, permitting you to create sequenced strobe lights or pulsing directional lights, etc... {{< callout context="caution" title="IMPORTANT!" icon="outline/alert-triangle" >}} Currently this feature can only be applied to {{< link "lightrow-objects/" >}}LightRow{{< /link >}} object elements. {{< /callout >}} When you expand this option you'll be presented with a single button: {{< button "Add Light" />}}. Clicking this will add a new light preset and expand further options for the light that you are adding: {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_6_lights.png" alt="A New Light Preset For The Airport Object" >}} Here you can first **Name** the preset. This name will then be shown in those other object elements that permit it (currently only **LightRow** objects) so that you can select this preset for the lighting to use. Next you can set the **Incremental Phase** for the light. This one is only applicable if you have set the **Phase** property for the light type within the preset (explained below). Essentially, this is a value that will be added to the light phase in an incremental fashion so that all lights using this preset phase in sequence rather than at the same time. Finally, you can select a mesh or the light by clicking the {{< button "Select mesh" />}} button. Once you have set up the basic preset values, you can go ahead and add lights to the preset. This is done by clicking the {{< button "Add Light" />}} button, which will further expand the properties with options for the light (note you can add further lights to the preset and they will each have their own options, and you can remove lights from the preset by clicking the {{< button "X" />}} button): {{< image-center src="images/2_DevMode/scenery_editor/Objects/airports/airport_obj_7_singlelight.png" alt="Options To Modify A Light In A Preset" >}} - **Type**: This is the type of light that is being defined. Can be one of the following:
| Light | Description | Illustration | | --- | --- | --- | | **Omni-Directional** | Light will be visible form any direction. | ![Illustration Of An Omni-Directional Light](images/2_DevMode/scenery_editor/Objects/airports/airport_obj_9_omnidir.png "Illustration Of An Omni-Directional Light") | | **Uni-Directional** | Light will be visible from the half-space defined by the position and the direction. Essentially a 3D "cone" of light with falloff from all "front" angles, but not visible from the "back". | ![Illustration Of An Uni-Directional Light](images/2_DevMode/scenery_editor/Objects/airports/airport_obj_10_unidir.png "Illustration Of An Uni-Directional Light") | | **Angled Directional** | This is similar to the uni-directional light, only the second direction value is used to define the normal for a cutoff plane where the light is not visible if viewed from below that plane (generally only useful for {{< glossterm >}}vasi{{< /glossterm >}} lights). | ![Illustration Of An Angled-Directional Light](images/2_DevMode/scenery_editor/Objects/airports/airport_obj_11_angledir.png "Illustration Of An Angled-Directional Light") | | **Double Angled Directional** | This uses two directional normals to define two cutoff planes. Light will only be visible from the sides or when viewed within the angles of the planes (generally only useful for {{< glossterm >}}vasi{{< /glossterm >}} lights). | ![Illustration Of A Double Angled-Directional Light](images/2_DevMode/scenery_editor/Objects/airports/airport_obj_12_dangledir.png "Illustration Of A Double Angled-Directional Light") | | **Fresnel** | Similar to the Double Angled Directional light, this light uses two normals to create cutoff planes for the light, however this light also has a position offset that moves it to be within the planes themselves. | ![Illustration Of A Fresnel Light](images/2_DevMode/scenery_editor/Objects/airports/airport_obj_13_fresnel.png "Illustration Of A Fresnel Light") |
{{< callout context="caution" title="IMPORTANT!" icon="outline/alert-triangle" >}} The Fresnel light currently has an issue where there is no way to define the positional offset. Future updates will fix this. {{< /callout >}}   - **Fade**: Sets the type of fade to be applied to the light when it has Duration/Period/Phase settings. The options available are: - **No Fade** - The light will simply switch between on/off - **Fade In** - The light will fade on, then switch off - **Fade Out** - The light will switch on then fade to off - **Fade In** / **Out** - The light will fade between on and off   - **Radius**: The radius of the light, in meters. This is essentially the distance of the "glow" around the light.   - **Intensity**: The intensity of the light when fully on. Intensity is measured in {{< glossterm >}}candela{{< /glossterm >}}, and higher values will mean a more intense light which will be visible at a greater distance.   - **Boost Intensity During Daylight**: Checking this option will increase the intensity of the light during the day such that it will still be visible. If unchecked, then - unless the intensity is very high - the light will only be visible during the night.   - **Duration**: The duration of the light "ON" phase, in seconds.   - **Period**: The combined total period of the light being on and the light being off (including fades in/out). For example, setting the duration to 10 and the period to 20 would have an "on" of 10 and an "off" of 10 (so the total is the period value of 20).   - **Phase**: An offset value for the light period so you can create sequences of flashing lights that flash on/off at different times but with the same period. Note that this will be combined with the general preset **Incremental Phase** value (if anything other than 0), so you can create complex effects of "marching" lights.   - **Colour**: The color of the light. You can input individual RGB component values (from 0 to 255 for each component), or you can click on the color box to open [The Colour Picker](../../../../the-colour-picker/) where you can define the color visually or using HSV or hex values.   - **Relative Position**: The input fields here permit you to offset the light from the position it was placed in the world along the Y/Z/X axis, where the X axis will follow the [light row](../lightrow-objects/) that the preset is applied to. Values are in meters.   - **Direction**: The direction of the light set using Y/Z/X axis values, in degrees, and the values used here will be added to the *local* frame of reference for the components that use the preset. This parameter is used by all lights except the omni-directional type. Note that for *Double Angle Directional* and *Fresnel* lights, this value is for defining a normal from which a cutoff plane will be created for the light. Note that there is an option in [The Rendering Menu](../../menus/the-rendering-menu/) to help make the positioning of this vector easier: [Show Parking Spaces](../../menus/the-rendering-menu/#show-parking-spaces)   - **Direction 2**: The second direction of the light set using Z/X/Y axis values, in degrees, and the values used here will be added to the *local* frame of reference for the components that use the preset. This is only used by the *Angled Directional*, *Double Angled Directional*, and *Fresnel* lights to set a normal for the cutoff plane used by those lights. Note that there is an option in [The Rendering Menu](../../menus/the-rendering-menu/) to help make the positioning of this vector easier: [Show Parking Spaces](../../menus/the-rendering-menu/#show-parking-spaces) #### Apron Control Clicking on this option will give you the ability to add one or more Airline Code strings for airport services by clicking on the {{< button "Add Apron Control" />}} button. This code registers a new airline service for use with Apron Control and enables the airport and other objects to request and use the advanced services that can interact with other airport objects and aircraft. Not supplying an Apron Control airline code does not mean that no services will be available for the airport, but it *will* mean that the airport will use "fallback" services which aren't as comprehensive. Note that you can add multiple airline codes to have the airport associated with different airline services, and if you need to remove an airline code, you can simply click on the {{< button "X" />}} button to the side. #### Web Assembly Modules In this section you can click the {{< button "Add Module" />}} button to setup a WebAssembly module for the airport to use. After pressing this button an empty text field will be shown and you can click on the folder icon {{< button "🖿" />}} to open the file explorer and browse to the `*.wasm` file you want to use. After selecting a file, the text field will show the *output path* for the module (not the source path), and if there are any issues with the module path, these will be flagged in the editor as well. For information on how to create WASM for an airport, please see the following page: - [Creating WASM Airports](../../../../../programming-apis/wasm/creating-wasm-airports/) To see an example of airport configured to use WASM, please see here: - [SimpleWasmAirport](../../../../../samples-tutorials/samples/sceneries/simplewasmairport/)