The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall

Difference between revisions of "UE3:LightComponent (UT3)"

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
(Auto-generated page)
 
(Talk)
 
Line 217: Line 217:
 
! Value
 
! Value
 
|-
 
|-
| 000000,A
+
| A
|  
+
| 1.0
 
|-
 
|-
| 000000,B
+
| B
|  
+
| 0.0
 
|-
 
|-
| 000000,G
+
| G
|  
+
| 0.0
 
|-
 
|-
 
| R
 
| R

Latest revision as of 07:40, 23 May 2008

UT3 Object >> Component >> ActorComponent >> LightComponent
Package: 
Engine
Direct subclasses:
DirectionalLightComponent, PointLightComponent, SkyLightComponent
This class in other games:
UDK

Copyright 1998-2007 Epic Games, Inc. All Rights Reserved.

Properties[edit]

Property group 'LightComponent'[edit]

bCanAffectDynamicPrimitivesOutsideDynamicChannel[edit]

Type: bool

Modifiers: const

Whether the light can affect dynamic primitives even though the light is not affecting the dynamic channel.

bCastCompositeShadow[edit]

Type: bool

True if the light should cast shadow from primitives which use a composite light environment.

bEnabled[edit]

Type: bool

Modifiers: const

Is this light enabled?

Default value: True

bForceDynamicLight[edit]

Type: bool

Modifiers: const

True if this light should use dynamic shadows for all primitives.

forces the use of shadow volumes/ stencil shadows which avoid potential issues with cubemaps and also avoids any memory used for static shadowing

bOnlyAffectSameAndSpecifiedLevels[edit]

Type: bool

Modifiers: const

Whether to only affect primitives that are in the same level/ share the same GetOutermost() or are in the set of additionally specified ones.

Brightness[edit]

Type: float

Modifiers: const, interp


Default value: 1.0

bUseVolumes[edit]

Type: bool

Whether to use the inclusion/ exclusion volumes.

CastDynamicShadows[edit]

Type: bool

True if the light can be blocked by dynamic shadow casting primitives.

controls whether the light should cast shadows from objects that cannot receive static shadowing

Default value: True

CastShadows[edit]

Type: bool

Modifiers: const

True if the light can be blocked by shadow casting primitives.

controls whether the light should cast shadows

Default value: True

CastStaticShadows[edit]

Type: bool

Modifiers: const

True if the light can be blocked by static shadow casting primitives.

controls whether the light should cast shadows from objects that can receive static shadowing

Default value: True

ExclusionVolumes[edit]

Type: array<Brush>

Modifiers: editoronly, const

Array of volumes used by AffectsBounds if bUseVolumes is set. Light will only affect primitives if they neither touching nor are contained by at least one volume. Exclusion overrides inclusion.

Function[edit]

Type: LightFunction

Modifiers: const, editinline, export


InclusionVolumes[edit]

Type: array<Brush>

Modifiers: editoronly, const

Array of volumes used by AffectsBounds if bUseVolumes is set. Light will only affect primitives if they are touching or are contained by at least one volume. Exclusion overrides inclusion.

LightAffectsClassification[edit]

Type: ELightAffectsClassification

Modifiers: const, editconst

This is the classification of this light. This is used for placing a light for an explicit purpose. Basically you can now have "type" information with lights and understand the intent of why a light was placed. This is very useful for content people getting maps from others and understanding why there is a dynamic affect light in the middle of the world with a radius of 32k! And also useful for being able to do searches such as the following: show me all lights which effect dynamic objects. Now show me the set of lights which are not explicitly set as Dynamic Affecting lights.

LightColor[edit]

Type: Object.Color

Modifiers: const, interp


Default value:

Member Value
A 0
B 255
G 255
R 255

LightEnvironment[edit]

Type: LightEnvironmentComponent

Modifiers: const

The light environment which the light affects. NULL represents an implicit default light environment including all primitives and lights with LightEnvironment=NULL.

LightingChannels[edit]

Type: LightingChannelContainer

Modifiers: const

Lighting channels controlling light/ primitive interaction. Only allows interaction if at least one channel is shared

Default value:

Member Value
bInitialized True
BSP True
CompositeDynamic True
Dynamic True
Static True

LightShadowMode[edit]

Type: ELightShadowMode

Type of shadowing to apply for the light

MaxShadowResolution[edit]

Type: int

override for max square dimensions (in texels) allowed for rendering shadow subject depths 0 defaults to Engine.MaxShadowResolution

MinShadowResolution[edit]

Type: int

override for min dimensions (in texels) allowed for rendering shadow subject depths. 0 defaults to Engine.MinShadowResolution

ModShadowColor[edit]

Type: Object.LinearColor

Shadow color for modulating entire scene

Default value:

Member Value
A 1.0
B 0.0
G 0.0
R 0.0

ModShadowFadeoutExponent[edit]

Type: float

Exponent that controls mod shadow fadeout curve.

Default value: 3.0

ModShadowFadeoutTime[edit]

Type: float

Time since the caster was last visible at which the mod shadow will fade out completely.

OtherLevelsToAffect[edit]

Type: array<name>

Modifiers: const

Array of other levels to affect if bOnlyAffectSameAndSpecifiedLevels is TRUE, own level always implicitly part of array.

ShadowFilterQuality[edit]

Type: EShadowFilterQuality

Quality of shadow buffer filtering to use on this light

ShadowProjectionTechnique[edit]

Type: EShadowProjectionTechnique

Type of shadow projection to use for this light

UseDirectLightMap[edit]

Type: bool

Modifiers: const

Set to True to store the direct flux of this light in a light-map.

Internal variables[edit]

bHasLightEverBeenBuiltIntoLightMap[edit]

Type: bool

Modifiers: const

Whether light has ever been built into a lightmap

ExclusionConvexVolumes[edit]

Type: array<pointer>

Modifiers: native, const

Array of convex exclusion volumes, populated from ExclusionVolumes by PostEditChange.

InclusionConvexVolumes[edit]

Type: array<pointer>

Modifiers: native, const

Array of convex inclusion volumes, populated from InclusionVolumes by PostEditChange.

LightGuid[edit]

Type: Object.Guid

Modifiers: const, duplicatetransient

GUID used to associate a light component with precomputed shadowing information across levels. The GUID changes whenever the light position changes.

LightListIndex[edit]

Type: int

Modifiers: const, native, duplicatetransient

The munged index of this light in the light list

> 0 == static light list

 0 == not part of any light list

< 0 == dynamic light list

LightmapGuid[edit]

Type: Object.Guid

Modifiers: const, duplicatetransient

GUID used to associate a light component with precomputed shadowing information across levels. The GUID changes whenever any of the lighting relevant properties changes.

LightToWorld[edit]

Type: Object.Matrix

Modifiers: native, const, transient


RequireDynamicShadows[edit]

Type: bool

Modifiers: deprecated, const

deprecated: This variable has been replaced with bForceDynamicLight.

SceneInfo[edit]

Type: pointer

Modifiers: native, private, transient, noimport, const


WorldToLight[edit]

Type: Object.Matrix

Modifiers: native, const, transient


Enums[edit]

ELightAffectsClassification[edit]

LAC_USER_SELECTED 
LAC_DYNAMIC_AFFECTING 
LAC_STATIC_AFFECTING 
LAC_DYNAMIC_AND_STATIC_AFFECTING 

ELightShadowMode[edit]

LightShadow_Normal 
Shadows rendered due to absence of light when doing dynamic lighting. Default
LightShadow_Modulate 
Shadows rendered as a fullscreen pass by modulating entire scene by a shadow factor.

EShadowFilterQuality[edit]

SFQ_Low 
SFQ_Medium 
SFQ_High 

EShadowProjectionTechnique[edit]

ShadowProjTech_Default 
Shadow projection is rendered using either PCF/VSM based on global settings
ShadowProjTech_PCF 
Shadow projection is rendered using the PCF (Percentage Closer Filtering) technique. May have heavy banding artifacts
ShadowProjTech_VSM 
Shadow projection is rendered using the VSM (Variance Shadow Map) technique. May have shadow offset and light bleed artifacts
ShadowProjTech_BPCF_Low 
Shadow projection is rendered using the Low quality Branching PCF technique. May have banding and penumbra detection artifacts
ShadowProjTech_BPCF_Medium 
Shadow projection is rendered using the Medium quality Branching PCF technique. May have banding and penumbra detection artifacts
ShadowProjTech_BPCF_High 
Shadow projection is rendered using the High quality Branching PCF technique. May have banding and penumbra detection artifacts

Structs[edit]

LightingChannelContainer[edit]

bool bInitialized 
Whether the lighting channel has been initialized. Used to determine whether UPrimitveComponent::Attach should set defaults.
bool BSP 
bool Static 
bool Dynamic 
bool CompositeDynamic 
bool Skybox 
bool Unnamed_1 
bool Unnamed_2 
bool Unnamed_3 
bool Unnamed_4 
bool Unnamed_5 
bool Unnamed_6 
bool Cinematic_1 
bool Cinematic_2 
bool Cinematic_3 
bool Cinematic_4 
bool Cinematic_5 
bool Cinematic_6 
bool Gameplay_1 
bool Gameplay_2 
bool Gameplay_3 
bool Gameplay_4 

Functions[edit]

Native functions[edit]

GetDirection[edit]

native final function Object.Vector GetDirection ()

Script interface to retrieve light direction.

GetOrigin[edit]

native final function Object.Vector GetOrigin ()

Script interface to retrieve light location.

SetEnabled[edit]

native final function SetEnabled (bool bSetEnabled)

Toggles the light on or off

Parameters:

  • bSetEnabled - TRUE to enable the light or FALSE to disable it

SetLightProperties[edit]

native final function SetLightProperties (optional float NewBrightness, optional Object.Color NewLightColor, optional LightFunction NewLightFunction)

sets Brightness, LightColor, and/or LightFunction

UpdateColorAndBrightness[edit]

native final function UpdateColorAndBrightness ()

Script interface to update the color and brightness on the render thread.

Other instance functions[edit]

OnUpdatePropertyBrightness[edit]

function OnUpdatePropertyBrightness ()

Called from matinee code when Brightness property changes.

OnUpdatePropertyLightColor[edit]

function OnUpdatePropertyLightColor ()

Called from matinee code when LightColor property changes.