Skip to content

ECS Framework API v2.1.50


ECS Framework API / Core

Class: Core

Defined in: Core.ts:41

游戏引擎核心类

负责管理游戏的生命周期、场景切换、全局管理器和定时器系统。 提供统一的游戏循环管理。

Example

typescript
// 创建核心实例
const core = Core.create(true);

// 设置场景
Core.scene = new MyScene();

// 在游戏循环中更新(Laya引擎示例)
Laya.timer.frameLoop(1, this, () => {
    const deltaTime = Laya.timer.delta / 1000;
    Core.update(deltaTime);
});

// 调度定时器
Core.schedule(1.0, false, null, (timer) => {
    Core._logger.info("1秒后执行");
});

Properties

paused

static paused: boolean = false

Defined in: Core.ts:47

游戏暂停状态

当设置为true时,游戏循环将暂停执行。


entitySystemsEnabled

static entitySystemsEnabled: boolean

Defined in: Core.ts:78

实体系统启用状态

控制是否启用ECS实体系统功能。


debug

readonly debug: boolean

Defined in: Core.ts:85

调试模式标志

在调试模式下会启用额外的性能监控和错误检查。


_globalManagers

_globalManagers: GlobalManager[] = []

Defined in: Core.ts:93

全局管理器集合

存储所有注册的全局管理器实例。


_timerManager

_timerManager: TimerManager

Defined in: Core.ts:100

定时器管理器

负责管理所有的游戏定时器。


_performanceMonitor

_performanceMonitor: PerformanceMonitor

Defined in: Core.ts:107

性能监控器

监控游戏性能并提供优化建议。


_poolManager

_poolManager: PoolManager

Defined in: Core.ts:114

对象池管理器

管理所有对象池的生命周期。


_ecsAPI?

optional _ecsAPI: ECSFluentAPI

Defined in: Core.ts:121

ECS流式API

提供便捷的ECS操作接口。


_debugManager?

optional _debugManager: DebugManager

Defined in: Core.ts:129

调试管理器

负责收集和发送调试数据。


_worldManager?

optional _worldManager: WorldManager

Defined in: Core.ts:136

World管理器

管理多个World实例,支持多房间/多世界架构。

Accessors

Instance

Get Signature

get static Instance(): Core

Defined in: Core.ts:192

获取核心实例

Returns

Core

全局核心实例


scene

Get Signature

get static scene(): null | IScene

Defined in: Core.ts:201

获取当前活动的场景(属性访问器)

Returns

null | IScene

当前场景实例,如果没有则返回null


ecsAPI

Get Signature

get static ecsAPI(): null | ECSFluentAPI

Defined in: Core.ts:367

获取ECS流式API

Returns

null | ECSFluentAPI

ECS API实例,如果未初始化则返回null


isDebugEnabled

Get Signature

get static isDebugEnabled(): boolean

Defined in: Core.ts:427

检查调试是否启用

Returns

boolean

调试状态

Methods

getScene()

static getScene<T>(): null | T

Defined in: Core.ts:210

获取当前活动的场景(方法调用)

Type Parameters

T

T extends IScene

Returns

null | T

当前场景实例,如果没有则返回null


setScene()

static setScene<T>(scene): T

Defined in: Core.ts:229

设置当前场景

Type Parameters

T

T extends IScene

Parameters

scene

T

要设置的场景实例

Returns

T

设置的场景实例,便于链式调用


create()

static create(config): Core

Defined in: Core.ts:263

创建Core实例

如果实例已存在,则返回现有实例。

Parameters

config

Core配置,也可以直接传入boolean表示debug模式(向后兼容)

boolean | ICoreConfig

Returns

Core

Core实例


update()

static update(deltaTime): void

Defined in: Core.ts:297

更新游戏逻辑

此方法应该在游戏引擎的更新循环中调用。

Parameters

deltaTime

number

外部引擎提供的帧时间间隔(秒)

Returns

void

Example

typescript
// Laya引擎
Laya.timer.frameLoop(1, this, () => {
    const deltaTime = Laya.timer.delta / 1000;
    Core.update(deltaTime);
});

// Cocos Creator
update(deltaTime: number) {
    Core.update(deltaTime);
}

registerGlobalManager()

static registerGlobalManager(manager): void

Defined in: Core.ts:313

注册全局管理器

将管理器添加到全局管理器列表中,并启用它。

Parameters

manager

GlobalManager

要注册的全局管理器

Returns

void


unregisterGlobalManager()

static unregisterGlobalManager(manager): void

Defined in: Core.ts:325

注销全局管理器

从全局管理器列表中移除管理器,并禁用它。

Parameters

manager

GlobalManager

要注销的全局管理器

Returns

void


getGlobalManager()

static getGlobalManager<T>(type): null | T

Defined in: Core.ts:336

获取指定类型的全局管理器

Type Parameters

T

T extends GlobalManager

Parameters

type

(...args) => T

管理器类型构造函数

Returns

null | T

管理器实例,如果未找到则返回null


schedule()

static schedule<TContext>(timeInSeconds, repeats, context?, onTime?): Timer<TContext>

Defined in: Core.ts:355

调度定时器

创建一个定时器,在指定时间后执行回调函数。

Type Parameters

TContext

TContext = unknown

Parameters

timeInSeconds

number

延迟时间(秒)

repeats

boolean = false

是否重复执行,默认为false

context?

TContext

回调函数的上下文,默认为null

onTime?

(timer) => void

定时器触发时的回调函数

Returns

Timer<TContext>

创建的定时器实例


enableDebug()

static enableDebug(config): void

Defined in: Core.ts:376

启用调试功能

Parameters

config

IECSDebugConfig

调试配置

Returns

void


disableDebug()

static disableDebug(): void

Defined in: Core.ts:395

禁用调试功能

Returns

void


getDebugData()

static getDebugData(): unknown

Defined in: Core.ts:414

获取调试数据

Returns

unknown

当前调试数据,如果调试未启用则返回null


getWorldManager()

static getWorldManager(config?): WorldManager

Defined in: Core.ts:439

获取WorldManager实例

Parameters

config?

Partial<IWorldManagerConfig>

可选的WorldManager配置,用于覆盖默认配置

Returns

WorldManager

WorldManager实例,如果未初始化则自动创建


enableWorldManager()

static enableWorldManager(config?): WorldManager

Defined in: Core.ts:469

启用World管理

显式启用World功能,用于多房间/多世界架构

Parameters

config?

Partial<IWorldManagerConfig>

可选的WorldManager配置,用于覆盖默认配置

Returns

WorldManager


onSceneChanged()

onSceneChanged(): void

Defined in: Core.ts:504

场景切换回调

在场景切换时调用,用于重置时间系统等。

Returns

void


initialize()

protected initialize(): void

Defined in: Core.ts:528

初始化核心系统

执行核心系统的初始化逻辑。

Returns

void

Released under the MIT License.