xr-frame / Exports / PhysicsSystem
# Class: PhysicsSystem
# Hierarchy
-
↳
PhysicsSystem
# Table of contents
# Constructors
# Events
# Properties
# Accessors
# Methods
# Constructors
# constructor
• new PhysicsSystem()
# Overrides
# Events
# onAdd
▸ onAdd(): void
所挂载的element
被挂载到场景时触发的回调。
# Returns
void
# Inherited from
# onRelease
▸ onRelease(data
): void
从被挂载的element
上被移除,或是element
被销毁时,触发的回调。
一般用于释放持有的资源。
# Parameters
Name | Type |
---|---|
data | IPhysicsSystemData |
# Returns
void
# Inherited from
# onRemove
▸ onRemove(parent
, data
): void
所挂载的element
从父节点parent
被移除时,或者自己从element
上被移除时,触发的回调。
一般用于消除功能的运作。
如果一个组件的元素直接被销毁了,那这个组件就不会经历onRemove而是直接进入onRelease。
# Parameters
Name | Type |
---|---|
parent | Element |
data | IPhysicsSystemData |
# Returns
void
# Inherited from
# onTick
• onTick:
# Inherited from
# onUpdate
▸ onUpdate(data
, preData
): void
数据更新时触发的回调。
# Parameters
Name | Type |
---|---|
data | IPhysicsSystemData |
preData | IPhysicsSystemData |
# Returns
void
# Inherited from
# Properties
# enableSimulation
• enableSimulation: boolean
= false
是否进行物理模拟。
# fixedDeltaTime
• fixedDeltaTime: number
= 0.02
# maxPhysicsDeltaTime
• maxPhysicsDeltaTime: number
= 0.1
# priority
• Readonly
priority: number
自定义组件的更新优先级。
# Inherited from
# schema
• Readonly
schema: IComponentSchema
= {}
自定义组件的schema
。
# Inherited from
# EVENTS
▪ Static
EVENTS: string
[] = []
# Inherited from
# Accessors
# el
• get
el(): Element
挂载的元素。
# Returns
# gravity
• get
gravity(): Vector3
全局重力。
default
[0, -9.8, 0]
# Returns
• set
gravity(v
): void
全局重力。
# Parameters
Name | Type |
---|---|
v | Vector3 |
# Returns
void
# scene
• get
scene(): Scene
当前场景。
# Returns
# version
• get
version(): number
当前版本,每次有数据更新都会增加,可以用作和其他组件合作的依据。
# Returns
number
# Methods
# getData
▸ getData<T
>(key
): IPhysicsSystemData
[T
]
获取一个当前值。
# Type parameters
Name | Type |
---|---|
T | extends never |
# Parameters
Name | Type |
---|---|
key | T |
# Returns
# Inherited from
# ignoreLayerCollision
▸ ignoreLayerCollision(layer1
, layer2
, ignore?
): void
设定某一对layer之间是否会发生碰撞。
# Parameters
Name | Type | Default value | Description |
---|---|---|---|
layer1 | number | undefined | - |
layer2 | number | undefined | - |
ignore | boolean | true | true 表示不碰撞。 |
# Returns
void
# raycast
▸ raycast(desc
): boolean
射线检测,判断给定射线是否与至少一个轮廓相交,并返回与最近的那个轮廓相交的信息。 返回的信息记录在desc.hit里,需要事先创建一个RaycastHit对象来负责接收。
# Parameters
Name | Type |
---|---|
desc | RaycastDesc |
# Returns
boolean
# setData
▸ setData(data
): void
不通过xml
而是直接设置data
,注意值的类型需要和schema
中一致。
# Parameters
Name | Type |
---|---|
data | Partial <IPhysicsSystemData > |
# Returns
void
# Inherited from
# setDataOne
▸ setDataOne<T
>(key
, value
): void
设置一个数据。
# Type parameters
Name | Type |
---|---|
T | extends never |
# Parameters
Name | Type |
---|---|
key | T |
value | IPhysicsSystemData [T ] |
# Returns
void