# Class: Camera
相机组件,一般被代理到XRCamera元素。
# Hierarchy
-
↳
Camera
# Table of contents
# Constructors
# Events
# Properties
# Accessors
- allowFeatures
- background
- bgStates
- bgStatesClear
- cullMask
- depth
- el
- far
- features
- hdr
- near
- postProcess
- scene
- target
- version
# Methods
- changeProjectMatrix
- changeViewMatrix
- clearBackgroundRenderStates
- convertClipPositionToWorld
- convertWorldPositionToClip
- getData
- setBackgroundRenderStates
- setData
- setDataOne
# Constructors
# constructor
• new Camera()
# Inherited from
# Events
# onAdd
▸ onAdd(parent, data): void
所挂载的element被挂载到场景时触发的回调。
# Parameters
| Name | Type |
|---|---|
parent | Element |
data | ICameraData |
# Returns
void
# Inherited from
# onRelease
▸ onRelease(data): void
从被挂载的element上被移除,或是element被销毁时,触发的回调。
一般用于释放持有的资源。
# Parameters
| Name | Type |
|---|---|
data | ICameraData |
# Returns
void
# Inherited from
# onRemove
▸ onRemove(parent, data): void
所挂载的element从父节点parent被移除时,或者自己从element上被移除时,触发的回调。
一般用于消除功能的运作。
如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。
# Parameters
| Name | Type |
|---|---|
parent | Element |
data | ICameraData |
# Returns
void
# Inherited from
# onTick
▸ onTick(deltaTime, data): void
渲染每帧触发的回调。
# Parameters
| Name | Type |
|---|---|
deltaTime | number |
data | ICameraData |
# Returns
void
# Inherited from
# onUpdate
▸ onUpdate(data, preData): void
数据更新时触发的回调。
# Parameters
| Name | Type |
|---|---|
data | ICameraData |
preData | ICameraData |
# Returns
void
# Inherited from
# Properties
# priority
• Readonly priority: number = 200
自定义组件的更新优先级。
# Overrides
# schema
• Readonly schema: IComponentSchema
详见CameraSchema。
# Overrides
# EVENTS
▪ Static EVENTS: string[] = []
# Inherited from
# Accessors
# allowFeatures
• get allowFeatures(): string[]
# Returns
string[]
# background
• get background(): TCameraBackground
# Returns
# bgStates
• get bgStates(): Object
internal。
# Returns
Object
# bgStatesClear
• get bgStatesClear(): boolean
internal。
# Returns
boolean
# cullMask
• get cullMask(): number
# Returns
number
# depth
• get depth(): number
相机深度。
# Returns
number
# el
• get el(): Element
挂载的元素。
# Returns
# far
• get far(): number
# Returns
number
# features
• get features(): Object
当前渲染特性集合。
# Returns
Object
# hdr
• get hdr(): boolean
# Returns
boolean
# near
• get near(): number
# Returns
number
# postProcess
• get postProcess(): PostProcess[]
# Returns
# scene
• get scene(): Scene
当前场景。
# Returns
# target
• get target(): Transform
# Returns
# version
• get version(): number
当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。
# Returns
number
# Methods
# changeProjectMatrix
▸ changeProjectMatrix(manual, mat4?): void
修改projectMatrix的设置类型。
# Parameters
| Name | Type | Description |
|---|---|---|
manual | boolean | 是否要设置为手动模式。 |
mat4? | Float32Array | Matrix4 | 手动模式下,要设置的值。 |
# Returns
void
# changeViewMatrix
▸ changeViewMatrix(manual, mat4?): void
修改viewMatrix的设置类型。
# Parameters
| Name | Type | Description |
|---|---|---|
manual | boolean | 是否要设置为手动模式。 |
mat4? | Float32Array | Matrix4 | 手动模式下,要设置的值。 |
# Returns
void
# clearBackgroundRenderStates
▸ clearBackgroundRenderStates(): void
清空相机背景渲染状态。
# Returns
void
# convertClipPositionToWorld
▸ convertClipPositionToWorld(clipPos, dst?): Vector3
将齐次裁剪空间转换到世界坐标系位置。
# Parameters
# Returns
# convertWorldPositionToClip
▸ convertWorldPositionToClip(worldPos, dst?): Vector3
将世界坐标系位置转换到齐次裁剪空间。
# Parameters
# Returns
# getData
▸ getData<T>(key): ICameraData[T]
获取一个当前值。
# Type parameters
| Name | Type |
|---|---|
T | extends keyof ICameraData |
# Parameters
| Name | Type |
|---|---|
key | T |
# Returns
ICameraData[T]
# Inherited from
# setBackgroundRenderStates
▸ setBackgroundRenderStates(states): void
修改相机背景的渲染状态。
# Parameters
| Name | Type | Description |
|---|---|---|
states | Object | 同Material.setRenderStates |
# Returns
void
# setData
▸ setData(data): void
不通过xml而是直接设置data,注意值的类型需要和schema中一致。
# Parameters
| Name | Type |
|---|---|
data | Partial<ICameraData> |
# Returns
void
# Inherited from
# setDataOne
▸ setDataOne<T>(key, value): void
设置一个数据。
# Type parameters
| Name | Type |
|---|---|
T | extends keyof ICameraData |
# Parameters
| Name | Type |
|---|---|
key | T |
value | ICameraData[T] |
# Returns
void