LIGHT FX PROPERTIES

The <light_name>.fx file is used to set the properties of a light that will be used by an aircraft or vehicle. The file should be placed within the effects folder created in the common, preset, or attachment folders of the modular SimObject. It is normal to have multiple *.fx files in this folder, where each one describes a specific light and has a unique name. For more information on creating lights for your SimObjects, please see the following page:

 

 

[Particle.0]

This section is used to scale the texture sprite that is being used by the light. The parameters listed here will have no effect if you have not assigned a sprite Texture to the light.

 

This section can have the following parameters:

 

Parameter Description Type Required
X Scale Sets the scale multiplier along the X axis of the sprite, where 1 is no scaling, 0.5 would half the scale, and 2 would be double the scale. Float No
Y Scale Sets the scale multiplier along the X axis of the sprite, where 1 is no scaling, 0.5 would half the scale, and 2 would be double the scale. Float No
Fade In This parameter is used to set a multiplier on the sprite size along the X and Y axis which is used when the light is fading into view. We recommend that you start with the values of 0.75, 0.75 and then edit them as required and appropriate.

List of 2 Floats

No
Fade Out This parameter is used to set a multiplier on the sprite size along the X and Y axis which is used when the light is fading out of view. We recommend that you start with the values of 0.75, 0.75 and then edit them as required and appropriate.

List of 2 Floats

No

 

 

[ParticleAttributes.0]

This section is used to define some specific properties of the light relating to its colour and texture. Most of these parameters assume you included a texture to be used as a "billboard" sprite, which will always point towards the camera and will be used when the camera is moved away from the emissive mesh such that the mesh becomes too small to bloom enough or to be visible. It should be noted that the colour parameters in this section will not only colour the given texture, but also be used to set the illumination and emissive colour (and as such do not require a texture and should always be set).

NOTE: The start and end colours can be different, and will create a gradient effect for the light and the emission effect, however - in general - you will want to keep both settings the same colour to maintain realism.

 

This section can have the following parameters:

 

Parameter Description Type Required
Blend Mode

This parameter is used to set the blend mode used to render the light.

IMPORTANT! For Microsoft Flight Simulator 2024 this should only be set to 2 (additive).

Enum:

  1. 0: No Alpha
  2. 1: Alpha blending
  3. 2: Additive blending
  4. 3: Multiply blending
Yes
Texture

This is the name of the texture file to be used as the sprite for the light. All light textures should be placed in a textures folder beside the *.fx file being created. Note that even if you supply this file, it will not be displayed unless the #EmMesh or #Node keys have been set in the lightdef.N definition. When supplying the texture file, you do not need to give the path, just the file name (and its extension), for example:

Texture = light_fx_strobe_1.png

For more information, please see here: Implementing Lights

String No
Color Start

This parameter defines the "start" colour for the light. This value will be used for all parts of a light: the light mesh itself, its bloom, and the albedo texture of the light sprite (if one is supplied). This parameter requires three values representing the R, G, B colour components, expressed as values between 0 and 255.

List of 3 Floats

Yes
Color End This parameter defines the "end" colour for the light. This value will be used for all parts of a light: the light mesh itself, its bloom, and the albedo texture of the light sprite (if one is supplied). This parameter requires three values representing the R, G, B colour components, expressed as values between 0 and 255.

List of 3 Floats

Yes
NearFade

This value sets the distance (in meters) at which the sprite texture will start to shrink as the camera gets closer to the light source. If supplied, you will also need to set the NearEndFade value otherwise this will have no effect.

This parameter only has an effect when a sprite Texture is assigned to the light.

Float No
NearEndFade

This value sets the distance (in meters) at which the sprite texture will disappear as the camera gets closer to the light source. If supplied, you will also need to set the NearEnd value otherwise this will have no effect.

This parameter only has an effect when a sprite Texture is assigned to the light.

Float No
MinProjSize This value sets the sprite minimum size when at a far distance from the camera. The value is expressed as a multiplier where a value of 1 is no change to the default texture size, 0.5 would be half size, and 2 would be double the size. Float No

 

 

[LightAttributes.0]

This section is used to define the general properties of the light. It can have the following parameters:

 

Parameter Description Type Required
Type

This parameter sets the type of light that is being defined, and can be either "omni" (omnidirectional) or "spot". For example:

Type = spot
String Yes
Size This parameter is a multiplier that can be used to modify the size of the specular for the light (ie: it's size when seen in a reflective surface). This can be useful to match the size of the specular to match the geometry of the bulb. Float Yes
Range This parameter sets the range of the light (in meters), ie: the maximum distance at which it can be seen. It is worth noting that the final visual range within the simulation depends on the intensity of the light, and is based on real-life mathematical formulas, which means that this parameter can only be used to reduce the maximum range, not extend it. Float Yes
Intensity This parameter sets the intensity of the light, in candela. Float Yes
Softness This parameter is used to modify the "softness" of the shadows that the light will cast. The softness is expressed as a Percent Over 100 where 0 will give "hard" edges and 1 will fully "blur" the edges. Float Yes
SpotInner This parameter sets the angle of the "aperture" cone within which the light will provide 100% illumination. Note that this parameter is only used when the Type is set to "spot". Float No
SpotOuter This parameter sets the angle of the "aperture" cone outside of which the light will provide 0% illumination. Note that this parameter is only used when the Type is set to "spot". Float No
Volumetric This parameter is used to enable (1, true) or disable (0, false) volumetric effects. Note that the visibility of these effects will depend on the weather conditions. Float Yes
ChannelInterior This parameter is used to define whether the light should affect the SimObject interior model (1, true) or not (0, false). Bool No
ChannelExterior This parameter is used to define whether the light should affect the SimObject exterior model (1, true) or not (0, false). Bool No

 

 

Common *.FX Files

When creating your aircraft you do not have to create your own *.fx files, as there are multiple "common" effects files available to you to use with your aircraft. These files can be found in one of the following locations, depending on the type of installation you have:

  • Steam:
    Users\[USER_NAME]\AppData\Roaming\Microsoft Flight Simulator\Packages\Official\Steam\fs-base-effects-legacy\effects
  • OneStore:
    Users\[USER_NAME]\AppData\Roaming\Microsoft Flight Simulator\Packages\Official\OneStore\fs-base-effects-legacy\effects

All the files listed here can be used as light effects for your aircraft simply by supplying their name as the EffectFile value in the lightdef.N definition.

 

LIGHT_ASOBO_A320_Pedestal.fx
LIGHT_ASOBO_Afterburner.fx
LIGHT_ASOBO_AmbiantScreens.fx
LIGHT_ASOBO_BeaconBelly.fx
LIGHT_ASOBO_BeaconBellyOmni.fx
LIGHT ASOBO_Beacon Top.fx
LIGHT_ASOBO_CabinBounce.fx
LIGHT_ASOBO_CabinBounceLarge.fx
LIGHT_ASOBO_CabinBounceSmall.fx
LIGHT_ASOBO_CockpitMinimalAmbiant.fx
LIGHT_ASOBO_CockpitMinimalAmbiantLarge.fx
LIGHT_ASOBO_CockpitMinimalAmbiantLow.fx
LIGHT_ASOBO_CockpitSpot.fx
LIGHT_ASOBO_CockpitSpotLarge.fx
LIGHT ASOBO_CockpitSpotNarrow.fx
LIGHT_ASOBO_CockpitSpotRed.fx
LIGHT_ASOBO_CockpitSpotWideShort.fx
LIGHT_ASOBO_DR400_CockpitSpot.fx
LIGHT_ASOBO_Gauge.fx
LIGHT_ASOBO GaugeSmall.fx
LIGHT_ASOBO_Glareshield.fx
LIGHT_ASOBO_GlareshieldShort.fx
LIGHT_ASOBO_GlareshieldShortRed.fx
LIGHT_ASOBO_Gyrophare.fx
LIGHT_ASOBO_Landing.fx
LIGHT_ASOBO_LandingBelly.fx
LIGHT_ASOBO_LandingLarge.fx
LIGHT_ASOBO_Landing Pulse.fx
LIGHT_ASOBO_LogoLight.fx
LIGHT_ASOBO_LogoLightLarge.fx
LIGHT_ASOBO_NavigationGreen.fx
LIGHT_ASOBO_NavigationRed.fx
LIGHT_ASOBO_NavigationWhite.fx
LIGHT_ASOBO_OnlySprite.fx
LIGHT_ASOBO_ScreenBlue.fx
LIGHT_ASOBO_ScreenOrange.fx
LIGHT_ASOBO_ScreenWhite.fx
LIGHT_ASOBO_StrobeBelly.fx
LIGHT_ASOBO_StrobeDouble.fx
LIGHT_ASOBO_StrobeSimple.fx
LIGHT_ASOBO_StrobeTop.fx
LIGHT_ASOBO_Taxi.fx
LIGHT_ASOBO_TaxiBelly.fx
LIGHT_ASOBO_TaxiLarge.fx
LIGHT_ASOBO_vehicle_backlight_red.fx
LIGHT_ASOBO_vehicle_gyrolight_blue.fx
LIGHT ASOBO_vehicle_gyrolight_orange.fx
LIGHT_ASOBO_vehicle_gyrolight_red.fx
LIGHT_ASOBO_vehicle_headlight_white.fx
LIGHT_ASOBO_Wing.fx
LIGHT_ASOBO_Wing_Passing.fx
LIGHT_ASOBO_WingLarge.fx
LIGHT_Longitude_BeaconBelly.fx
LIGHT_Longitude_LandingBelly.fx
LIGHT_Longitude_PulseBelly.fx
LIGHT_Longitude_RecogBelly.fx
LIGHT_Longitude_Taxi.fx
LIGHT_Longitude_Taxi_Downwash.fx