ECS Framework API / ComponentStorage
Class: ComponentStorage<T>
Defined in: ECS/Core/ComponentStorage.ts:16
高性能组件存储器
Type Parameters
T
T
extends Component
Constructors
Constructor
new ComponentStorage<
T
>(componentType
):ComponentStorage
<T
>
Defined in: ECS/Core/ComponentStorage.ts:22
Parameters
componentType
ComponentType
<T
>
Returns
ComponentStorage
<T
>
Accessors
size
Get Signature
get size():
number
Defined in: ECS/Core/ComponentStorage.ts:135
获取组件数量
Returns
number
type
Get Signature
get type():
ComponentType
<T
>
Defined in: ECS/Core/ComponentStorage.ts:142
获取组件类型
Returns
ComponentType
<T
>
Methods
addComponent()
addComponent(
entityId
,component
):void
Defined in: ECS/Core/ComponentStorage.ts:36
添加组件
Parameters
entityId
number
实体ID
component
T
组件实例
Returns
void
getComponent()
getComponent(
entityId
):null
|T
Defined in: ECS/Core/ComponentStorage.ts:54
获取组件
Parameters
entityId
number
实体ID
Returns
null
| T
组件实例或null
hasComponent()
hasComponent(
entityId
):boolean
Defined in: ECS/Core/ComponentStorage.ts:64
检查实体是否有此组件
Parameters
entityId
number
实体ID
Returns
boolean
是否有组件
removeComponent()
removeComponent(
entityId
):null
|T
Defined in: ECS/Core/ComponentStorage.ts:73
移除组件
Parameters
entityId
number
实体ID
Returns
null
| T
被移除的组件或null
forEach()
forEach(
callback
):void
Defined in: ECS/Core/ComponentStorage.ts:106
高效遍历所有组件
Parameters
callback
(component
, entityId
, index
) => void
回调函数
Returns
void
getDenseArray()
getDenseArray():
object
Defined in: ECS/Core/ComponentStorage.ts:116
获取所有组件
Returns
object
组件数组
components
components:
T
[]
entityIds
entityIds:
number
[]
clear()
clear():
void
Defined in: ECS/Core/ComponentStorage.ts:126
清空所有组件
Returns
void
getStats()
getStats():
object
Defined in: ECS/Core/ComponentStorage.ts:150
获取存储统计信息
Returns
object
totalSlots
totalSlots:
number
usedSlots
usedSlots:
number
freeSlots
freeSlots:
number
fragmentation
fragmentation:
number