Navigation
API > API/Runtime > API/Runtime/Engine > API/Runtime/Engine/Components
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UActorComponent
- USceneComponent
- ULightComponentBase
- USkyLightComponent
References
| Module | Engine |
| Header | /Engine/Source/Runtime/Engine/Classes/Components/SkyLightComponent.h |
| Include | #include "Components/SkyLightComponent.h" |
Syntax
class USkyLightComponent : public ULightComponentBase
Variables
| Type | Name | Description | |
|---|---|---|---|
| float | AverageBrightness | ||
| bool | bCaptureEmissiveOnly | Only capture emissive materials. | |
| uint32: 1 | bCloudAmbientOcclusion | Whether the cloud should occlude sky contribution within the atmosphere (progressively fading multiple scattering out) or not. | |
| bool | bHasEverCaptured | ||
| float | BlendDestinationAverageBrightness | ||
| TObjectPtr< class UTextureCube > | BlendDestinationCubemap | ||
| FSHVectorRGB3 | BlendDestinationIrradianceEnvironmentMap | ||
| TRefCountPtr< FSkyTextureCubeResource > | BlendDestinationProcessedSkyTexture | ||
| float | BlendFraction | If 0, no blend is present. | |
| bool | bLowerHemisphereIsBlack | Whether all distant lighting from the lower hemisphere should be set to LowerHemisphereColor. | |
| bool | bRealTimeCapture | When enabled, the sky will be captured and convolved to achieve dynamic diffuse and specular environment lighting. | |
| bool | bSavedConstructionScriptValuesValid | Indicates whether the cached data stored in GetComponentInstanceData is valid to be applied in ApplyComponentInstanceData. | |
| uint32: 1 | bShowIlluminanceMeter | When enabled, visualize on screen the sky cube map as well as the integrate half hemisphere of luminance, together with the sky illuminance contribution at the position of the skylight component. | |
| ESkyLightCaptureStatus | CaptureStatus | In an attempt to get valid lighting data as soon as possible in a level, we will always trigger a skylight capture at creation. | |
| float | CloudAmbientOcclusionApertureScale | Controls the cone aperture angle over which the sky occlusion due to volumetric clouds is evaluated. | |
| float | CloudAmbientOcclusionExtent | The world space radius of the cloud ambient occlusion map around the camera in kilometers. | |
| float | CloudAmbientOcclusionMapResolutionScale | Scale the cloud ambient occlusion map resolution, base resolution is 512. | |
| float | CloudAmbientOcclusionStrength | The strength of the ambient occlusion, higher value will block more light. | |
| float | Contrast | Contrast S-curve applied to the computed AO. | |
| TObjectPtr< class UTextureCube > | Cubemap | Cubemap to use for sky lighting if SourceType is set to SLS_SpecifiedCubemap. | |
| int32 | CubemapResolution | Maximum resolution for the very top processed cubemap mip. Must be a power of 2. | |
| FSHVectorRGB3 | IrradianceEnvironmentMap | ||
| FRenderCommandFence | IrradianceMapFence | Tracks when the rendering thread has completed its writes to IrradianceEnvironmentMap. | |
| FLinearColor | LowerHemisphereColor | ||
| float | MinOcclusion | Controls the darkest that a fully occluded area can get. | |
| TEnumAsByte< enum EOcclusionCombineMode > | OcclusionCombineMode | Controls how occlusion from Distance Field Ambient Occlusion is combined with Screen Space Ambient Occlusion. | |
| float | OcclusionExponent | Exponent applied to the computed AO. | |
| float | OcclusionMaxDistance | Max distance that the occlusion of one point will affect another. | |
| FColor | OcclusionTint | Tint color on occluded areas, artistic control. | |
| int32 | PreEditCubemapResolution | Shadow copy saved before effects of PostEditChange() to provide option to roll back edit. | |
| TRefCountPtr< FSkyTextureCubeResource > | ProcessedSkyTexture | ||
| FRenderCommandFence | ReleaseResourcesFence | Fence used to track progress of releasing resources on the rendering thread. | |
| FSkyLightSceneProxy * | SceneProxy | ||
| float | SecondsSinceLastCapture | ||
| float | SkyDistanceThreshold | Distance from the sky light at which any geometry should be treated as part of the sky. | |
| float | SourceCubemapAngle | Angle to rotate the source cubemap when SourceType is set to SLS_SpecifiedCubemap. | |
| TEnumAsByte< enum ESkyLightSourceType > | SourceType | Indicates where to get the light contribution from. | |
| FLinearColor | SpecifiedCubemapColorScale |
Constructors
| Type | Name | Description | |
|---|---|---|---|
USkyLightComponent
(
const FObjectInitializer& ObjectInitializer |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | ApplyComponentInstanceData
(
FPrecomputedSkyLightInstanceData* ComponentInstanceData |
||
| void | CaptureEmissiveRadianceEnvironmentCubeMap
(
FSHVectorRGB3& OutIrradianceMap, |
Computes a radiance map using only emissive contribution from the sky light. | |
| FSkyLightSceneProxy * | |||
| FSHVectorRGB3 | |||
| const FTexture * | |||
| bool | Whether sky occlusion is supported by current feature level | ||
| bool | |||
| void | RecaptureSky () |
Recaptures the scene for the skylight. | |
| void | |||
| void | |||
| void | Indicates that the capture needs to recapture the scene, adds it to the recapture queue. | ||
| void | SetCubemap
(
UTextureCube* NewCubemap |
Sets the cubemap used when SourceType is set to SpecifiedCubemap, and causes a skylight update on the next tick. | |
| void | SetCubemapBlend
(
UTextureCube* SourceCubemap, |
Creates sky lighting from a blend between two cubemaps, which is only valid when SourceType is set to SpecifiedCubemap. | |
| void | SetIndirectLightingIntensity
(
float NewIntensity |
||
| void | SetIntensity
(
float NewIntensity |
Set brightness of the light | |
| void | SetLightColor
(
FLinearColor NewLightColor |
Set color of the light | |
| void | SetLowerHemisphereColor
(
const FLinearColor& InLowerHemisphereColor |
||
| void | SetMinOcclusion
(
float InMinOcclusion |
||
| void | SetOcclusionContrast
(
float InOcclusionContrast |
||
| void | SetOcclusionExponent
(
float InOcclusionExponent |
||
| void | SetOcclusionTint
(
const FColor& InTint |
||
| void | SetRealTimeCaptureEnabled
(
bool bNewRealTimeCaptureEnabled |
||
| void | SetSourceCubemapAngle
(
float NewValue |
Sets the angle of the cubemap used when SourceType is set to SpecifiedCubemap and it is non static. | |
| void | SetVolumetricScatteringIntensity
(
float NewIntensity |
||
| void | Fast path for updating light properties that doesn't require a re-register, Which would otherwise cause the scene's static draw lists to be recreated. | ||
| void | |||
| void | UpdateSkyCaptureContents
(
UWorld* WorldToUpdate |
Called each tick to recapture and queued sky captures. | |
| void | UpdateSkyCaptureContentsArray
(
UWorld* WorldToUpdate, |
Called each tick to recapture and queued sky captures. |
Overridden from USceneComponent
| Type | Name | Description | |
|---|---|---|---|
| void | Overridable internal function to respond to changes in the visibility of the component. |
Overridden from UActorComponent
| Type | Name | Description | |
|---|---|---|---|
| void | Function that gets called from within Map_Check to allow this actor component to check itself for any potential errors and register them with map check dialog. | ||
| void | CreateRenderState_Concurrent
(
FRegisterComponentContext* Context |
Used to create any rendering thread information for this component | |
| void | Used to shut down any rendering thread structure for this component | ||
| TStructOnScope< FActorComponentInstanceData > | Called before we throw away components during RerunConstructionScripts, to cache any data we wish to persist across that operation | ||
| void | Called to send a transform update for this component to the rendering thread |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | BeginDestroy () |
Called before destroying the object. | |
| bool | CanEditChange
(
const FProperty* InProperty |
Called by the editor to query whether a property of this object is allowed to be modified. | |
| bool | Called to check if the object is ready for FinishDestroy. | ||
| void | PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Called when a property on this object has been modified externally | |
| void | Called after the C++ constructor and after the properties have been initialized, including those loaded from config. | ||
| void | PostLoad () |
UObject Interface | |
| void | PreEditChange
(
FProperty* PropertyAboutToChange |
This is called when a property is about to be modified externally | |
| void | Handles reading, writing, and reference collecting using FArchive. |
Constants
| Name | Description |
|---|---|
| SkyCapturesToUpdate | List of sky captures that need to be recaptured. |
| SkyCapturesToUpdateBlendDestinations | |
| SkyCapturesToUpdateLock |