@esengine/ecs-framework 2.1.3 → 2.1.5

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.
Files changed (196) hide show
  1. package/README.md +385 -0
  2. package/{bin/index.d.ts → index.d.ts} +9 -6
  3. package/index.js +7 -0
  4. package/index.js.map +7 -0
  5. package/package.json +20 -48
  6. package/bin/Core.d.ts +0 -198
  7. package/bin/Core.d.ts.map +0 -1
  8. package/bin/Core.js +0 -247
  9. package/bin/Core.js.map +0 -1
  10. package/bin/ECS/Component.d.ts +0 -119
  11. package/bin/ECS/Component.d.ts.map +0 -1
  12. package/bin/ECS/Component.js +0 -129
  13. package/bin/ECS/Component.js.map +0 -1
  14. package/bin/ECS/Components/IUpdatable.d.ts +0 -22
  15. package/bin/ECS/Components/IUpdatable.d.ts.map +0 -1
  16. package/bin/ECS/Components/IUpdatable.js +0 -22
  17. package/bin/ECS/Components/IUpdatable.js.map +0 -1
  18. package/bin/ECS/Components/SceneComponent.d.ts +0 -40
  19. package/bin/ECS/Components/SceneComponent.d.ts.map +0 -1
  20. package/bin/ECS/Components/SceneComponent.js +0 -61
  21. package/bin/ECS/Components/SceneComponent.js.map +0 -1
  22. package/bin/ECS/Core/BitMaskOptimizer.d.ts +0 -75
  23. package/bin/ECS/Core/BitMaskOptimizer.d.ts.map +0 -1
  24. package/bin/ECS/Core/BitMaskOptimizer.js +0 -161
  25. package/bin/ECS/Core/BitMaskOptimizer.js.map +0 -1
  26. package/bin/ECS/Core/ComponentPool.d.ts +0 -72
  27. package/bin/ECS/Core/ComponentPool.d.ts.map +0 -1
  28. package/bin/ECS/Core/ComponentPool.js +0 -123
  29. package/bin/ECS/Core/ComponentPool.js.map +0 -1
  30. package/bin/ECS/Core/ComponentStorage.d.ts +0 -182
  31. package/bin/ECS/Core/ComponentStorage.d.ts.map +0 -1
  32. package/bin/ECS/Core/ComponentStorage.js +0 -346
  33. package/bin/ECS/Core/ComponentStorage.js.map +0 -1
  34. package/bin/ECS/Core/EventSystem.d.ts +0 -236
  35. package/bin/ECS/Core/EventSystem.d.ts.map +0 -1
  36. package/bin/ECS/Core/EventSystem.js +0 -476
  37. package/bin/ECS/Core/EventSystem.js.map +0 -1
  38. package/bin/ECS/Core/FluentAPI.d.ts +0 -371
  39. package/bin/ECS/Core/FluentAPI.d.ts.map +0 -1
  40. package/bin/ECS/Core/FluentAPI.js +0 -543
  41. package/bin/ECS/Core/FluentAPI.js.map +0 -1
  42. package/bin/ECS/Core/IndexUpdateBatcher.d.ts +0 -100
  43. package/bin/ECS/Core/IndexUpdateBatcher.d.ts.map +0 -1
  44. package/bin/ECS/Core/IndexUpdateBatcher.js +0 -219
  45. package/bin/ECS/Core/IndexUpdateBatcher.js.map +0 -1
  46. package/bin/ECS/Core/QuerySystem.d.ts +0 -422
  47. package/bin/ECS/Core/QuerySystem.d.ts.map +0 -1
  48. package/bin/ECS/Core/QuerySystem.js +0 -937
  49. package/bin/ECS/Core/QuerySystem.js.map +0 -1
  50. package/bin/ECS/CoreEvents.d.ts +0 -19
  51. package/bin/ECS/CoreEvents.d.ts.map +0 -1
  52. package/bin/ECS/CoreEvents.js +0 -20
  53. package/bin/ECS/CoreEvents.js.map +0 -1
  54. package/bin/ECS/Entity.d.ts +0 -538
  55. package/bin/ECS/Entity.d.ts.map +0 -1
  56. package/bin/ECS/Entity.js +0 -1030
  57. package/bin/ECS/Entity.js.map +0 -1
  58. package/bin/ECS/Scene.d.ts +0 -226
  59. package/bin/ECS/Scene.d.ts.map +0 -1
  60. package/bin/ECS/Scene.js +0 -308
  61. package/bin/ECS/Scene.js.map +0 -1
  62. package/bin/ECS/Systems/EntitySystem.d.ts +0 -185
  63. package/bin/ECS/Systems/EntitySystem.d.ts.map +0 -1
  64. package/bin/ECS/Systems/EntitySystem.js +0 -278
  65. package/bin/ECS/Systems/EntitySystem.js.map +0 -1
  66. package/bin/ECS/Systems/IntervalSystem.d.ts +0 -33
  67. package/bin/ECS/Systems/IntervalSystem.d.ts.map +0 -1
  68. package/bin/ECS/Systems/IntervalSystem.js +0 -50
  69. package/bin/ECS/Systems/IntervalSystem.js.map +0 -1
  70. package/bin/ECS/Systems/PassiveSystem.d.ts +0 -20
  71. package/bin/ECS/Systems/PassiveSystem.d.ts.map +0 -1
  72. package/bin/ECS/Systems/PassiveSystem.js +0 -21
  73. package/bin/ECS/Systems/PassiveSystem.js.map +0 -1
  74. package/bin/ECS/Systems/ProcessingSystem.d.ts +0 -24
  75. package/bin/ECS/Systems/ProcessingSystem.d.ts.map +0 -1
  76. package/bin/ECS/Systems/ProcessingSystem.js +0 -22
  77. package/bin/ECS/Systems/ProcessingSystem.js.map +0 -1
  78. package/bin/ECS/Systems/index.d.ts +0 -5
  79. package/bin/ECS/Systems/index.d.ts.map +0 -1
  80. package/bin/ECS/Systems/index.js +0 -6
  81. package/bin/ECS/Systems/index.js.map +0 -1
  82. package/bin/ECS/Utils/Bits.d.ts +0 -74
  83. package/bin/ECS/Utils/Bits.d.ts.map +0 -1
  84. package/bin/ECS/Utils/Bits.js +0 -142
  85. package/bin/ECS/Utils/Bits.js.map +0 -1
  86. package/bin/ECS/Utils/ComponentTypeManager.d.ts +0 -50
  87. package/bin/ECS/Utils/ComponentTypeManager.d.ts.map +0 -1
  88. package/bin/ECS/Utils/ComponentTypeManager.js +0 -84
  89. package/bin/ECS/Utils/ComponentTypeManager.js.map +0 -1
  90. package/bin/ECS/Utils/EntityList.d.ts +0 -108
  91. package/bin/ECS/Utils/EntityList.d.ts.map +0 -1
  92. package/bin/ECS/Utils/EntityList.js +0 -249
  93. package/bin/ECS/Utils/EntityList.js.map +0 -1
  94. package/bin/ECS/Utils/EntityProcessorList.d.ts +0 -53
  95. package/bin/ECS/Utils/EntityProcessorList.d.ts.map +0 -1
  96. package/bin/ECS/Utils/EntityProcessorList.js +0 -96
  97. package/bin/ECS/Utils/EntityProcessorList.js.map +0 -1
  98. package/bin/ECS/Utils/IdentifierPool.d.ts +0 -18
  99. package/bin/ECS/Utils/IdentifierPool.d.ts.map +0 -1
  100. package/bin/ECS/Utils/IdentifierPool.js +0 -27
  101. package/bin/ECS/Utils/IdentifierPool.js.map +0 -1
  102. package/bin/ECS/Utils/Matcher.d.ts +0 -63
  103. package/bin/ECS/Utils/Matcher.d.ts.map +0 -1
  104. package/bin/ECS/Utils/Matcher.js +0 -140
  105. package/bin/ECS/Utils/Matcher.js.map +0 -1
  106. package/bin/ECS/Utils/index.d.ts +0 -7
  107. package/bin/ECS/Utils/index.d.ts.map +0 -1
  108. package/bin/ECS/Utils/index.js +0 -8
  109. package/bin/ECS/Utils/index.js.map +0 -1
  110. package/bin/ECS/index.d.ts +0 -7
  111. package/bin/ECS/index.d.ts.map +0 -1
  112. package/bin/ECS/index.js +0 -29
  113. package/bin/ECS/index.js.map +0 -1
  114. package/bin/Testing/Performance/benchmark.d.ts +0 -6
  115. package/bin/Testing/Performance/benchmark.d.ts.map +0 -1
  116. package/bin/Testing/Performance/benchmark.js +0 -639
  117. package/bin/Testing/Performance/benchmark.js.map +0 -1
  118. package/bin/Testing/Performance/component-performance.d.ts +0 -2
  119. package/bin/Testing/Performance/component-performance.d.ts.map +0 -1
  120. package/bin/Testing/Performance/component-performance.js +0 -43
  121. package/bin/Testing/Performance/component-performance.js.map +0 -1
  122. package/bin/Testing/Unit/bitmask-optimizer.test.d.ts +0 -2
  123. package/bin/Testing/Unit/bitmask-optimizer.test.d.ts.map +0 -1
  124. package/bin/Testing/Unit/bitmask-optimizer.test.js +0 -164
  125. package/bin/Testing/Unit/bitmask-optimizer.test.js.map +0 -1
  126. package/bin/Testing/Unit/component-pool.test.d.ts +0 -5
  127. package/bin/Testing/Unit/component-pool.test.d.ts.map +0 -1
  128. package/bin/Testing/Unit/component-pool.test.js +0 -149
  129. package/bin/Testing/Unit/component-pool.test.js.map +0 -1
  130. package/bin/Testing/test-runner.d.ts +0 -51
  131. package/bin/Testing/test-runner.d.ts.map +0 -1
  132. package/bin/Testing/test-runner.js +0 -159
  133. package/bin/Testing/test-runner.js.map +0 -1
  134. package/bin/Types/index.d.ts +0 -22
  135. package/bin/Types/index.d.ts.map +0 -1
  136. package/bin/Types/index.js +0 -20
  137. package/bin/Types/index.js.map +0 -1
  138. package/bin/Utils/Emitter.d.ts +0 -43
  139. package/bin/Utils/Emitter.d.ts.map +0 -1
  140. package/bin/Utils/Emitter.js +0 -69
  141. package/bin/Utils/Emitter.js.map +0 -1
  142. package/bin/Utils/Extensions/NumberExtension.d.ts +0 -13
  143. package/bin/Utils/Extensions/NumberExtension.d.ts.map +0 -1
  144. package/bin/Utils/Extensions/NumberExtension.js +0 -17
  145. package/bin/Utils/Extensions/NumberExtension.js.map +0 -1
  146. package/bin/Utils/Extensions/TypeUtils.d.ts +0 -13
  147. package/bin/Utils/Extensions/TypeUtils.d.ts.map +0 -1
  148. package/bin/Utils/Extensions/TypeUtils.js +0 -15
  149. package/bin/Utils/Extensions/TypeUtils.js.map +0 -1
  150. package/bin/Utils/Extensions/index.d.ts +0 -3
  151. package/bin/Utils/Extensions/index.d.ts.map +0 -1
  152. package/bin/Utils/Extensions/index.js +0 -4
  153. package/bin/Utils/Extensions/index.js.map +0 -1
  154. package/bin/Utils/GlobalManager.d.ts +0 -32
  155. package/bin/Utils/GlobalManager.d.ts.map +0 -1
  156. package/bin/Utils/GlobalManager.js +0 -53
  157. package/bin/Utils/GlobalManager.js.map +0 -1
  158. package/bin/Utils/PerformanceMonitor.d.ts +0 -211
  159. package/bin/Utils/PerformanceMonitor.d.ts.map +0 -1
  160. package/bin/Utils/PerformanceMonitor.js +0 -270
  161. package/bin/Utils/PerformanceMonitor.js.map +0 -1
  162. package/bin/Utils/Pool.d.ts +0 -239
  163. package/bin/Utils/Pool.d.ts.map +0 -1
  164. package/bin/Utils/Pool.js +0 -449
  165. package/bin/Utils/Pool.js.map +0 -1
  166. package/bin/Utils/Time.d.ts +0 -55
  167. package/bin/Utils/Time.d.ts.map +0 -1
  168. package/bin/Utils/Time.js +0 -78
  169. package/bin/Utils/Time.js.map +0 -1
  170. package/bin/Utils/Timers/ITimer.d.ts +0 -16
  171. package/bin/Utils/Timers/ITimer.d.ts.map +0 -1
  172. package/bin/Utils/Timers/ITimer.js +0 -2
  173. package/bin/Utils/Timers/ITimer.js.map +0 -1
  174. package/bin/Utils/Timers/Timer.d.ts +0 -22
  175. package/bin/Utils/Timers/Timer.d.ts.map +0 -1
  176. package/bin/Utils/Timers/Timer.js +0 -46
  177. package/bin/Utils/Timers/Timer.js.map +0 -1
  178. package/bin/Utils/Timers/TimerManager.d.ts +0 -19
  179. package/bin/Utils/Timers/TimerManager.d.ts.map +0 -1
  180. package/bin/Utils/Timers/TimerManager.js +0 -33
  181. package/bin/Utils/Timers/TimerManager.js.map +0 -1
  182. package/bin/Utils/WasmCore.d.ts +0 -234
  183. package/bin/Utils/WasmCore.d.ts.map +0 -1
  184. package/bin/Utils/WasmCore.js +0 -596
  185. package/bin/Utils/WasmCore.js.map +0 -1
  186. package/bin/Utils/index.d.ts +0 -16
  187. package/bin/Utils/index.d.ts.map +0 -1
  188. package/bin/Utils/index.js +0 -37
  189. package/bin/Utils/index.js.map +0 -1
  190. package/bin/index.cjs +0 -51
  191. package/bin/index.d.ts.map +0 -1
  192. package/bin/index.esm.d.ts +0 -45
  193. package/bin/index.esm.d.ts.map +0 -1
  194. package/bin/index.esm.js +0 -46
  195. package/bin/index.esm.js.map +0 -1
  196. package/bin/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../../src/Testing/Performance/benchmark.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=component-performance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-performance.d.ts","sourceRoot":"","sources":["../../../src/Testing/Performance/component-performance.js"],"names":[],"mappings":""}
@@ -1,43 +0,0 @@
1
- "use strict";
2
- const { Scene } = require('./bin/ECS/Scene.js');
3
- const { Component } = require('./bin/ECS/Component.js');
4
- // 简单的组件类
5
- class TestComponent extends Component {
6
- constructor(value) {
7
- super();
8
- this.value = value;
9
- }
10
- }
11
- console.log('🔬 组件添加性能分析');
12
- // 创建场景和实体
13
- const scene = new Scene();
14
- console.log('✅ 创建场景完成');
15
- const startCreate = performance.now();
16
- const entities = scene.createEntities(5000, 'TestEntity');
17
- const endCreate = performance.now();
18
- console.log(`✅ 创建了 ${entities.length} 个实体,耗时: ${(endCreate - startCreate).toFixed(2)}ms`);
19
- // 测试单个组件添加性能
20
- console.log('\n📊 测试组件添加性能:');
21
- const startAdd = performance.now();
22
- for (let i = 0; i < entities.length; i++) {
23
- const entity = entities[i];
24
- entity.addComponent(new TestComponent(i));
25
- }
26
- const endAdd = performance.now();
27
- const addTime = endAdd - startAdd;
28
- console.log(`添加 ${entities.length} 个组件耗时: ${addTime.toFixed(2)}ms`);
29
- console.log(`平均每个组件: ${(addTime / entities.length).toFixed(4)}ms`);
30
- console.log(`添加速度: ${(entities.length / (addTime / 1000)).toFixed(0)} 组件/秒`);
31
- // 测试组件获取性能
32
- console.log('\n📊 测试组件获取性能:');
33
- const startGet = performance.now();
34
- for (let i = 0; i < entities.length; i++) {
35
- const entity = entities[i];
36
- const component = entity.getComponent(TestComponent);
37
- }
38
- const endGet = performance.now();
39
- const getTime = endGet - startGet;
40
- console.log(`获取 ${entities.length} 个组件耗时: ${getTime.toFixed(2)}ms`);
41
- console.log(`平均每个组件: ${(getTime / entities.length).toFixed(4)}ms`);
42
- console.log(`获取速度: ${(entities.length / (getTime / 1000)).toFixed(0)} 组件/秒`);
43
- //# sourceMappingURL=component-performance.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-performance.js","sourceRoot":"","sources":["../../../src/Testing/Performance/component-performance.js"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function runBitMaskOptimizerTests(): void;
2
- //# sourceMappingURL=bitmask-optimizer.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bitmask-optimizer.test.d.ts","sourceRoot":"","sources":["../../../src/Testing/Unit/bitmask-optimizer.test.ts"],"names":[],"mappings":"AA6LA,wBAAgB,wBAAwB,IAAI,IAAI,CAS/C"}
@@ -1,164 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.runBitMaskOptimizerTests = runBitMaskOptimizerTests;
4
- const BitMaskOptimizer_1 = require("../../ECS/Core/BitMaskOptimizer");
5
- /**
6
- * 位掩码优化器测试
7
- */
8
- function testBitMaskOptimizer() {
9
- console.log('🧪 测试位掩码优化器');
10
- const optimizer = BitMaskOptimizer_1.BitMaskOptimizer.getInstance();
11
- optimizer.reset();
12
- // 测试组件类型注册
13
- console.log(' 📝 测试组件类型注册...');
14
- const positionId = optimizer.registerComponentType('Position');
15
- const velocityId = optimizer.registerComponentType('Velocity');
16
- const healthId = optimizer.registerComponentType('Health');
17
- console.log(` Position ID: ${positionId}`);
18
- console.log(` Velocity ID: ${velocityId}`);
19
- console.log(` Health ID: ${healthId}`);
20
- // 测试单个组件掩码
21
- console.log(' 🎯 测试单个组件掩码...');
22
- const positionMask = optimizer.createSingleComponentMask('Position');
23
- const velocityMask = optimizer.createSingleComponentMask('Velocity');
24
- console.log(` Position掩码: ${positionMask.toString(2)}`);
25
- console.log(` Velocity掩码: ${velocityMask.toString(2)}`);
26
- // 测试组合掩码
27
- console.log(' 🔗 测试组合掩码...');
28
- const combinedMask = optimizer.createCombinedMask(['Position', 'Velocity']);
29
- console.log(` Position+Velocity掩码: ${combinedMask.toString(2)}`);
30
- // 测试掩码包含检查
31
- console.log(' ✅ 测试掩码包含检查...');
32
- const hasPosition = optimizer.maskContainsComponent(combinedMask, 'Position');
33
- const hasVelocity = optimizer.maskContainsComponent(combinedMask, 'Velocity');
34
- const hasHealth = optimizer.maskContainsComponent(combinedMask, 'Health');
35
- console.log(` 包含Position: ${hasPosition}`);
36
- console.log(` 包含Velocity: ${hasVelocity}`);
37
- console.log(` 包含Health: ${hasHealth}`);
38
- // 测试掩码操作
39
- console.log(' 🔧 测试掩码操作...');
40
- let entityMask = 0n;
41
- entityMask = optimizer.addComponentToMask(entityMask, 'Position');
42
- entityMask = optimizer.addComponentToMask(entityMask, 'Health');
43
- console.log(` 添加Position和Health后: ${entityMask.toString(2)}`);
44
- const hasAll = optimizer.maskContainsAllComponents(entityMask, ['Position', 'Health']);
45
- const hasAny = optimizer.maskContainsAnyComponent(entityMask, ['Position', 'Velocity']);
46
- console.log(` 包含Position和Health: ${hasAll}`);
47
- console.log(` 包含Position或Velocity: ${hasAny}`);
48
- // 测试掩码分析
49
- console.log(' 📊 测试掩码分析...');
50
- const componentNames = optimizer.maskToComponentNames(entityMask);
51
- const componentCount = optimizer.getComponentCount(entityMask);
52
- console.log(` 掩码包含的组件: ${componentNames.join(', ')}`);
53
- console.log(` 组件数量: ${componentCount}`);
54
- // 测试缓存统计
55
- console.log(' 📈 测试缓存统计...');
56
- const stats = optimizer.getCacheStats();
57
- console.log(` 缓存大小: ${stats.size}`);
58
- console.log(` 组件类型数量: ${stats.componentTypes}`);
59
- // 测试预计算常用掩码
60
- console.log(' ⚡ 测试预计算常用掩码...');
61
- const commonCombinations = [
62
- ['Position', 'Velocity'],
63
- ['Position', 'Health'],
64
- ['Position', 'Velocity', 'Health']
65
- ];
66
- optimizer.precomputeCommonMasks(commonCombinations);
67
- const statsAfterPrecompute = optimizer.getCacheStats();
68
- console.log(` 预计算后缓存大小: ${statsAfterPrecompute.size}`);
69
- console.log('✅ 位掩码优化器测试完成');
70
- }
71
- /**
72
- * 性能测试
73
- */
74
- function testBitMaskPerformance() {
75
- console.log('\n🚀 位掩码优化器性能测试');
76
- const optimizer = BitMaskOptimizer_1.BitMaskOptimizer.getInstance();
77
- optimizer.reset();
78
- // 注册组件类型
79
- const componentTypes = ['Position', 'Velocity', 'Health', 'Render', 'AI', 'Physics', 'Audio', 'Network'];
80
- for (const type of componentTypes) {
81
- optimizer.registerComponentType(type);
82
- }
83
- const iterations = 100000;
84
- // 测试单个掩码创建性能
85
- console.log(' 🔥 测试单个掩码创建性能...');
86
- let start = performance.now();
87
- for (let i = 0; i < iterations; i++) {
88
- optimizer.createSingleComponentMask('Position');
89
- }
90
- let end = performance.now();
91
- console.log(` ${iterations}次单个掩码创建: ${(end - start).toFixed(2)}ms`);
92
- // 测试组合掩码创建性能
93
- console.log(' 🔥 测试组合掩码创建性能...');
94
- start = performance.now();
95
- for (let i = 0; i < iterations; i++) {
96
- optimizer.createCombinedMask(['Position', 'Velocity', 'Health']);
97
- }
98
- end = performance.now();
99
- console.log(` ${iterations}次组合掩码创建: ${(end - start).toFixed(2)}ms`);
100
- // 测试掩码检查性能
101
- console.log(' 🔥 测试掩码检查性能...');
102
- const testMask = optimizer.createCombinedMask(['Position', 'Velocity', 'Health']);
103
- start = performance.now();
104
- for (let i = 0; i < iterations; i++) {
105
- optimizer.maskContainsComponent(testMask, 'Position');
106
- optimizer.maskContainsComponent(testMask, 'AI');
107
- }
108
- end = performance.now();
109
- console.log(` ${iterations * 2}次掩码检查: ${(end - start).toFixed(2)}ms`);
110
- // 对比原生位操作性能
111
- console.log(' ⚖️ 对比原生位操作性能...');
112
- const positionBit = 1n << 0n;
113
- const velocityBit = 1n << 1n;
114
- const healthBit = 1n << 2n;
115
- const nativeMask = positionBit | velocityBit | healthBit;
116
- start = performance.now();
117
- for (let i = 0; i < iterations; i++) {
118
- (nativeMask & positionBit) !== 0n;
119
- (nativeMask & (1n << 7n)) !== 0n; // AI位
120
- }
121
- end = performance.now();
122
- console.log(` ${iterations * 2}次原生位操作: ${(end - start).toFixed(2)}ms`);
123
- console.log('✅ 性能测试完成');
124
- }
125
- /**
126
- * 内存使用测试
127
- */
128
- function testBitMaskMemoryUsage() {
129
- console.log('\n💾 位掩码优化器内存使用测试');
130
- const optimizer = BitMaskOptimizer_1.BitMaskOptimizer.getInstance();
131
- optimizer.reset();
132
- // 注册大量组件类型
133
- console.log(' 📝 注册组件类型...');
134
- for (let i = 0; i < 100; i++) {
135
- optimizer.registerComponentType(`Component${i}`);
136
- }
137
- // 创建大量掩码组合
138
- console.log(' 🔗 创建掩码组合...');
139
- const maskCount = 1000;
140
- for (let i = 0; i < maskCount; i++) {
141
- const componentCount = Math.floor(Math.random() * 5) + 1;
142
- const components = [];
143
- for (let j = 0; j < componentCount; j++) {
144
- components.push(`Component${Math.floor(Math.random() * 100)}`);
145
- }
146
- optimizer.createCombinedMask(components);
147
- }
148
- const stats = optimizer.getCacheStats();
149
- console.log(` 📊 最终统计:`);
150
- console.log(` 组件类型数量: ${stats.componentTypes}`);
151
- console.log(` 缓存掩码数量: ${stats.size}`);
152
- console.log(` 平均每个掩码占用: ~${(stats.size * 64 / 1024).toFixed(2)} KB`);
153
- console.log('✅ 内存使用测试完成');
154
- }
155
- // 运行所有测试
156
- function runBitMaskOptimizerTests() {
157
- console.log('🧪 位掩码优化器测试套件');
158
- console.log('='.repeat(50));
159
- testBitMaskOptimizer();
160
- testBitMaskPerformance();
161
- testBitMaskMemoryUsage();
162
- console.log('\n✅ 所有测试完成');
163
- }
164
- //# sourceMappingURL=bitmask-optimizer.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bitmask-optimizer.test.js","sourceRoot":"","sources":["../../../src/Testing/Unit/bitmask-optimizer.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * 运行组件对象池测试
3
- */
4
- export declare function runComponentPoolTests(): void;
5
- //# sourceMappingURL=component-pool.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-pool.test.d.ts","sourceRoot":"","sources":["../../../src/Testing/Unit/component-pool.test.ts"],"names":[],"mappings":"AAmBA;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAS5C"}
@@ -1,149 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.runComponentPoolTests = runComponentPoolTests;
4
- const ComponentPool_1 = require("../../ECS/Core/ComponentPool");
5
- const Component_1 = require("../../ECS/Component");
6
- /**
7
- * 测试用组件
8
- */
9
- class TestComponent extends Component_1.Component {
10
- constructor(value = 0) {
11
- super();
12
- this.value = 0;
13
- this.value = value;
14
- }
15
- reset() {
16
- this.value = 0;
17
- }
18
- }
19
- /**
20
- * 运行组件对象池测试
21
- */
22
- function runComponentPoolTests() {
23
- console.log('🧪 组件对象池测试');
24
- console.log('='.repeat(50));
25
- testBasicFunctionality();
26
- testPoolManager();
27
- testPerformance();
28
- console.log('✅ 组件对象池测试完成');
29
- }
30
- /**
31
- * 基础功能测试
32
- */
33
- function testBasicFunctionality() {
34
- console.log('\n📝 基础功能测试...');
35
- const pool = new ComponentPool_1.ComponentPool(() => new TestComponent(), (component) => component.reset(), 10);
36
- // 测试获取新组件实例
37
- console.log(' 测试获取新组件实例...');
38
- const component = pool.acquire();
39
- console.assert(component instanceof TestComponent, '应该返回TestComponent实例');
40
- console.assert(component.value === 0, '新组件的值应该为0');
41
- // 测试释放和复用
42
- console.log(' 测试组件释放和复用...');
43
- component.value = 42;
44
- pool.release(component);
45
- console.assert(pool.getAvailableCount() === 1, '池中应该有1个可用组件');
46
- const reusedComponent = pool.acquire();
47
- console.assert(reusedComponent === component, '应该复用同一个组件实例');
48
- console.assert(reusedComponent.value === 0, '复用的组件应该被重置');
49
- // 测试预填充
50
- console.log(' 测试对象池预填充...');
51
- pool.prewarm(5);
52
- console.assert(pool.getAvailableCount() === 5, '预填充后应该有5个可用组件');
53
- const components = [];
54
- for (let i = 0; i < 5; i++) {
55
- components.push(pool.acquire());
56
- }
57
- console.assert(pool.getAvailableCount() === 0, '获取5个组件后池应该为空');
58
- // 测试最大容量限制
59
- console.log(' 测试最大容量限制...');
60
- pool.prewarm(10);
61
- const extraComponent = new TestComponent();
62
- pool.release(extraComponent);
63
- console.assert(pool.getAvailableCount() === 10, '不应该超过最大容量');
64
- // 测试清空池
65
- console.log(' 测试清空对象池...');
66
- pool.clear();
67
- console.assert(pool.getAvailableCount() === 0, '清空后池应该为空');
68
- console.log(' ✅ 基础功能测试通过');
69
- }
70
- /**
71
- * 池管理器测试
72
- */
73
- function testPoolManager() {
74
- console.log('\n📝 池管理器测试...');
75
- const manager = ComponentPool_1.ComponentPoolManager.getInstance();
76
- manager.clearAll();
77
- // 测试单例模式
78
- console.log(' 测试单例模式...');
79
- const manager1 = ComponentPool_1.ComponentPoolManager.getInstance();
80
- const manager2 = ComponentPool_1.ComponentPoolManager.getInstance();
81
- console.assert(manager1 === manager2, '应该返回同一个实例');
82
- // 测试注册组件池
83
- console.log(' 测试注册组件池...');
84
- manager.registerPool('TestComponent', () => new TestComponent(), (component) => component.reset(), 5);
85
- const stats = manager.getPoolStats();
86
- console.assert(stats.has('TestComponent'), '应该包含已注册的组件类型');
87
- console.assert(stats.get('TestComponent')?.maxSize === 5, '最大容量应该为5');
88
- // 测试获取和释放组件
89
- console.log(' 测试获取和释放组件...');
90
- const component = manager.acquireComponent('TestComponent');
91
- console.assert(component instanceof TestComponent, '应该返回TestComponent实例');
92
- if (component) {
93
- component.value = 42;
94
- manager.releaseComponent('TestComponent', component);
95
- const reusedComponent = manager.acquireComponent('TestComponent');
96
- console.assert(reusedComponent === component, '应该复用同一个组件');
97
- console.assert(reusedComponent?.value === 0, '复用的组件应该被重置');
98
- }
99
- // 测试预热所有池
100
- console.log(' 测试预热所有池...');
101
- manager.registerPool('TestComponent1', () => new TestComponent());
102
- manager.registerPool('TestComponent2', () => new TestComponent());
103
- manager.prewarmAll(3);
104
- const finalStats = manager.getPoolStats();
105
- console.assert(finalStats.get('TestComponent1')?.available === 3, 'TestComponent1应该有3个可用组件');
106
- console.assert(finalStats.get('TestComponent2')?.available === 3, 'TestComponent2应该有3个可用组件');
107
- // 测试未注册的组件类型
108
- console.log(' 测试未注册的组件类型...');
109
- const nullComponent = manager.acquireComponent('NonExistentComponent');
110
- console.assert(nullComponent === null, '未注册的组件类型应该返回null');
111
- manager.clearAll();
112
- console.log(' ✅ 池管理器测试通过');
113
- }
114
- /**
115
- * 性能测试
116
- */
117
- function testPerformance() {
118
- console.log('\n📝 性能测试...');
119
- const pool = new ComponentPool_1.ComponentPool(() => new TestComponent());
120
- const iterations = 10000;
121
- // 预热池
122
- pool.prewarm(100);
123
- // 测试对象池性能
124
- const poolStart = performance.now();
125
- for (let i = 0; i < iterations; i++) {
126
- const component = pool.acquire();
127
- pool.release(component);
128
- }
129
- const poolEnd = performance.now();
130
- const poolTime = poolEnd - poolStart;
131
- // 测试直接创建性能
132
- const directStart = performance.now();
133
- for (let i = 0; i < iterations; i++) {
134
- new TestComponent();
135
- }
136
- const directEnd = performance.now();
137
- const directTime = directEnd - directStart;
138
- console.log(` 对象池时间: ${poolTime.toFixed(2)}ms`);
139
- console.log(` 直接创建时间: ${directTime.toFixed(2)}ms`);
140
- const improvement = ((directTime - poolTime) / directTime * 100);
141
- console.log(` 性能提升: ${improvement.toFixed(1)}%`);
142
- if (poolTime < directTime) {
143
- console.log(' ✅ 对象池性能测试通过 - 比直接创建更快');
144
- }
145
- else {
146
- console.log(' ⚠️ 对象池在小规模测试中可能不如直接创建快');
147
- }
148
- }
149
- //# sourceMappingURL=component-pool.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-pool.test.js","sourceRoot":"","sources":["../../../src/Testing/Unit/component-pool.test.ts"],"names":[],"mappings":"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"}
@@ -1,51 +0,0 @@
1
- /**
2
- * 测试运行器 - 统一运行所有测试
3
- */
4
- export declare class TestRunner {
5
- private results;
6
- /**
7
- * 运行所有单元测试
8
- */
9
- runUnitTests(): Promise<void>;
10
- /**
11
- * 运行性能测试
12
- */
13
- runPerformanceTests(): Promise<void>;
14
- /**
15
- * 运行集成测试
16
- */
17
- runIntegrationTests(): Promise<void>;
18
- /**
19
- * 运行所有测试
20
- */
21
- runAllTests(): Promise<void>;
22
- /**
23
- * 运行单个测试
24
- */
25
- private runTest;
26
- /**
27
- * 打印测试摘要
28
- */
29
- private printSummary;
30
- /**
31
- * 打印最终测试摘要
32
- */
33
- private printFinalSummary;
34
- /**
35
- * 清除测试结果
36
- */
37
- clearResults(): void;
38
- }
39
- /**
40
- * 便捷函数:运行所有测试
41
- */
42
- export declare function runAllTests(): Promise<void>;
43
- /**
44
- * 便捷函数:仅运行单元测试
45
- */
46
- export declare function runUnitTests(): Promise<void>;
47
- /**
48
- * 便捷函数:仅运行性能测试
49
- */
50
- export declare function runPerformanceTests(): Promise<void>;
51
- //# sourceMappingURL=test-runner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-runner.d.ts","sourceRoot":"","sources":["../../src/Testing/test-runner.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,qBAAa,UAAU;IACnB,OAAO,CAAC,OAAO,CAAgF;IAE/F;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAWnC;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1C;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ1C;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBlC;;OAEG;YACW,OAAO;IAwBrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAqBpB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAsBzB;;OAEG;IACH,YAAY,IAAI,IAAI;CAGvB;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAGjD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAGlD;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAGzD"}