更新文档

This commit is contained in:
YHH
2025-10-11 10:48:24 +08:00
parent 62f895efe0
commit 66aa9f4f20
3 changed files with 44 additions and 10 deletions

View File

@@ -314,8 +314,8 @@ import { Core, WorldManager } from '@esengine/ecs-framework';
// 初始化Core // 初始化Core
Core.create({ debug: true }); Core.create({ debug: true });
// 创建世界管理器(手动管理 // 从服务容器获取 WorldManagerCore 已自动创建并注册
const worldManager = new WorldManager(); const worldManager = Core.services.resolve(WorldManager);
// 创建多个独立的游戏世界 // 创建多个独立的游戏世界
const room1 = worldManager.createWorld('room_001'); const room1 = worldManager.createWorld('room_001');

View File

@@ -296,13 +296,13 @@ ECS Framework 提供了灵活的场景管理架构,适用于不同规模的应
适用于 95% 的游戏应用(单人游戏、简单多人游戏、移动游戏等): 适用于 95% 的游戏应用(单人游戏、简单多人游戏、移动游戏等):
```typescript ```typescript
import { Core, SceneManager } from '@esengine/ecs-framework'; import { Core, Scene, SceneManager } from '@esengine/ecs-framework';
// 初始化Core全局服务 // 初始化Core全局服务
Core.create({ debug: true }); Core.create({ debug: true });
// 创建场景管理器 // 从服务容器获取 SceneManagerCore 已自动创建并注册)
const sceneManager = new SceneManager(); const sceneManager = Core.services.resolve(SceneManager);
// 创建游戏场景 // 创建游戏场景
class GameScene extends Scene { class GameScene extends Scene {
@@ -355,8 +355,8 @@ import { Core, WorldManager } from '@esengine/ecs-framework';
// 初始化Core全局服务 // 初始化Core全局服务
Core.create({ debug: true }); Core.create({ debug: true });
// 创建世界管理器 // 从服务容器获取 WorldManagerCore 已自动创建并注册)
const worldManager = new WorldManager(); const worldManager = Core.services.resolve(WorldManager);
// 创建多个独立的游戏世界 // 创建多个独立的游戏世界
const gameWorld = worldManager.createWorld('game', { const gameWorld = worldManager.createWorld('game', {
@@ -435,7 +435,7 @@ ECS Framework 的架构层次清晰,职责分明:
import { Core, SceneManager } from '@esengine/ecs-framework'; import { Core, SceneManager } from '@esengine/ecs-framework';
Core.create({ debug: true }); Core.create({ debug: true });
const sceneManager = new SceneManager(); const sceneManager = Core.services.resolve(SceneManager);
sceneManager.setScene(new GameScene()); sceneManager.setScene(new GameScene());
// 游戏循环 // 游戏循环
@@ -448,7 +448,7 @@ function gameLoop(deltaTime: number) {
import { Core, WorldManager } from '@esengine/ecs-framework'; import { Core, WorldManager } from '@esengine/ecs-framework';
Core.create({ debug: true }); Core.create({ debug: true });
const worldManager = new WorldManager(); const worldManager = Core.services.resolve(WorldManager);
const world = worldManager.createWorld('gameWorld'); const world = worldManager.createWorld('gameWorld');
const scene = world.createScene('mainScene', new GameScene()); const scene = world.createScene('mainScene', new GameScene());
world.setSceneActive('mainScene', true); world.setSceneActive('mainScene', true);

View File

@@ -196,15 +196,49 @@ const fps = monitor.getFPS();
### SceneManager ### SceneManager
场景管理器,管理场景生命周期: 场景管理器,管理场景应用的场景生命周期:
```typescript ```typescript
const sceneManager = Core.services.resolve(SceneManager); const sceneManager = Core.services.resolve(SceneManager);
// 设置当前场景
sceneManager.setScene(new GameScene());
// 获取当前场景 // 获取当前场景
const currentScene = sceneManager.currentScene; const currentScene = sceneManager.currentScene;
// 延迟切换场景
sceneManager.loadScene(new MenuScene());
// 更新场景
sceneManager.update();
``` ```
### WorldManager
世界管理器,管理多个独立的 World 实例(高级用例):
```typescript
const worldManager = Core.services.resolve(WorldManager);
// 创建独立的游戏世界
const gameWorld = worldManager.createWorld('game_room_001', {
name: 'GameRoom',
maxScenes: 5
});
// 在World中创建场景
const scene = gameWorld.createScene('battle', new BattleScene());
gameWorld.setSceneActive('battle', true);
// 更新所有World
worldManager.updateAll();
```
**适用场景**:
- SceneManager: 适用于 95% 的游戏(单人游戏、简单多人游戏)
- WorldManager: 适用于 MMO 服务器、游戏房间系统等需要完全隔离的多世界应用
### PoolManager ### PoolManager
对象池管理器,管理所有对象池: 对象池管理器,管理所有对象池: