Skip to content

Home > @esengine/ecs-framework-monorepo > WorldManager

WorldManager class

World管理器 - 管理所有World实例

WorldManager是全局单例,负责管理所有World的生命周期。 每个World都是独立的ECS环境,可以包含多个Scene。

Signature:

typescript
export declare class WorldManager

Example

typescript
// 获取全局WorldManager
const worldManager = WorldManager.getInstance();

// 创建游戏房间World
const roomWorld = worldManager.createWorld('room_001', {
    name: 'GameRoom_001',
    maxScenes: 5
});

// 在游戏循环中更新所有World
worldManager.updateAll(deltaTime);

Properties

Property

Modifiers

Type

Description

activeWorldCount

readonly

number

获取激活World数量

config

readonly

IWorldManagerConfig

获取配置

isRunning

readonly

boolean

检查是否正在运行

worldCount

readonly

number

获取World总数

Methods

Method

Modifiers

Description

cleanup()

清理空World

createWorld(worldId, config)

创建新World

destroy()

销毁WorldManager

findWorldByName(name)

根据名称查找World

findWorlds(predicate)

查找满足条件的World

getActiveWorlds()

获取所有激活的World 注意:此方法供Core.update()使用

getAllWorlds()

获取所有World

getDetailedStatus()

获取详细状态信息

getInstance(config)

static

获取WorldManager单例实例

getStats()

获取WorldManager统计信息

getWorld(worldId)

获取World

getWorldIds()

获取所有World ID

isWorldActive(worldId)

检查World是否激活

removeWorld(worldId)

移除World

reset()

static

重置WorldManager实例(主要用于测试)

setWorldActive(worldId, active)

设置World激活状态

startAll()

启动所有World

stopAll()

停止所有World

基于 MIT 许可证发布