@esengine/ecs-framework 2.1.4 → 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 (201) 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 -46
  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
  197. package/bin/wasm/ecs_wasm_core.d.ts +0 -141
  198. package/bin/wasm/ecs_wasm_core.js +0 -415
  199. package/bin/wasm/ecs_wasm_core_bg.wasm +0 -0
  200. package/bin/wasm/ecs_wasm_core_bg.wasm.d.ts +0 -29
  201. package/bin/wasm/package.json +0 -15
@@ -1,596 +0,0 @@
1
- /**
2
- * 统一的WASM ECS核心模块
3
- *
4
- * 为小游戏优化的高性能ECS引擎,提供简洁的API和自动回退机制
5
- * 适用于NPM包发布和多种部署环境
6
- *
7
- */
8
- /**
9
- * 统一的WASM ECS核心类
10
- *
11
- * 提供高性能的ECS操作,自动选择WASM或JavaScript实现
12
- * 针对小游戏场景优化,易于使用且性能卓越
13
- * 支持NPM包发布和多种部署环境
14
- */
15
- export class WasmEcsCore {
16
- constructor() {
17
- /** WASM核心实例 */
18
- this.wasmCore = null;
19
- /** WASM模块 */
20
- this.wasmModule = null;
21
- /** 是否已初始化 */
22
- this.initialized = false;
23
- /** 是否使用WASM */
24
- this.usingWasm = false;
25
- this.silent = false;
26
- // JavaScript回退实现
27
- this.jsEntityMasks = new Map();
28
- this.jsNextEntityId = 1;
29
- this.jsQueryCount = 0;
30
- this.jsUpdateCount = 0;
31
- }
32
- /**
33
- * 设置静默模式
34
- */
35
- setSilent(silent) {
36
- this.silent = silent;
37
- }
38
- /**
39
- * 初始化ECS核心
40
- *
41
- * 尝试加载WASM模块,失败时自动回退到JavaScript实现
42
- *
43
- * @returns 初始化是否成功
44
- */
45
- async initialize() {
46
- if (this.initialized)
47
- return true;
48
- if (!this.silent) {
49
- console.log('🔄 初始化ECS核心...');
50
- }
51
- try {
52
- // 尝试从bin目录加载WASM模块
53
- const wasmPath = '../../bin/wasm/ecs_wasm_core';
54
- if (!this.silent) {
55
- console.log(`🔍 尝试加载WASM模块: ${wasmPath}`);
56
- console.log(`📁 当前文件位置: ${typeof __filename !== 'undefined' ? __filename : 'unknown'}`);
57
- console.log(`📂 工作目录: ${typeof process !== 'undefined' ? process.cwd() : 'unknown'}`);
58
- // 计算绝对路径
59
- if (typeof __filename !== 'undefined' && typeof require !== 'undefined') {
60
- const path = require('path');
61
- const fs = require('fs');
62
- const currentDir = path.dirname(__filename);
63
- const absoluteWasmPath = path.resolve(currentDir, wasmPath);
64
- console.log(`📍 计算的绝对路径: ${absoluteWasmPath}`);
65
- // 检查文件是否存在
66
- const jsFile = absoluteWasmPath + '.js';
67
- const wasmFile = path.resolve(currentDir, '../../bin/wasm/ecs_wasm_core_bg.wasm');
68
- console.log(`📄 检查JS文件: ${jsFile} - ${fs.existsSync(jsFile) ? '存在' : '不存在'}`);
69
- console.log(`📄 检查WASM文件: ${wasmFile} - ${fs.existsSync(wasmFile) ? '存在' : '不存在'}`);
70
- }
71
- }
72
- this.wasmModule = await import(wasmPath);
73
- if (!this.silent) {
74
- console.log('✅ WASM模块导入成功,正在初始化...');
75
- }
76
- if (this.wasmModule) {
77
- // 在初始化前,先检查.wasm文件的加载路径
78
- if (!this.silent) {
79
- console.log('🔍 WASM模块将尝试加载 .wasm 文件...');
80
- // 模拟WASM模块内部的路径计算
81
- if (typeof __filename !== 'undefined' && typeof require !== 'undefined') {
82
- const path = require('path');
83
- const { pathToFileURL } = require('url');
84
- const currentDir = path.dirname(__filename);
85
- const wasmJsFile = path.resolve(currentDir, '../../bin/wasm/ecs_wasm_core.js');
86
- const wasmBgFile = path.resolve(currentDir, '../../bin/wasm/ecs_wasm_core_bg.wasm');
87
- const wasmJsUrl = pathToFileURL(wasmJsFile).href;
88
- const expectedWasmUrl = new URL('ecs_wasm_core_bg.wasm', wasmJsUrl).href;
89
- console.log(`📍 WASM JS文件URL: ${wasmJsUrl}`);
90
- console.log(`📍 预期的.wasm文件URL: ${expectedWasmUrl}`);
91
- console.log(`📍 实际.wasm文件路径: ${wasmBgFile}`);
92
- const fs = require('fs');
93
- console.log(`📄 .wasm文件是否存在: ${fs.existsSync(wasmBgFile) ? '存在' : '不存在'}`);
94
- }
95
- }
96
- // 在Node.js环境中,需要手动读取WASM文件
97
- if (typeof require !== 'undefined') {
98
- const fs = require('fs');
99
- const path = require('path');
100
- const currentDir = path.dirname(__filename);
101
- const wasmPath = path.resolve(currentDir, '../../bin/wasm/ecs_wasm_core_bg.wasm');
102
- if (!this.silent) {
103
- console.log(`🔧 在Node.js环境中手动加载WASM文件: ${wasmPath}`);
104
- }
105
- if (fs.existsSync(wasmPath)) {
106
- const wasmBytes = fs.readFileSync(wasmPath);
107
- // 使用initSync同步初始化WASM模块
108
- if (this.wasmModule.initSync) {
109
- this.wasmModule.initSync(wasmBytes);
110
- }
111
- else {
112
- await this.wasmModule.default({ module_or_path: wasmBytes });
113
- }
114
- }
115
- else {
116
- throw new Error(`WASM文件不存在: ${wasmPath}`);
117
- }
118
- }
119
- else {
120
- await this.wasmModule.default();
121
- }
122
- this.wasmCore = new this.wasmModule.EcsCore();
123
- }
124
- this.usingWasm = true;
125
- if (!this.silent) {
126
- console.log('✅ WASM模块加载成功');
127
- }
128
- }
129
- catch (error) {
130
- if (!this.silent) {
131
- console.warn('⚠️ WASM加载失败,使用JavaScript实现');
132
- console.warn(`❌ 错误详情: ${error}`);
133
- }
134
- this.usingWasm = false;
135
- }
136
- this.initialized = true;
137
- if (!this.silent) {
138
- console.log(`🎮 ECS核心初始化完成 (${this.usingWasm ? 'WASM' : 'JavaScript'})`);
139
- }
140
- return true;
141
- }
142
- /**
143
- * 创建新实体
144
- *
145
- * @returns 新实体的ID
146
- */
147
- createEntity() {
148
- this.ensureInitialized();
149
- if (this.usingWasm && this.wasmCore) {
150
- return this.wasmCore.create_entity();
151
- }
152
- else {
153
- const entityId = this.jsNextEntityId++;
154
- this.jsEntityMasks.set(entityId, BigInt(0));
155
- return entityId;
156
- }
157
- }
158
- /**
159
- * 删除实体
160
- *
161
- * @param entityId 实体ID
162
- * @returns 是否删除成功
163
- */
164
- destroyEntity(entityId) {
165
- this.ensureInitialized();
166
- if (this.usingWasm && this.wasmCore) {
167
- return this.wasmCore.destroy_entity(entityId);
168
- }
169
- else {
170
- return this.jsEntityMasks.delete(entityId);
171
- }
172
- }
173
- /**
174
- * 更新实体的组件掩码
175
- *
176
- * @param entityId 实体ID
177
- * @param mask 组件掩码
178
- */
179
- updateEntityMask(entityId, mask) {
180
- this.ensureInitialized();
181
- if (this.usingWasm && this.wasmCore) {
182
- this.wasmCore.update_entity_mask(entityId, mask);
183
- }
184
- else {
185
- this.jsEntityMasks.set(entityId, mask);
186
- this.jsUpdateCount++;
187
- }
188
- }
189
- /**
190
- * 批量更新实体掩码(高性能)
191
- *
192
- * @param entityIds 实体ID数组
193
- * @param masks 组件掩码数组
194
- */
195
- batchUpdateMasks(entityIds, masks) {
196
- this.ensureInitialized();
197
- if (entityIds.length !== masks.length) {
198
- throw new Error('实体ID和掩码数组长度必须相同');
199
- }
200
- if (this.usingWasm && this.wasmCore) {
201
- const entityIdsArray = new Uint32Array(entityIds);
202
- const masksArray = new BigUint64Array(masks);
203
- this.wasmCore.batch_update_masks(entityIdsArray, masksArray);
204
- }
205
- else {
206
- for (let i = 0; i < entityIds.length; i++) {
207
- this.jsEntityMasks.set(entityIds[i], masks[i]);
208
- }
209
- this.jsUpdateCount += entityIds.length;
210
- }
211
- }
212
- /**
213
- * 查询包含指定组件的实体
214
- *
215
- * @param mask 组件掩码
216
- * @param maxResults 最大结果数
217
- * @returns 查询结果
218
- */
219
- queryEntities(mask, maxResults = 10000) {
220
- this.ensureInitialized();
221
- if (this.usingWasm && this.wasmCore) {
222
- try {
223
- const ptr = this.wasmCore.query_entities(mask, maxResults);
224
- const count = this.wasmCore.get_query_result_count();
225
- if (ptr && count > 0 && this.wasmModule?.memory) {
226
- const entities = new Uint32Array(this.wasmModule.memory.buffer, ptr, count);
227
- return {
228
- entities: new Uint32Array(entities), // 创建副本以确保数据安全
229
- count
230
- };
231
- }
232
- else {
233
- return { entities: new Uint32Array(0), count: 0 };
234
- }
235
- }
236
- catch (error) {
237
- if (!this.silent) {
238
- console.warn('WASM查询失败,回退到JavaScript实现:', error);
239
- }
240
- // 回退到JavaScript实现
241
- }
242
- }
243
- // JavaScript实现
244
- this.jsQueryCount++;
245
- const entities = [];
246
- for (const [entityId, entityMask] of this.jsEntityMasks) {
247
- if ((entityMask & mask) === mask) {
248
- entities.push(entityId);
249
- if (entities.length >= maxResults)
250
- break;
251
- }
252
- }
253
- return {
254
- entities: new Uint32Array(entities),
255
- count: entities.length
256
- };
257
- }
258
- /**
259
- * 查询指定掩码的实体(带缓存优化)
260
- *
261
- * @param mask 组件掩码
262
- * @returns 查询结果
263
- */
264
- queryCached(mask) {
265
- this.ensureInitialized();
266
- if (this.usingWasm && this.wasmCore) {
267
- try {
268
- const ptr = this.wasmCore.query_cached(mask);
269
- const count = this.wasmCore.get_cached_query_count(mask);
270
- if (ptr && count > 0 && this.wasmModule?.memory) {
271
- const entities = new Uint32Array(this.wasmModule.memory.buffer, ptr, count);
272
- return {
273
- entities: new Uint32Array(entities), // 复制数据
274
- count
275
- };
276
- }
277
- return { entities: new Uint32Array(0), count: 0 };
278
- }
279
- catch (error) {
280
- if (!this.silent) {
281
- console.warn('WASM缓存查询失败,回退到通用查询:', error);
282
- }
283
- // 回退到通用查询
284
- return this.queryEntities(mask);
285
- }
286
- }
287
- // JavaScript实现 - 直接使用通用查询
288
- return this.queryEntities(mask);
289
- }
290
- /**
291
- * 查询包含多个组件的实体
292
- *
293
- * @param masks 组件掩码数组
294
- * @param maxResults 最大结果数
295
- * @returns 查询结果
296
- */
297
- queryMultipleComponents(masks, maxResults = 10000) {
298
- this.ensureInitialized();
299
- if (this.usingWasm && this.wasmCore) {
300
- try {
301
- const masksArray = new BigUint64Array(masks);
302
- const ptr = this.wasmCore.query_multiple_components(masksArray, maxResults);
303
- if (ptr && this.wasmModule?.memory) {
304
- // 暂时返回空结果,需要实现内存访问
305
- return { entities: new Uint32Array(0), count: 0 };
306
- }
307
- return { entities: new Uint32Array(0), count: 0 };
308
- }
309
- catch (error) {
310
- if (!this.silent) {
311
- console.warn('WASM多组件查询失败,回退到JavaScript实现:', error);
312
- }
313
- // 回退到JavaScript实现
314
- }
315
- }
316
- // JavaScript实现
317
- this.jsQueryCount++;
318
- const entities = [];
319
- for (const [entityId, entityMask] of this.jsEntityMasks) {
320
- let hasAll = true;
321
- for (const mask of masks) {
322
- if ((entityMask & mask) !== mask) {
323
- hasAll = false;
324
- break;
325
- }
326
- }
327
- if (hasAll) {
328
- entities.push(entityId);
329
- if (entities.length >= maxResults)
330
- break;
331
- }
332
- }
333
- return {
334
- entities: new Uint32Array(entities),
335
- count: entities.length
336
- };
337
- }
338
- /**
339
- * 排除查询:包含某些组件但不包含其他组件
340
- *
341
- * @param includeMask 必须包含的组件掩码
342
- * @param excludeMask 必须排除的组件掩码
343
- * @param maxResults 最大结果数
344
- * @returns 查询结果
345
- */
346
- queryWithExclusion(includeMask, excludeMask, maxResults = 10000) {
347
- this.ensureInitialized();
348
- if (this.usingWasm && this.wasmCore) {
349
- try {
350
- const ptr = this.wasmCore.query_with_exclusion(includeMask, excludeMask, maxResults);
351
- if (ptr && this.wasmModule?.memory) {
352
- // 暂时返回空结果,需要实现内存访问
353
- return { entities: new Uint32Array(0), count: 0 };
354
- }
355
- return { entities: new Uint32Array(0), count: 0 };
356
- }
357
- catch (error) {
358
- if (!this.silent) {
359
- console.warn('WASM排除查询失败,回退到JavaScript实现:', error);
360
- }
361
- // 回退到JavaScript实现
362
- }
363
- }
364
- // JavaScript实现
365
- this.jsQueryCount++;
366
- const entities = [];
367
- for (const [entityId, entityMask] of this.jsEntityMasks) {
368
- if ((entityMask & includeMask) === includeMask && (entityMask & excludeMask) === BigInt(0)) {
369
- entities.push(entityId);
370
- if (entities.length >= maxResults)
371
- break;
372
- }
373
- }
374
- return {
375
- entities: new Uint32Array(entities),
376
- count: entities.length
377
- };
378
- }
379
- /**
380
- * 获取实体的组件掩码
381
- *
382
- * @param entityId 实体ID
383
- * @returns 组件掩码,如果实体不存在则返回null
384
- */
385
- getEntityMask(entityId) {
386
- this.ensureInitialized();
387
- if (this.usingWasm && this.wasmCore) {
388
- return this.wasmCore.get_entity_mask(entityId) || null;
389
- }
390
- else {
391
- return this.jsEntityMasks.get(entityId) || null;
392
- }
393
- }
394
- /**
395
- * 检查实体是否存在
396
- *
397
- * @param entityId 实体ID
398
- * @returns 是否存在
399
- */
400
- entityExists(entityId) {
401
- this.ensureInitialized();
402
- if (this.usingWasm && this.wasmCore) {
403
- return this.wasmCore.entity_exists(entityId);
404
- }
405
- else {
406
- return this.jsEntityMasks.has(entityId);
407
- }
408
- }
409
- /**
410
- * 创建组件掩码
411
- *
412
- * @param componentIds 组件ID数组
413
- * @returns 组件掩码
414
- */
415
- createComponentMask(componentIds) {
416
- if (this.usingWasm && this.wasmModule) {
417
- return this.wasmModule.create_component_mask(new Uint32Array(componentIds));
418
- }
419
- else {
420
- let mask = BigInt(0);
421
- for (const id of componentIds) {
422
- if (id < 64) {
423
- mask |= BigInt(1) << BigInt(id);
424
- }
425
- }
426
- return mask;
427
- }
428
- }
429
- /**
430
- * 检查掩码是否包含组件
431
- *
432
- * @param mask 组件掩码
433
- * @param componentId 组件ID
434
- * @returns 是否包含
435
- */
436
- maskContainsComponent(mask, componentId) {
437
- if (this.usingWasm && this.wasmModule) {
438
- return this.wasmModule.mask_contains_component(mask, componentId);
439
- }
440
- else {
441
- if (componentId >= 64)
442
- return false;
443
- return (mask & (BigInt(1) << BigInt(componentId))) !== BigInt(0);
444
- }
445
- }
446
- /**
447
- * 获取性能统计信息
448
- *
449
- * @returns 性能统计
450
- */
451
- getPerformanceStats() {
452
- this.ensureInitialized();
453
- if (this.usingWasm && this.wasmCore) {
454
- const stats = Array.from(this.wasmCore.get_performance_stats());
455
- return {
456
- entityCount: stats[0],
457
- indexCount: stats[1],
458
- queryCount: stats[2],
459
- updateCount: stats[3],
460
- wasmEnabled: true
461
- };
462
- }
463
- else {
464
- return {
465
- entityCount: this.jsEntityMasks.size,
466
- indexCount: 0,
467
- queryCount: this.jsQueryCount,
468
- updateCount: this.jsUpdateCount,
469
- wasmEnabled: false
470
- };
471
- }
472
- }
473
- /**
474
- * 清空所有数据
475
- */
476
- clear() {
477
- this.ensureInitialized();
478
- if (this.usingWasm && this.wasmCore) {
479
- this.wasmCore.clear();
480
- }
481
- else {
482
- this.jsEntityMasks.clear();
483
- this.jsNextEntityId = 1;
484
- this.jsQueryCount = 0;
485
- this.jsUpdateCount = 0;
486
- }
487
- }
488
- /**
489
- * 是否使用WASM实现
490
- *
491
- * @returns 是否使用WASM
492
- */
493
- isUsingWasm() {
494
- return this.usingWasm;
495
- }
496
- /**
497
- * 是否已初始化
498
- *
499
- * @returns 是否已初始化
500
- */
501
- isInitialized() {
502
- return this.initialized;
503
- }
504
- /**
505
- * 确保已初始化
506
- */
507
- ensureInitialized() {
508
- if (!this.initialized) {
509
- throw new Error('ECS核心未初始化,请先调用 initialize()');
510
- }
511
- }
512
- /**
513
- * 清理资源
514
- */
515
- cleanup() {
516
- if (this.usingWasm && this.wasmCore) {
517
- try {
518
- this.wasmCore.free?.();
519
- }
520
- catch (error) {
521
- if (!this.silent) {
522
- console.warn('⚠️ 清理WASM资源时出错:', error);
523
- }
524
- }
525
- }
526
- this.wasmCore = null;
527
- this.wasmModule = null;
528
- this.jsEntityMasks.clear();
529
- this.initialized = false;
530
- this.usingWasm = false;
531
- }
532
- }
533
- /**
534
- * 全局ECS核心实例
535
- *
536
- * 提供单例模式的ECS核心,确保整个应用使用同一个实例
537
- */
538
- export const ecsCore = new WasmEcsCore();
539
- /**
540
- * 初始化ECS引擎
541
- *
542
- * 便捷的初始化函数,推荐在应用启动时调用
543
- *
544
- * @param silent 是否静默模式
545
- * @returns 初始化是否成功
546
- *
547
- * @example
548
- * ```typescript
549
- * import { initializeEcs } from 'ecs-framework';
550
- *
551
- * async function main() {
552
- * // 使用默认配置(JavaScript实现)
553
- * await initializeEcs();
554
- *
555
- * // 或者自定义配置
556
- * await initializeEcs({
557
- * enabled: false, // 禁用WASM
558
- * silent: true // 静默模式
559
- * });
560
- * }
561
- * ```
562
- */
563
- export async function initializeEcs(silent = false) {
564
- ecsCore.setSilent(silent);
565
- return ecsCore.initialize();
566
- }
567
- /**
568
- * 快速查询工具函数
569
- *
570
- * 为常见查询操作提供便捷的API
571
- */
572
- export const Query = {
573
- /**
574
- * 查询拥有指定组件的所有实体
575
- */
576
- withComponent: (componentId, maxResults) => {
577
- const mask = ecsCore.createComponentMask([componentId]);
578
- return ecsCore.queryEntities(mask, maxResults);
579
- },
580
- /**
581
- * 查询拥有多个组件的实体
582
- */
583
- withComponents: (componentIds, maxResults) => {
584
- const masks = componentIds.map(id => ecsCore.createComponentMask([id]));
585
- return ecsCore.queryMultipleComponents(masks, maxResults);
586
- },
587
- /**
588
- * 查询拥有某些组件但不拥有其他组件的实体
589
- */
590
- withExclusion: (includeIds, excludeIds, maxResults) => {
591
- const includeMask = ecsCore.createComponentMask(includeIds);
592
- const excludeMask = ecsCore.createComponentMask(excludeIds);
593
- return ecsCore.queryWithExclusion(includeMask, excludeMask, maxResults);
594
- }
595
- };
596
- //# sourceMappingURL=WasmCore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WasmCore.js","sourceRoot":"","sources":["../../src/Utils/WasmCore.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- /**
2
- * 工具模块导出
3
- */
4
- export * from './Extensions';
5
- export * from './Pool';
6
- export * from './Emitter';
7
- export * from './GlobalManager';
8
- export * from './PerformanceMonitor';
9
- export { Time } from './Time';
10
- /**
11
- * WebAssembly核心模块
12
- * 提供高性能的ECS查询和计算功能
13
- */
14
- export { WasmEcsCore, ecsCore, initializeEcs, Query } from './WasmCore';
15
- export type { EntityId, ComponentMask, QueryResult, PerformanceStats } from './WasmCore';
16
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B;;;GAGG;AACH,OAAO,EACH,WAAW,EACX,OAAO,EACP,aAAa,EACb,KAAK,EACR,MAAM,YAAY,CAAC;AACpB,YAAY,EACR,QAAQ,EACR,aAAa,EACb,WAAW,EACX,gBAAgB,EACnB,MAAM,YAAY,CAAC"}
@@ -1,37 +0,0 @@
1
- "use strict";
2
- /**
3
- * 工具模块导出
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
- };
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.Query = exports.initializeEcs = exports.ecsCore = exports.WasmEcsCore = exports.Time = void 0;
21
- __exportStar(require("./Extensions"), exports);
22
- __exportStar(require("./Pool"), exports);
23
- __exportStar(require("./Emitter"), exports);
24
- __exportStar(require("./GlobalManager"), exports);
25
- __exportStar(require("./PerformanceMonitor"), exports);
26
- var Time_1 = require("./Time");
27
- Object.defineProperty(exports, "Time", { enumerable: true, get: function () { return Time_1.Time; } });
28
- /**
29
- * WebAssembly核心模块
30
- * 提供高性能的ECS查询和计算功能
31
- */
32
- var WasmCore_1 = require("./WasmCore");
33
- Object.defineProperty(exports, "WasmEcsCore", { enumerable: true, get: function () { return WasmCore_1.WasmEcsCore; } });
34
- Object.defineProperty(exports, "ecsCore", { enumerable: true, get: function () { return WasmCore_1.ecsCore; } });
35
- Object.defineProperty(exports, "initializeEcs", { enumerable: true, get: function () { return WasmCore_1.initializeEcs; } });
36
- Object.defineProperty(exports, "Query", { enumerable: true, get: function () { return WasmCore_1.Query; } });
37
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,+CAA6B;AAC7B,yCAAuB;AACvB,4CAA0B;AAC1B,kDAAgC;AAChC,uDAAqC;AACrC,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb;;;GAGG;AACH,uCAKoB;AAJhB,uGAAA,WAAW,OAAA;AACX,mGAAA,OAAO,OAAA;AACP,yGAAA,aAAa,OAAA;AACb,iGAAA,KAAK,OAAA"}