xr-frame / Exports / RenderSystem
# Class: RenderSystem
渲染系统,负责整个场景渲染的管理。
# Hierarchy
-
↳
RenderSystem
# Table of contents
# Constructors
# Events
# Properties
# Accessors
# Methods
- changeFeatures
- changeMacros
- disableInstance
- enableInstance
- getData
- getFeature
- getMacro
- setData
- setDataOne
- useRenderGraph
# Constructors
# constructor
• new RenderSystem()
# Inherited from
# Events
# onAdd
▸ onAdd(parent
, data
): void
所挂载的element
被挂载到场景时触发的回调。
# Parameters
Name | Type |
---|---|
parent | Element |
data | IRenderSystemData |
# Returns
void
# Inherited from
# onRelease
▸ onRelease(data
): void
从被挂载的element
上被移除,或是element
被销毁时,触发的回调。
一般用于释放持有的资源。
# Parameters
Name | Type |
---|---|
data | IRenderSystemData |
# Returns
void
# Inherited from
# onRemove
▸ onRemove(parent
, data
): void
所挂载的element
从父节点parent
被移除时,或者自己从element
上被移除时,触发的回调。
一般用于消除功能的运作。
如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。
# Parameters
Name | Type |
---|---|
parent | Element |
data | IRenderSystemData |
# Returns
void
# Inherited from
# onTick
▸ onTick(): void
渲染每帧触发的回调。
# Returns
void
# Inherited from
# onUpdate
▸ onUpdate(data
, preData
): void
数据更新时触发的回调。
# Parameters
Name | Type |
---|---|
data | IRenderSystemData |
preData | IRenderSystemData |
# Returns
void
# Inherited from
# Properties
# priority
• Readonly
priority: number
= 400
自定义组件的更新优先级。
# Overrides
# schema
• Readonly
schema: IComponentSchema
# Overrides
# EVENTS
▪ Static
EVENTS: string
[] = []
# Inherited from
# Accessors
# el
• get
el(): Element
挂载的元素。
# Returns
# renderGraph
• get
renderGraph(): default
<any
>
当前正在使用的RenderGraph。
# Returns
default
<any
>
# scene
• get
scene(): Scene
当前场景。
# Returns
# shadowColor
• get
shadowColor(): number
[]
# Returns
number
[]
# version
• get
version(): number
当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。
# Returns
number
# Methods
# changeFeatures
▸ changeFeatures(features
): void
修改全局渲染特性。
# Parameters
Name | Type |
---|---|
features | Object |
# Returns
void
# changeMacros
▸ changeMacros(macros
): void
修改全局宏信息。
# Parameters
Name | Type |
---|---|
macros | Object |
# Returns
void
# disableInstance
▸ disableInstance(): void
关闭全局GPU实例化。
# Returns
void
# enableInstance
▸ enableInstance(): void
开启全局GPU实例化。
# Returns
void
# getData
▸ getData<T
>(key
): IRenderSystemData
[T
]
获取一个当前值。
# Type parameters
Name | Type |
---|---|
T | extends keyof IRenderSystemData |
# Parameters
Name | Type |
---|---|
key | T |
# Returns
# Inherited from
# getFeature
▸ getFeature(key
): string
| number
| boolean
获取全局渲染特性。
# Parameters
Name | Type |
---|---|
key | string |
# Returns
string
| number
| boolean
# getMacro
▸ getMacro(key
): string
| number
| boolean
获取全局宏信息。
# Parameters
Name | Type |
---|---|
key | string |
# Returns
string
| number
| boolean
# setData
▸ setData(data
): void
不通过xml
而是直接设置data
,注意值的类型需要和schema
中一致。
# Parameters
Name | Type |
---|---|
data | Partial <IRenderSystemData > |
# Returns
void
# Inherited from
# setDataOne
▸ setDataOne<T
>(key
, value
): void
设置一个数据。
# Type parameters
Name | Type |
---|---|
T | extends keyof IRenderSystemData |
# Parameters
Name | Type |
---|---|
key | T |
value | IRenderSystemData [T ] |
# Returns
void
# Inherited from
# useRenderGraph
▸ useRenderGraph(rg
): void
使用某个RenderGraph,默认会使用内置的ForwardBaseRG
。
# Parameters
Name | Type |
---|---|
rg | default <any > |
# Returns
void