Light
xr-frame / Exports / Light
# Class: Light
灯光组件,一般被代理到XRLight元素。
注意整个场景只能存在一个ambient
光源,第一个directional
光源将会成为主光源,也只有这个光源能够产生阴影。
目前最多支持四个追加光源。
# Hierarchy
Component
<ILightData
>↳
Light
# Table of contents
# Constructors
- constructor
# Events
- onAdd
- onRelease
- onRemove
- onTick
- onUpdate
# Properties
- priority
- schema
- EVENTS
# Accessors
- castShadow
- color
- el
- innerConeAngle
- intensity
- outerConeAngle
- range
- scene
- shadowBias
- shadowDistance
- type
- version
# Methods
- getData
- setData
- setDataOne
# Constructors
# constructor
• new Light()
# Inherited from
Component.constructor
# Events
# onAdd
▸ onAdd(parent
, data
): void
所挂载的element
被挂载到场景时触发的回调。
# Parameters
# Returns
void
# Inherited from
Component.onAdd
# onRelease
▸ onRelease(data
): void
从被挂载的element
上被移除,或是element
被销毁时,触发的回调。
一般用于释放持有的资源。
# Parameters
# Returns
void
# Inherited from
Component.onRelease
# onRemove
▸ onRemove(parent
, data
): void
所挂载的element
从父节点parent
被移除时,或者自己从element
上被移除时,触发的回调。
一般用于消除功能的运作。
如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。
# Parameters
# Returns
void
# Inherited from
Component.onRemove
# onTick
▸ onTick(deltaTime
, data
): void
渲染每帧触发的回调。
# Parameters
# Returns
void
# Inherited from
Component.onTick
# onUpdate
▸ onUpdate(data
, preData
): void
数据更新时触发的回调。
# Parameters
# Returns
void
# Inherited from
Component.onUpdate
# Properties
# priority
• Readonly
priority: number
= 200
自定义组件的更新优先级。
# Overrides
Component.priority
# schema
• Readonly
schema: IComponentSchema
详见LightSchema。
# Overrides
Component.schema
# EVENTS
▪ Static
EVENTS: string
[] = []
# Inherited from
Component.EVENTS
# Accessors
# castShadow
• get
castShadow(): boolean
# Returns
boolean
# color
• get
color(): number
[]
# Returns
number
[]
# el
• get
el(): Element
挂载的元素。
# Returns
Element
# innerConeAngle
• get
innerConeAngle(): number
# Returns
number
# intensity
• get
intensity(): number
# Returns
number
# outerConeAngle
• get
outerConeAngle(): number
# Returns
number
# range
• get
range(): number
# Returns
number
# scene
• get
scene(): Scene
当前场景。
# Returns
Scene
# shadowBias
• get
shadowBias(): number
# Returns
number
# shadowDistance
• get
shadowDistance(): number
# Returns
number
# type
• get
type(): ELightType
# Returns
ELightType
# version
• get
version(): number
当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。
# Returns
number
# Methods
# getData
▸ getData<T
>(key
): ILightData
[T
]
获取一个当前值。
# Type parameters
# Parameters
# Returns
ILightData
[T
]
# Inherited from
Component.getData
# setData
▸ setData(data
): void
不通过xml
而是直接设置data
,注意值的类型需要和schema
中一致。
# Parameters
# Returns
void
# Inherited from
Component.setData
# setDataOne
▸ setDataOne<T
>(key
, value
): void
设置一个数据。
# Type parameters
# Parameters
# Returns
void
# Inherited from
Component.setDataOne