@esengine/ecs-framework 2.0.6 → 2.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/Core.js +21 -17
- package/bin/Core.js.map +1 -1
- package/bin/ECS/Component.js +5 -1
- package/bin/ECS/Component.js.map +1 -1
- package/bin/ECS/Components/IUpdatable.js +7 -2
- package/bin/ECS/Components/IUpdatable.js.map +1 -1
- package/bin/ECS/Components/SceneComponent.js +5 -1
- package/bin/ECS/Components/SceneComponent.js.map +1 -1
- package/bin/ECS/Core/BitMaskOptimizer.d.ts +75 -0
- package/bin/ECS/Core/BitMaskOptimizer.d.ts.map +1 -0
- package/bin/ECS/Core/BitMaskOptimizer.js +165 -0
- package/bin/ECS/Core/BitMaskOptimizer.js.map +1 -0
- package/bin/ECS/Core/ComponentPool.d.ts +72 -0
- package/bin/ECS/Core/ComponentPool.d.ts.map +1 -0
- package/bin/ECS/Core/ComponentPool.js +128 -0
- package/bin/ECS/Core/ComponentPool.js.map +1 -0
- package/bin/ECS/Core/ComponentStorage.js +9 -3
- package/bin/ECS/Core/ComponentStorage.js.map +1 -1
- package/bin/ECS/Core/EventSystem.js +12 -6
- package/bin/ECS/Core/EventSystem.js.map +1 -1
- package/bin/ECS/Core/FluentAPI.js +24 -17
- package/bin/ECS/Core/FluentAPI.js.map +1 -1
- package/bin/ECS/Core/IndexUpdateBatcher.d.ts +100 -0
- package/bin/ECS/Core/IndexUpdateBatcher.d.ts.map +1 -0
- package/bin/ECS/Core/IndexUpdateBatcher.js +223 -0
- package/bin/ECS/Core/IndexUpdateBatcher.js.map +1 -0
- package/bin/ECS/Core/QuerySystem.d.ts +292 -444
- package/bin/ECS/Core/QuerySystem.d.ts.map +1 -1
- package/bin/ECS/Core/QuerySystem.js +661 -1075
- package/bin/ECS/Core/QuerySystem.js.map +1 -1
- package/bin/ECS/CoreEvents.js +5 -2
- package/bin/ECS/CoreEvents.js.map +1 -1
- package/bin/ECS/Entity.js +17 -12
- package/bin/ECS/Entity.js.map +1 -1
- package/bin/ECS/Scene.d.ts +18 -2
- package/bin/ECS/Scene.d.ts.map +1 -1
- package/bin/ECS/Scene.js +67 -19
- package/bin/ECS/Scene.js.map +1 -1
- package/bin/ECS/Systems/EntitySystem.js +9 -5
- package/bin/ECS/Systems/EntitySystem.js.map +1 -1
- package/bin/ECS/Systems/IntervalSystem.js +8 -4
- package/bin/ECS/Systems/IntervalSystem.js.map +1 -1
- package/bin/ECS/Systems/PassiveSystem.js +6 -2
- package/bin/ECS/Systems/PassiveSystem.js.map +1 -1
- package/bin/ECS/Systems/ProcessingSystem.js +6 -2
- package/bin/ECS/Systems/ProcessingSystem.js.map +1 -1
- package/bin/ECS/Systems/index.js +11 -4
- package/bin/ECS/Systems/index.js.map +1 -1
- package/bin/ECS/Utils/Bits.js +5 -1
- package/bin/ECS/Utils/Bits.js.map +1 -1
- package/bin/ECS/Utils/ComponentTypeManager.js +8 -4
- package/bin/ECS/Utils/ComponentTypeManager.js.map +1 -1
- package/bin/ECS/Utils/EntityList.js +5 -1
- package/bin/ECS/Utils/EntityList.js.map +1 -1
- package/bin/ECS/Utils/EntityProcessorList.js +5 -1
- package/bin/ECS/Utils/EntityProcessorList.js.map +1 -1
- package/bin/ECS/Utils/IdentifierPool.js +5 -1
- package/bin/ECS/Utils/IdentifierPool.js.map +1 -1
- package/bin/ECS/Utils/Matcher.js +8 -4
- package/bin/ECS/Utils/Matcher.js.map +1 -1
- package/bin/ECS/Utils/index.js +15 -6
- package/bin/ECS/Utils/index.js.map +1 -1
- package/bin/ECS/index.js +27 -6
- package/bin/ECS/index.js.map +1 -1
- package/bin/Testing/Performance/benchmark.d.ts +6 -0
- package/bin/Testing/Performance/benchmark.d.ts.map +1 -0
- package/bin/Testing/Performance/benchmark.js +639 -0
- package/bin/Testing/Performance/benchmark.js.map +1 -0
- package/bin/Testing/Unit/bitmask-optimizer.test.d.ts +2 -0
- package/bin/Testing/Unit/bitmask-optimizer.test.d.ts.map +1 -0
- package/bin/Testing/Unit/bitmask-optimizer.test.js +164 -0
- package/bin/Testing/Unit/bitmask-optimizer.test.js.map +1 -0
- package/bin/Testing/Unit/component-pool.test.d.ts +5 -0
- package/bin/Testing/Unit/component-pool.test.d.ts.map +1 -0
- package/bin/Testing/Unit/component-pool.test.js +149 -0
- package/bin/Testing/Unit/component-pool.test.js.map +1 -0
- package/bin/Testing/test-runner.d.ts +51 -0
- package/bin/Testing/test-runner.d.ts.map +1 -0
- package/bin/Testing/test-runner.js +159 -0
- package/bin/Testing/test-runner.js.map +1 -0
- package/bin/Types/index.js +7 -4
- package/bin/Types/index.js.map +1 -1
- package/bin/Utils/Emitter.js +7 -2
- package/bin/Utils/Emitter.js.map +1 -1
- package/bin/Utils/Extensions/NumberExtension.js +5 -1
- package/bin/Utils/Extensions/NumberExtension.js.map +1 -1
- package/bin/Utils/Extensions/TypeUtils.js +5 -1
- package/bin/Utils/Extensions/TypeUtils.js.map +1 -1
- package/bin/Utils/Extensions/index.js +7 -2
- package/bin/Utils/Extensions/index.js.map +1 -1
- package/bin/Utils/GlobalManager.js +5 -1
- package/bin/Utils/GlobalManager.js.map +1 -1
- package/bin/Utils/PerformanceMonitor.js +7 -3
- package/bin/Utils/PerformanceMonitor.js.map +1 -1
- package/bin/Utils/Pool.js +9 -3
- package/bin/Utils/Pool.js.map +1 -1
- package/bin/Utils/Time.js +5 -1
- package/bin/Utils/Time.js.map +1 -1
- package/bin/Utils/Timers/ITimer.js +2 -1
- package/bin/Utils/Timers/Timer.js +7 -3
- package/bin/Utils/Timers/Timer.js.map +1 -1
- package/bin/Utils/Timers/TimerManager.js +8 -4
- package/bin/Utils/Timers/TimerManager.js.map +1 -1
- package/bin/Utils/WasmCore.d.ts +234 -0
- package/bin/Utils/WasmCore.d.ts.map +1 -0
- package/bin/Utils/WasmCore.js +634 -0
- package/bin/Utils/WasmCore.js.map +1 -0
- package/bin/Utils/index.d.ts +10 -0
- package/bin/Utils/index.d.ts.map +1 -1
- package/bin/Utils/index.js +36 -5
- package/bin/Utils/index.js.map +1 -1
- package/bin/index.d.ts +1 -2
- package/bin/index.d.ts.map +1 -1
- package/bin/index.js +42 -14
- package/bin/index.js.map +1 -1
- package/package.json +58 -74
- package/bin/Utils/AccelerationProvider.d.ts +0 -192
- package/bin/Utils/AccelerationProvider.d.ts.map +0 -1
- package/bin/Utils/AccelerationProvider.js +0 -261
- package/bin/Utils/AccelerationProvider.js.map +0 -1
- package/bin/Utils/WasmBridge.d.ts +0 -152
- package/bin/Utils/WasmBridge.d.ts.map +0 -1
- package/bin/Utils/WasmBridge.js +0 -336
- package/bin/Utils/WasmBridge.js.map +0 -1
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ComponentStorageManager = exports.ComponentStorage = exports.ComponentRegistry = void 0;
|
|
1
4
|
/**
|
|
2
5
|
* 组件注册表
|
|
3
6
|
* 管理组件类型的位掩码分配
|
|
4
7
|
*/
|
|
5
|
-
|
|
8
|
+
class ComponentRegistry {
|
|
6
9
|
/**
|
|
7
10
|
* 注册组件类型并分配位掩码
|
|
8
11
|
* @param componentType 组件类型
|
|
@@ -59,6 +62,7 @@ export class ComponentRegistry {
|
|
|
59
62
|
return new Map(this.componentTypes);
|
|
60
63
|
}
|
|
61
64
|
}
|
|
65
|
+
exports.ComponentRegistry = ComponentRegistry;
|
|
62
66
|
ComponentRegistry.componentTypes = new Map();
|
|
63
67
|
ComponentRegistry.nextBitIndex = 0;
|
|
64
68
|
ComponentRegistry.maxComponents = 64; // 支持最多64种组件类型
|
|
@@ -66,7 +70,7 @@ ComponentRegistry.maxComponents = 64; // 支持最多64种组件类型
|
|
|
66
70
|
* 高性能组件存储器
|
|
67
71
|
* 使用SoA(Structure of Arrays)模式存储组件
|
|
68
72
|
*/
|
|
69
|
-
|
|
73
|
+
class ComponentStorage {
|
|
70
74
|
constructor(componentType) {
|
|
71
75
|
this.components = [];
|
|
72
76
|
this.entityToIndex = new Map();
|
|
@@ -230,11 +234,12 @@ export class ComponentStorage {
|
|
|
230
234
|
};
|
|
231
235
|
}
|
|
232
236
|
}
|
|
237
|
+
exports.ComponentStorage = ComponentStorage;
|
|
233
238
|
/**
|
|
234
239
|
* 组件存储管理器
|
|
235
240
|
* 管理所有组件类型的存储器
|
|
236
241
|
*/
|
|
237
|
-
|
|
242
|
+
class ComponentStorageManager {
|
|
238
243
|
constructor() {
|
|
239
244
|
this.storages = new Map();
|
|
240
245
|
}
|
|
@@ -343,4 +348,5 @@ export class ComponentStorageManager {
|
|
|
343
348
|
this.storages.clear();
|
|
344
349
|
}
|
|
345
350
|
}
|
|
351
|
+
exports.ComponentStorageManager = ComponentStorageManager;
|
|
346
352
|
//# sourceMappingURL=ComponentStorage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentStorage.js","sourceRoot":"","sources":["../../../src/ECS/Core/ComponentStorage.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,
|
|
1
|
+
{"version":3,"file":"ComponentStorage.js","sourceRoot":"","sources":["../../../src/ECS/Core/ComponentStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GlobalEventSystem = exports.TypeSafeEventSystem = void 0;
|
|
4
|
+
exports.EventListener = EventListener;
|
|
5
|
+
exports.AsyncEventListener = AsyncEventListener;
|
|
1
6
|
/**
|
|
2
7
|
* 类型安全的高性能事件系统
|
|
3
8
|
* 支持同步/异步事件、优先级、批处理等功能
|
|
4
9
|
*/
|
|
5
|
-
|
|
10
|
+
class TypeSafeEventSystem {
|
|
6
11
|
constructor() {
|
|
7
12
|
this.listeners = new Map();
|
|
8
13
|
this.stats = new Map();
|
|
@@ -438,23 +443,24 @@ export class TypeSafeEventSystem {
|
|
|
438
443
|
};
|
|
439
444
|
}
|
|
440
445
|
}
|
|
446
|
+
exports.TypeSafeEventSystem = TypeSafeEventSystem;
|
|
441
447
|
/**
|
|
442
448
|
* 全局事件系统实例
|
|
443
449
|
*/
|
|
444
|
-
|
|
450
|
+
exports.GlobalEventSystem = new TypeSafeEventSystem();
|
|
445
451
|
/**
|
|
446
452
|
* 事件装饰器 - 用于自动注册事件监听器
|
|
447
453
|
* @param eventType 事件类型
|
|
448
454
|
* @param config 监听器配置
|
|
449
455
|
*/
|
|
450
|
-
|
|
456
|
+
function EventListener(eventType, config = {}) {
|
|
451
457
|
return function (target, propertyKey, descriptor) {
|
|
452
458
|
const originalMethod = descriptor.value;
|
|
453
459
|
// 在类实例化时自动注册监听器
|
|
454
460
|
const initMethod = target.constructor.prototype.initEventListeners || function () { };
|
|
455
461
|
target.constructor.prototype.initEventListeners = function () {
|
|
456
462
|
initMethod.call(this);
|
|
457
|
-
GlobalEventSystem.on(eventType, originalMethod.bind(this), config);
|
|
463
|
+
exports.GlobalEventSystem.on(eventType, originalMethod.bind(this), config);
|
|
458
464
|
};
|
|
459
465
|
};
|
|
460
466
|
}
|
|
@@ -463,13 +469,13 @@ export function EventListener(eventType, config = {}) {
|
|
|
463
469
|
* @param eventType 事件类型
|
|
464
470
|
* @param config 监听器配置
|
|
465
471
|
*/
|
|
466
|
-
|
|
472
|
+
function AsyncEventListener(eventType, config = {}) {
|
|
467
473
|
return function (target, propertyKey, descriptor) {
|
|
468
474
|
const originalMethod = descriptor.value;
|
|
469
475
|
const initMethod = target.constructor.prototype.initEventListeners || function () { };
|
|
470
476
|
target.constructor.prototype.initEventListeners = function () {
|
|
471
477
|
initMethod.call(this);
|
|
472
|
-
GlobalEventSystem.onAsync(eventType, originalMethod.bind(this), config);
|
|
478
|
+
exports.GlobalEventSystem.onAsync(eventType, originalMethod.bind(this), config);
|
|
473
479
|
};
|
|
474
480
|
};
|
|
475
481
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventSystem.js","sourceRoot":"","sources":["../../../src/ECS/Core/EventSystem.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EventSystem.js","sourceRoot":"","sources":["../../../src/ECS/Core/EventSystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ECS = exports.EntityBatchOperator = exports.ECSFluentAPI = exports.ComponentBuilder = exports.SceneBuilder = exports.EntityBuilder = void 0;
|
|
4
|
+
exports.createECSAPI = createECSAPI;
|
|
5
|
+
exports.initializeECS = initializeECS;
|
|
6
|
+
const Entity_1 = require("../Entity");
|
|
7
|
+
const Scene_1 = require("../Scene");
|
|
8
|
+
const QuerySystem_1 = require("./QuerySystem");
|
|
3
9
|
/**
|
|
4
10
|
* 实体构建器 - 提供流式API创建和配置实体
|
|
5
11
|
*/
|
|
6
|
-
|
|
12
|
+
class EntityBuilder {
|
|
7
13
|
constructor(scene, storageManager) {
|
|
8
14
|
this.scene = scene;
|
|
9
15
|
this.storageManager = storageManager;
|
|
10
|
-
this.entity = new Entity("", scene.identifierPool.checkOut());
|
|
16
|
+
this.entity = new Entity_1.Entity("", scene.identifierPool.checkOut());
|
|
11
17
|
}
|
|
12
18
|
/**
|
|
13
19
|
* 设置实体名称
|
|
@@ -172,12 +178,13 @@ export class EntityBuilder {
|
|
|
172
178
|
return newBuilder;
|
|
173
179
|
}
|
|
174
180
|
}
|
|
181
|
+
exports.EntityBuilder = EntityBuilder;
|
|
175
182
|
/**
|
|
176
183
|
* 场景构建器 - 提供流式API创建和配置场景
|
|
177
184
|
*/
|
|
178
|
-
|
|
185
|
+
class SceneBuilder {
|
|
179
186
|
constructor() {
|
|
180
|
-
this.scene = new Scene();
|
|
187
|
+
this.scene = new Scene_1.Scene();
|
|
181
188
|
}
|
|
182
189
|
/**
|
|
183
190
|
* 设置场景名称
|
|
@@ -248,10 +255,11 @@ export class SceneBuilder {
|
|
|
248
255
|
return this.scene;
|
|
249
256
|
}
|
|
250
257
|
}
|
|
258
|
+
exports.SceneBuilder = SceneBuilder;
|
|
251
259
|
/**
|
|
252
260
|
* 组件构建器 - 提供流式API创建组件
|
|
253
261
|
*/
|
|
254
|
-
|
|
262
|
+
class ComponentBuilder {
|
|
255
263
|
constructor(componentClass, ...args) {
|
|
256
264
|
this.component = new componentClass(...args);
|
|
257
265
|
}
|
|
@@ -295,11 +303,12 @@ export class ComponentBuilder {
|
|
|
295
303
|
return this.component;
|
|
296
304
|
}
|
|
297
305
|
}
|
|
306
|
+
exports.ComponentBuilder = ComponentBuilder;
|
|
298
307
|
/**
|
|
299
308
|
* ECS流式API主入口
|
|
300
309
|
* 提供统一的流式接口
|
|
301
310
|
*/
|
|
302
|
-
|
|
311
|
+
class ECSFluentAPI {
|
|
303
312
|
constructor(scene, querySystem, eventSystem) {
|
|
304
313
|
this.scene = scene;
|
|
305
314
|
this.querySystem = querySystem;
|
|
@@ -333,7 +342,7 @@ export class ECSFluentAPI {
|
|
|
333
342
|
* @returns 查询构建器
|
|
334
343
|
*/
|
|
335
344
|
query() {
|
|
336
|
-
return this.querySystem
|
|
345
|
+
return new QuerySystem_1.QueryBuilder(this.querySystem);
|
|
337
346
|
}
|
|
338
347
|
/**
|
|
339
348
|
* 查找实体(简化版)
|
|
@@ -432,11 +441,12 @@ export class ECSFluentAPI {
|
|
|
432
441
|
};
|
|
433
442
|
}
|
|
434
443
|
}
|
|
444
|
+
exports.ECSFluentAPI = ECSFluentAPI;
|
|
435
445
|
/**
|
|
436
446
|
* 实体批量操作器
|
|
437
447
|
* 提供对多个实体的批量操作
|
|
438
448
|
*/
|
|
439
|
-
|
|
449
|
+
class EntityBatchOperator {
|
|
440
450
|
constructor(entities) {
|
|
441
451
|
this.entities = entities;
|
|
442
452
|
}
|
|
@@ -516,6 +526,7 @@ export class EntityBatchOperator {
|
|
|
516
526
|
return this.entities.length;
|
|
517
527
|
}
|
|
518
528
|
}
|
|
529
|
+
exports.EntityBatchOperator = EntityBatchOperator;
|
|
519
530
|
/**
|
|
520
531
|
* 创建ECS流式API实例
|
|
521
532
|
* @param scene 场景
|
|
@@ -523,20 +534,16 @@ export class EntityBatchOperator {
|
|
|
523
534
|
* @param eventSystem 事件系统
|
|
524
535
|
* @returns ECS流式API实例
|
|
525
536
|
*/
|
|
526
|
-
|
|
537
|
+
function createECSAPI(scene, querySystem, eventSystem) {
|
|
527
538
|
return new ECSFluentAPI(scene, querySystem, eventSystem);
|
|
528
539
|
}
|
|
529
|
-
/**
|
|
530
|
-
* 全局ECS流式API实例(需要在使用前初始化)
|
|
531
|
-
*/
|
|
532
|
-
export let ECS;
|
|
533
540
|
/**
|
|
534
541
|
* 初始化全局ECS API
|
|
535
542
|
* @param scene 场景
|
|
536
543
|
* @param querySystem 查询系统
|
|
537
544
|
* @param eventSystem 事件系统
|
|
538
545
|
*/
|
|
539
|
-
|
|
540
|
-
ECS = createECSAPI(scene, querySystem, eventSystem);
|
|
546
|
+
function initializeECS(scene, querySystem, eventSystem) {
|
|
547
|
+
exports.ECS = createECSAPI(scene, querySystem, eventSystem);
|
|
541
548
|
}
|
|
542
549
|
//# sourceMappingURL=FluentAPI.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FluentAPI.js","sourceRoot":"","sources":["../../../src/ECS/Core/FluentAPI.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FluentAPI.js","sourceRoot":"","sources":["../../../src/ECS/Core/FluentAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { Entity } from '../Entity';
|
|
2
|
+
/**
|
|
3
|
+
* 索引更新操作类型
|
|
4
|
+
*/
|
|
5
|
+
export declare enum IndexUpdateType {
|
|
6
|
+
ADD_ENTITY = "add_entity",
|
|
7
|
+
REMOVE_ENTITY = "remove_entity",
|
|
8
|
+
UPDATE_ENTITY = "update_entity"
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 索引更新操作
|
|
12
|
+
*/
|
|
13
|
+
export interface IndexUpdateOperation {
|
|
14
|
+
type: IndexUpdateType;
|
|
15
|
+
entity: Entity;
|
|
16
|
+
oldMask?: bigint;
|
|
17
|
+
newMask?: bigint;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* 延迟索引更新器,用于批量更新查询索引以提高性能
|
|
21
|
+
*/
|
|
22
|
+
export declare class IndexUpdateBatcher {
|
|
23
|
+
private pendingOperations;
|
|
24
|
+
private isProcessing;
|
|
25
|
+
private batchSize;
|
|
26
|
+
private flushTimeout;
|
|
27
|
+
private flushDelay;
|
|
28
|
+
/**
|
|
29
|
+
* 添加索引更新操作
|
|
30
|
+
*/
|
|
31
|
+
addOperation(operation: IndexUpdateOperation): void;
|
|
32
|
+
/**
|
|
33
|
+
* 批量添加实体
|
|
34
|
+
*/
|
|
35
|
+
addEntities(entities: Entity[]): void;
|
|
36
|
+
/**
|
|
37
|
+
* 批量移除实体
|
|
38
|
+
*/
|
|
39
|
+
removeEntities(entities: Entity[]): void;
|
|
40
|
+
/**
|
|
41
|
+
* 批量更新实体
|
|
42
|
+
*/
|
|
43
|
+
updateEntities(updates: Array<{
|
|
44
|
+
entity: Entity;
|
|
45
|
+
oldMask: bigint;
|
|
46
|
+
newMask: bigint;
|
|
47
|
+
}>): void;
|
|
48
|
+
/**
|
|
49
|
+
* 安排延迟刷新
|
|
50
|
+
*/
|
|
51
|
+
private scheduleFlush;
|
|
52
|
+
/**
|
|
53
|
+
* 立即处理所有待处理的操作
|
|
54
|
+
*/
|
|
55
|
+
flush(): void;
|
|
56
|
+
/**
|
|
57
|
+
* 处理批量操作
|
|
58
|
+
*/
|
|
59
|
+
private processBatch;
|
|
60
|
+
/**
|
|
61
|
+
* 批量处理添加操作
|
|
62
|
+
*/
|
|
63
|
+
private processBatchAdd;
|
|
64
|
+
/**
|
|
65
|
+
* 批量处理移除操作
|
|
66
|
+
*/
|
|
67
|
+
private processBatchRemove;
|
|
68
|
+
/**
|
|
69
|
+
* 批量处理更新操作
|
|
70
|
+
*/
|
|
71
|
+
private processBatchUpdate;
|
|
72
|
+
/**
|
|
73
|
+
* 设置批量大小
|
|
74
|
+
*/
|
|
75
|
+
setBatchSize(size: number): void;
|
|
76
|
+
/**
|
|
77
|
+
* 设置刷新延迟
|
|
78
|
+
*/
|
|
79
|
+
setFlushDelay(delay: number): void;
|
|
80
|
+
/**
|
|
81
|
+
* 获取待处理操作数量
|
|
82
|
+
*/
|
|
83
|
+
getPendingCount(): number;
|
|
84
|
+
/**
|
|
85
|
+
* 清空所有待处理操作
|
|
86
|
+
*/
|
|
87
|
+
clear(): void;
|
|
88
|
+
/**
|
|
89
|
+
* 检查是否有待处理操作
|
|
90
|
+
*/
|
|
91
|
+
hasPendingOperations(): boolean;
|
|
92
|
+
onBatchAdd?: (entities: Entity[]) => void;
|
|
93
|
+
onBatchRemove?: (entities: Entity[]) => void;
|
|
94
|
+
onBatchUpdate?: (updates: Array<{
|
|
95
|
+
entity: Entity;
|
|
96
|
+
oldMask: bigint;
|
|
97
|
+
newMask: bigint;
|
|
98
|
+
}>) => void;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=IndexUpdateBatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IndexUpdateBatcher.d.ts","sourceRoot":"","sources":["../../../src/ECS/Core/IndexUpdateBatcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC;;GAEG;AACH,oBAAY,eAAe;IACvB,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,iBAAiB,CAA8B;IACvD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,UAAU,CAAM;IAExB;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,oBAAoB,GAAG,IAAI;IAYnD;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAerC;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAexC;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI;IAiB1F;;OAEG;IACH,OAAO,CAAC,aAAa;IAUrB;;OAEG;IACH,KAAK,IAAI,IAAI;IAmBb;;OAEG;IACH,OAAO,CAAC,YAAY;IA2CpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIlC;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAKxB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC1C,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC7C,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,KAAK,IAAI,CAAC;CACzG"}
|