UDirectionalLightComponent

Inheritance Hierarchy

Syntax

class UDirectionalLightComponent : public ULightComponent

Remarks

A light component that has parallel rays. Will provide a uniform lighting across any affected surface (eg. The Sun). This will affect all objects in the defined light-mass importance volume.

Variables

Name Description

Public variable

uint32 : 1

 

bCastModulatedShadows

Whether the light should cast modulated shadows from dynamic objects (mobile only).

Public variable

uint32 : 1

 

bEnableLightShaftOcclusion

Whether to occlude fog and atmosphere inscattering with screenspace blurred occlusion from this light.

Public variable

uint32 : 1

 

bUsedAsAtmosphereSunLight

Public variable

uint32 : 1

 

bUseInsetShadowsForMovableObjects

Stationary lights only: Whether to use per-object inset shadows for movable components, even though cascaded shadow maps are enabled.

Public variable

float

 

CascadeDistributionExponent

Controls whether the cascades are distributed closer to the camera (larger exponent) or further from the camera (smaller exponent).

Public variable

float

 

CascadeTransitionFraction

Proportion of the fade region between cascades.

Public variable

float

 

DistanceFieldShadowDistance

Distance at which the ray traced shadow cascade should end.

Public variable

int32

 

DynamicShadowCascades

Number of cascades to split the view frustum into for the whole scene dynamic shadow.

Public variable

float

 

DynamicShadowDistanceMovableLight

How far Cascaded Shadow Map dynamic shadows will cover for a movable light, measured from the camera.

Public variable

float

 

DynamicShadowDistanceStationaryLight

How far Cascaded Shadow Map dynamic shadows will cover for a stationary light, measured from the camera.

Public variable

int32

 

FarShadowCascadeCount

0: no DistantShadowCascades, otherwise the count of cascades between WholeSceneDynamicShadowRadius and DistantShadowDistance that are covered by distant shadow cascades.

Public variable

float

 

FarShadowDistance

Distance at which the far shadow cascade should end.

Public variable

FLightmassDirec ...

 

LightmassSettings

The Lightmass settings for this object.

Public variable

FVector

 

LightShaftOverrideDirection

Can be used to make light shafts come from somewhere other than the light's actual direction.

Public variable

float

 

LightSourceAngle

Light source angle in degrees, used for dynamic shadowing methods.

Public variable

FColor

 

ModulatedShadowColor

Color to modulate against the scene color when rendering modulated shadows. (mobile only)

Public variable

float

 

OcclusionDepthRange

Everything closer to the camera than this distance will occlude light shafts.

Public variable

float

 

OcclusionMaskDarkness

Controls how dark the occlusion masking is, a value of 1 results in no darkening term.

Public variable

float

 

ShadowDistanceFadeoutFraction

Controls the size of the fade out region at the far extent of the dynamic shadow's influence.

Public variable

float

 

TraceDistance

Determines how far shadows can be cast, in world units. Larger values increase the shadowing cost.

Constructors

Name Description

Public function

UDirectionalLightComponent

(
    const FObjectInitializer & ObjectIn...
)

Functions

Name Description

Public function

void

 

SetCascadeDistributionExponent

(
    float NewValue
)

Public function

void

 

SetCascadeTransitionFraction

(
    float NewValue
)

Public function

void

 

SetDynamicShadowCascades

(
    int32 NewValue
)

Public function

void

 

SetDynamicShadowDistanceMovableLight

(
    float NewValue
)

Public function

void

 

SetDynamicShadowDistanceStationaryLight

(
    float NewValue
)

Public function

void

 

SetEnableLightShaftOcclusion

(
    bool bNewValue
)

Public function

void

 

SetLightShaftOverrideDirection

(
    FVector NewValue
)

Public function

void

 

SetOcclusionMaskDarkness

(
    float NewValue
)

Public function

void

 

SetShadowDistanceFadeoutFraction

(
    float NewValue
)

Overridden from ULightComponent

Name Description

Public function Virtual

FLightSceneP ...

 

CreateSceneProxy()

WITH_EDITOR.

Public function Virtual

FLightmassLi ...

 

GetLightmassSettings()

Public function Virtual

FVector4

 

GetLightPosition()

Return the homogenous position of the light.

Public function Virtual

ELightCompon ...

 

GetLightType()

ELightComponentType for the light component class

Public function Virtual

float

 

GetUniformPenumbraSize()

Public function Virtual

bool

 

IsUsedAsAtmosphereSunLight()

Whether to consider light as a sunlight for atmospheric scattering.

Overridden from UActorComponent

Name Description

Public function Virtual

void

 

InvalidateLightingCacheDetailed

(
    bool bInvalidateBuildEnqueuedLighti...,
    bool bTranslationOnly
)

ULightComponent::InvalidateLightingCache

Overridden from UObject

Name Description

Public function Virtual

bool

 

CanEditChange

(
    const UProperty * InProperty
)

Called by the editor to query whether a property of this object is allowed to be modified.

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent & PropertyCha...
)

Called after property has changed via e.g. property window or set command.

Public function Virtual

void

 

Serialize

(
    FArchive & Ar
)

WITH_EDITOR.

References

Module

Engine

Header

Runtime/Engine/Classes/Components/DirectionalLightComponent.h