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:
|
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
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 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 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:
|
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