Skip to content

@tripo3d/engine / Entity

Interface: Entity<TObject> ​

Defined in: ecs/entity.ts:16

与一个原生 Object3D 一一对应的通用 ECS 载体。

Type Parameters ​

Type ParameterDefault typeDescription
TObject extends Object3DObject3D通过 createEntity 绑定并保持 exact identity 的 Object3D 类型。

Properties ​

PropertyModifierTypeDescriptionDefined in
childrenreadonlyreadonly Entity<Object3D<Object3DEventMap>>[]当前 Object3D children 对应的 mutation-time COW Entity 投影。ecs/entity.ts:26
destroyedreadonlybooleanEntity 是否已进入不可逆终态。ecs/entity.ts:33
objectreadonlyTObject与该 Entity 一一对应且终身不替换的原生 Object3D。ecs/entity.ts:46
parentreadonlyEntity<Object3D<Object3DEventMap>> | null通过 Object3D parent 与 Engine binding 解析的父 Entity。ecs/entity.ts:60
pointerEventspublicPointerEventsMode | null当前 Entity 的 raycast 候选策略;null 表示没有显式声明。ecs/entity.ts:62
pointerPrioritypublicnumber | null候选 winner 的有限数值业务优先级;null 使用默认 0。ecs/entity.ts:64
worldreadonlyWorld | null由 Object3D Scene ancestry 决定的当前 World membership。ecs/entity.ts:80

Methods ​

add() ​

ts
add(...children): this;

Defined in: ecs/entity.ts:18

Parameters ​

ParameterTypeDescription
...childrenEntity<Object3D<Object3DEventMap>>[]待按顺序加入 object hierarchy 的同 Engine Entities。

Returns ​

this

当前 Entity。


addComponent() ​

ts
addComponent<T>(definition): T;

Defined in: ecs/entity.ts:20

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterTypeDescription
definitionComponentDefinition<T>Component Definition。

Returns ​

T

setup 返回的原始业务 identity。


addScript() ​

ts
addScript<T>(definition): T;

Defined in: ecs/entity.ts:22

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterTypeDescription
definitionScriptDefinition<T>Script Definition。

Returns ​

T

setup 返回的原始业务 identity。


attach() ​

ts
attach(child): this;

Defined in: ecs/entity.ts:24

Parameters ​

ParameterTypeDescription
childEntity保持 world transform 重新挂接的同 Engine Entity。

Returns ​

this

当前 Entity。


clear() ​

ts
clear(): this;

Defined in: ecs/entity.ts:28

移除全部直接子 Entity,但不销毁它们。

Returns ​

this

当前 Entity。


destroy() ​

ts
destroy(): void;

Defined in: ecs/entity.ts:31

递归销毁 Entity 子树并释放固定标准 Three.js 资源;重复调用无副作用。

Returns ​

void


getComponent() ​

ts
getComponent<T>(definition): T | undefined;

Defined in: ecs/entity.ts:35

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterTypeDescription
definitionComponentDefinition<T>Component Definition。

Returns ​

T | undefined

已安装 setup 结果;不存在时返回 undefined。


getScript() ​

ts
getScript<T>(definition): T | undefined;

Defined in: ecs/entity.ts:37

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterTypeDescription
definitionScriptDefinition<T>Script Definition。

Returns ​

T | undefined

已安装 setup 结果;不存在时返回 undefined。


hasComponent() ​

ts
hasComponent(definition): boolean;

Defined in: ecs/entity.ts:39

Parameters ​

ParameterTypeDescription
definitionComponentDefinition<unknown>Component Definition。

Returns ​

boolean

当前 Entity 是否已安装该 identity。


hasScript() ​

ts
hasScript(definition): boolean;

Defined in: ecs/entity.ts:42

Parameters ​

ParameterTypeDescription
definitionScriptDefinition<unknown>Script Definition。

Returns ​

boolean

当前 Entity 是否已安装该 identity。


isScriptEnabled() ​

ts
isScriptEnabled(definition): boolean;

Defined in: ecs/entity.ts:44

Parameters ​

ParameterTypeDescription
definitionScriptDefinition<unknown>Script Definition。

Returns ​

boolean

owner 当前 enabled;不存在时返回 false。


onPointer() ​

ts
onPointer<T>(type, handler): () => void;

Defined in: ecs/entity.ts:54

注册 Entity-local spatial event handler。

Type Parameters ​

Type Parameter
T extends PointerEventType

Parameters ​

ParameterTypeDescription
typeT原生鼠标事件映射后的 Engine event 类型。
handler(event) => void沿 Entity route 同步派发的业务 handler。

Returns ​

幂等 unsubscribe。

() => void


remove() ​

ts
remove(...children): this;

Defined in: ecs/entity.ts:66

Parameters ​

ParameterTypeDescription
...childrenEntity<Object3D<Object3DEventMap>>[]待从当前 parent 移除的直接子 Entities。

Returns ​

this

当前 Entity。


removeComponent() ​

ts
removeComponent(definition): boolean;

Defined in: ecs/entity.ts:68

Parameters ​

ParameterTypeDescription
definitionComponentDefinition<unknown>Component Definition。

Returns ​

boolean

本次是否实际移除了该 owner。


removeFromParent() ​

ts
removeFromParent(): this;

Defined in: ecs/entity.ts:70

从当前 Entity parent 分离;没有 Entity parent 时无副作用。

Returns ​

this

当前 Entity。


removeScript() ​

ts
removeScript(definition): boolean;

Defined in: ecs/entity.ts:72

Parameters ​

ParameterTypeDescription
definitionScriptDefinition<unknown>Script Definition。

Returns ​

boolean

本次是否实际移除了该 owner。


setScriptEnabled() ​

ts
setScriptEnabled(definition, enabled): boolean;

Defined in: ecs/entity.ts:78

Parameters ​

ParameterTypeDescription
definitionScriptDefinition<unknown>Script Definition。
enabledboolean要提交的 enabled。

Returns ​

boolean

找到并处理该 owner 时返回 true,否则返回 false。

基于 MIT 协议发布(内部使用)