@woosh/meep-engine 2.118.12 → 2.118.13

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.
@@ -52154,6 +52154,7 @@ const CAPACITY_GROW_MIN_STEP = 64;
52154
52154
  * @type {number}
52155
52155
  */
52156
52156
  const ELEMENT_WORD_COUNT = 10;
52157
+ const ELEMENT_BYTE_COUNT = ELEMENT_WORD_COUNT * 4;
52157
52158
 
52158
52159
  /**
52159
52160
  * How many nodes can be stored in the newly constructed tree before allocation needs to take place
@@ -52191,7 +52192,7 @@ class BVH {
52191
52192
  * If you intend to modify the data directly - make sure you fully understand the implications of doing so
52192
52193
  * @returns {ArrayBuffer}
52193
52194
  */
52194
- get data_buffer(){
52195
+ get data_buffer() {
52195
52196
  return this.__data_buffer;
52196
52197
  }
52197
52198
 
@@ -52312,19 +52313,23 @@ class BVH {
52312
52313
 
52313
52314
  const old_data_uint32 = this.__data_uint32;
52314
52315
 
52315
- const new_data_buffer = new ArrayBuffer(new_capacity * ELEMENT_WORD_COUNT * 4);
52316
+ const new_data_buffer = new ArrayBuffer(new_capacity * ELEMENT_BYTE_COUNT);
52316
52317
 
52317
52318
  this.__data_buffer = new_data_buffer;
52318
52319
 
52319
52320
  this.__data_float32 = new Float32Array(new_data_buffer);
52320
52321
  this.__data_uint32 = new Uint32Array(new_data_buffer);
52321
52322
 
52322
- // copy old data into new buffer
52323
- array_buffer_copy(
52324
- old_data_uint32.buffer, old_data_uint32.byteOffset,
52325
- new_data_buffer, 0,
52326
- Math.min(old_data_uint32.byteLength, new_data_buffer.byteLength)
52327
- );
52323
+ if (this.__size > 0) {
52324
+
52325
+ // copy old data into new buffer
52326
+ array_buffer_copy(
52327
+ old_data_uint32.buffer, old_data_uint32.byteOffset,
52328
+ new_data_buffer, 0,
52329
+ Math.min(this.__size * ELEMENT_BYTE_COUNT, new_data_buffer.byteLength)
52330
+ );
52331
+
52332
+ }
52328
52333
 
52329
52334
  this.__capacity = new_capacity;
52330
52335
  }
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "description": "Fully featured ECS game engine written in JavaScript",
6
6
  "type": "module",
7
7
  "author": "Alexander Goldring",
8
- "version": "2.118.12",
8
+ "version": "2.118.13",
9
9
  "main": "build/meep.module.js",
10
10
  "module": "build/meep.module.js",
11
11
  "exports": {
@@ -1 +1 @@
1
- {"version":3,"file":"BVH.d.ts","sourceRoot":"","sources":["../../../../../src/core/bvh2/bvh3/BVH.js"],"names":[],"mappings":"AAQA,8BAA+B;AAC/B,+BAAgC;AAChC,+BAAgC;AAChC,8BAA+B;AAE/B;;;;;GAKG;AACH,+BAFU,MAAM,CAE+B;AAE/C;;;GAGG;AACH,wBAFU,MAAM,CAEoB;AAcpC;;;;;GAKG;AACH,iCAFU,MAAM,CAEqB;AAgBrC;;;;;;GAMG;AACH;IAEI;;;;OAIG;IACH,sBAA2E;IAE3E;;;;;OAKG;IACH,+BAEC;IAED;;;;OAIG;IACH,uBAAsD;IAEtD;;;;OAIG;IACH,sBAAoD;IAEpD;;;;OAIG;IACH,mBAA8B;IAE9B;;;;OAIG;IACH,eAAW;IAEX;;;;OAIG;IACH,eAAY;IAEZ;;;;OAIG;IACH,uBAAmB;IAEnB;;;;OAIG;IACH,eAAmB;IAUnB;;;OAGG;IACH,sBAEC;IAdD;;;OAGG;IACH,mBAEC;IAkBD;;;OAGG;IACH,+BAMC;IAlBD;;;OAGG;IACH,4BAEC;IAcD,wBAgBC;IAED;;;;OAIG;IACH,uBAyBC;IAED;;OAEG;IACH,aAIC;IAED;;;OAGG;IACH,iBAFa,MAAM,CAqDlB;IAED;;;;OAIG;IACH,iBAFW,MAAM,QAMhB;IAED;;;;OAIG;IACH,iBAHW,MAAM,GACJ,OAAO,CAOnB;IAED;;;;OAIG;IACH,uBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,uBAHW,MAAM,SACN,MAAM,QAOhB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;IAGD;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,oBAHW,MAAM,UACN,MAAM,QAKhB;IAED;;;;OAIG;IACH,kBAHW,MAAM,UACN,MAAM,EAAE,GAAC,YAAY,QAe/B;IAED;;;;OAIG;IACH,kBAHW,MAAM,QACN,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,QAAM,QAsB1C;IAED;;;;OAIG;IACH,mBAHW,MAAM,QACN,MAAM,EAAE,QAWlB;IAED;;;;;;;;;OASG;IACH,4BARW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAmBhB;IAED;;;;OAIG;IACH,0BAHW,MAAM,GACJ,MAAM,CAoBlB;IAED;;;;;OAKG;IACH,wCAJW,MAAM,WACN,MAAM,GACJ,MAAM,CAoClB;IAED;;;;;OAKG;IACH,oCAJW,MAAM,WACN,MAAM,WACN,MAAM,QAwChB;IAED;;;;OAIG;IACH,kBAHW,MAAM,GACJ,IAAI,CA0GhB;IAED;;;;;OAKG;IACH,wBAqBC;IAED;;;;OAIG;IACH,yBA4BC;IAED;;;;OAIG;IACH,kBAHW,MAAM,GACJ,IAAI,CA6ChB;IAED;;;;;;OAMG;IACH,gBAoMC;IAED;;;OAGG;IACH,oBAIC;IAED;;;;OAIG;IACH,yCA8BC;IAED;;;;;OAKG;IACH,+BAJW,MAAM,EAAE,sBACR,MAAM,GACJ,MAAM,CAWlB;IAED;;;;;OAKG;IACH,0BA6BC;IAED;;;;;OAKG;IACH,cAJW,MAAM,KACN,MAAM,GACJ,OAAO,CAsCnB;CACJ"}
1
+ {"version":3,"file":"BVH.d.ts","sourceRoot":"","sources":["../../../../../src/core/bvh2/bvh3/BVH.js"],"names":[],"mappings":"AAQA,8BAA+B;AAC/B,+BAAgC;AAChC,+BAAgC;AAChC,8BAA+B;AAE/B;;;;;GAKG;AACH,+BAFU,MAAM,CAE+B;AAE/C;;;GAGG;AACH,wBAFU,MAAM,CAEoB;AAcpC;;;;;GAKG;AACH,iCAFU,MAAM,CAEqB;AAiBrC;;;;;;GAMG;AACH;IAEI;;;;OAIG;IACH,sBAA2E;IAE3E;;;;;OAKG;IACH,+BAEC;IAED;;;;OAIG;IACH,uBAAsD;IAEtD;;;;OAIG;IACH,sBAAoD;IAEpD;;;;OAIG;IACH,mBAA8B;IAE9B;;;;OAIG;IACH,eAAW;IAEX;;;;OAIG;IACH,eAAY;IAEZ;;;;OAIG;IACH,uBAAmB;IAEnB;;;;OAIG;IACH,eAAmB;IAUnB;;;OAGG;IACH,sBAEC;IAdD;;;OAGG;IACH,mBAEC;IAkBD;;;OAGG;IACH,+BAMC;IAlBD;;;OAGG;IACH,4BAEC;IAcD,wBAgBC;IAED;;;;OAIG;IACH,uBA6BC;IAED;;OAEG;IACH,aAIC;IAED;;;OAGG;IACH,iBAFa,MAAM,CAqDlB;IAED;;;;OAIG;IACH,iBAFW,MAAM,QAMhB;IAED;;;;OAIG;IACH,iBAHW,MAAM,GACJ,OAAO,CAOnB;IAED;;;;OAIG;IACH,uBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,uBAHW,MAAM,SACN,MAAM,QAOhB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;IAED;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,sBAHW,MAAM,UACN,MAAM,QAIhB;IAGD;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAKlB;IAED;;;;OAIG;IACH,oBAHW,MAAM,UACN,MAAM,QAKhB;IAED;;;;OAIG;IACH,kBAHW,MAAM,UACN,MAAM,EAAE,GAAC,YAAY,QAe/B;IAED;;;;OAIG;IACH,kBAHW,MAAM,QACN,MAAM,EAAE,GAAC,UAAU,MAAM,CAAC,QAAM,QAsB1C;IAED;;;;OAIG;IACH,mBAHW,MAAM,QACN,MAAM,EAAE,QAWlB;IAED;;;;;;;;;OASG;IACH,4BARW,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,MACN,MAAM,QAmBhB;IAED;;;;OAIG;IACH,0BAHW,MAAM,GACJ,MAAM,CAoBlB;IAED;;;;;OAKG;IACH,wCAJW,MAAM,WACN,MAAM,GACJ,MAAM,CAoClB;IAED;;;;;OAKG;IACH,oCAJW,MAAM,WACN,MAAM,WACN,MAAM,QAwChB;IAED;;;;OAIG;IACH,kBAHW,MAAM,GACJ,IAAI,CA0GhB;IAED;;;;;OAKG;IACH,wBAqBC;IAED;;;;OAIG;IACH,yBA4BC;IAED;;;;OAIG;IACH,kBAHW,MAAM,GACJ,IAAI,CA6ChB;IAED;;;;;;OAMG;IACH,gBAoMC;IAED;;;OAGG;IACH,oBAIC;IAED;;;;OAIG;IACH,yCA8BC;IAED;;;;;OAKG;IACH,+BAJW,MAAM,EAAE,sBACR,MAAM,GACJ,MAAM,CAWlB;IAED;;;;;OAKG;IACH,0BA6BC;IAED;;;;;OAKG;IACH,cAJW,MAAM,KACN,MAAM,GACJ,OAAO,CAsCnB;CACJ"}
@@ -44,6 +44,7 @@ const CAPACITY_GROW_MIN_STEP = 64;
44
44
  * @type {number}
45
45
  */
46
46
  export const ELEMENT_WORD_COUNT = 10;
47
+ const ELEMENT_BYTE_COUNT = ELEMENT_WORD_COUNT * 4;
47
48
 
48
49
  /**
49
50
  * How many nodes can be stored in the newly constructed tree before allocation needs to take place
@@ -81,7 +82,7 @@ export class BVH {
81
82
  * If you intend to modify the data directly - make sure you fully understand the implications of doing so
82
83
  * @returns {ArrayBuffer}
83
84
  */
84
- get data_buffer(){
85
+ get data_buffer() {
85
86
  return this.__data_buffer;
86
87
  }
87
88
 
@@ -203,19 +204,23 @@ export class BVH {
203
204
 
204
205
  const old_data_uint32 = this.__data_uint32;
205
206
 
206
- const new_data_buffer = new ArrayBuffer(new_capacity * ELEMENT_WORD_COUNT * 4);
207
+ const new_data_buffer = new ArrayBuffer(new_capacity * ELEMENT_BYTE_COUNT);
207
208
 
208
209
  this.__data_buffer = new_data_buffer;
209
210
 
210
211
  this.__data_float32 = new Float32Array(new_data_buffer);
211
212
  this.__data_uint32 = new Uint32Array(new_data_buffer);
212
213
 
213
- // copy old data into new buffer
214
- array_buffer_copy(
215
- old_data_uint32.buffer, old_data_uint32.byteOffset,
216
- new_data_buffer, 0,
217
- Math.min(old_data_uint32.byteLength, new_data_buffer.byteLength)
218
- );
214
+ if (this.__size > 0) {
215
+
216
+ // copy old data into new buffer
217
+ array_buffer_copy(
218
+ old_data_uint32.buffer, old_data_uint32.byteOffset,
219
+ new_data_buffer, 0,
220
+ Math.min(this.__size * ELEMENT_BYTE_COUNT, new_data_buffer.byteLength)
221
+ );
222
+
223
+ }
219
224
 
220
225
  this.__capacity = new_capacity;
221
226
  }