@eva/plugin-renderer 1.3.0-alpha.1 → 2.0.0-beta.1

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.
@@ -8,7 +8,7 @@ var isEqual = require('lodash-es/isEqual');
8
8
  var EventEmitter = require('eventemitter3');
9
9
  var pixi_js = require('pixi.js');
10
10
 
11
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
12
12
 
13
13
  var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
14
14
  var EventEmitter__default = /*#__PURE__*/_interopDefaultLegacy(EventEmitter);
@@ -60,6 +60,43 @@ function __decorate(decorators, target, key, desc) {
60
60
  return c > 3 && r && Object.defineProperty(target, key, r), r;
61
61
  }
62
62
 
63
+ function __awaiter(thisArg, _arguments, P, generator) {
64
+ return new (P || (P = Promise))(function (resolve, reject) {
65
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
66
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
67
+ function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
68
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
69
+ });
70
+ }
71
+
72
+ function __generator(thisArg, body) {
73
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
74
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
75
+ function verb(n) { return function (v) { return step([n, v]); }; }
76
+ function step(op) {
77
+ if (f) throw new TypeError("Generator is already executing.");
78
+ while (_) try {
79
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
80
+ if (y = 0, t) op = [op[0] & 2, t.value];
81
+ switch (op[0]) {
82
+ case 0: case 1: t = op; break;
83
+ case 4: _.label++; return { value: op[1], done: false };
84
+ case 5: _.label++; y = op[1]; op = [0]; continue;
85
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
86
+ default:
87
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
88
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
89
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
90
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
91
+ if (t[2]) _.ops.pop();
92
+ _.trys.pop(); continue;
93
+ }
94
+ op = body.call(thisArg, _);
95
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
96
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
97
+ }
98
+ }
99
+
63
100
  function __values(o) {
64
101
  var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0;
65
102
  if (m) return m.call(o);
@@ -240,7 +277,7 @@ var ContainerManager = (function () {
240
277
  ContainerManager.prototype.updateTransform = function (_a) {
241
278
  var name = _a.name, transform = _a.transform;
242
279
  var container = this.containerMap[name];
243
- if (!container)
280
+ if (!container || !transform)
244
281
  return;
245
282
  var anchor = transform.anchor, origin = transform.origin, position = transform.position, rotation = transform.rotation, scale = transform.scale, size = transform.size, skew = transform.skew;
246
283
  container.rotation = rotation;
@@ -329,13 +366,13 @@ var Transform = (function (_super) {
329
366
  };
330
367
  Transform.prototype.addContainer = function (changed) {
331
368
  var container = new rendererAdapter.Container();
332
- container.name = changed.gameObject.name;
369
+ container.label = changed.gameObject.name;
333
370
  this.containerManager.addContainer({
334
371
  name: changed.gameObject.id,
335
372
  container: container,
336
373
  });
337
374
  var transform = changed.component;
338
- transform.worldTransform = container.transform.worldTransform;
375
+ transform.worldTransform = container.worldTransform;
339
376
  };
340
377
  Transform.prototype.change = function (changed) {
341
378
  var transform = changed.component;
@@ -370,407 +407,6 @@ var Transform = (function (_super) {
370
407
  }(EventEmitter__default));
371
408
  var Transform$1 = Transform;
372
409
 
373
- var result = undefined;
374
- function getSuportCompressedTextureFormats(gl) {
375
- if (result)
376
- return result;
377
- if (!gl) {
378
- console.warn('WebGL not available for compressed textures. Silently failing.');
379
- return {
380
- s3tc: false,
381
- etc: false,
382
- etc1: false,
383
- pvrtc: false,
384
- atc: false,
385
- astc: false,
386
- };
387
- }
388
- result = {
389
- s3tc: !!gl.getExtension('WEBGL_compressed_texture_s3tc'),
390
- etc: !!gl.getExtension('WEBGL_compressed_texture_etc'),
391
- etc1: !!gl.getExtension('WEBGL_compressed_texture_etc1'),
392
- pvrtc: !!gl.getExtension('WEBGL_compressed_texture_pvrtc')
393
- || !!gl.getExtension('WEBKIT_WEBGL_compressed_texture_pvrtc'),
394
- atc: !!gl.getExtension('WEBGL_compressed_texture_atc'),
395
- astc: !!gl.getExtension('WEBGL_compressed_texture_astc')
396
- };
397
- try {
398
- console.log('Eva.js Supported Compressed Texture Format List: ' + Object.keys(result).filter(function (type) { return result[type]; }).join(', '));
399
- }
400
- catch (e) { }
401
- return result;
402
- }
403
-
404
- var XLS = eva_js.resourceLoader.XhrLoadStrategy;
405
- var XhrLoadStrategy = XLS;
406
-
407
- var _a$2, _b;
408
- var INTERNAL_FORMATS;
409
- (function (INTERNAL_FORMATS) {
410
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB_S3TC_DXT1_EXT"] = 33776] = "COMPRESSED_RGB_S3TC_DXT1_EXT";
411
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_S3TC_DXT1_EXT"] = 33777] = "COMPRESSED_RGBA_S3TC_DXT1_EXT";
412
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_S3TC_DXT3_EXT"] = 33778] = "COMPRESSED_RGBA_S3TC_DXT3_EXT";
413
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_S3TC_DXT5_EXT"] = 33779] = "COMPRESSED_RGBA_S3TC_DXT5_EXT";
414
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT"] = 35917] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT";
415
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT"] = 35918] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT";
416
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT"] = 35919] = "COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT";
417
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB_S3TC_DXT1_EXT"] = 35916] = "COMPRESSED_SRGB_S3TC_DXT1_EXT";
418
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_R11_EAC"] = 37488] = "COMPRESSED_R11_EAC";
419
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SIGNED_R11_EAC"] = 37489] = "COMPRESSED_SIGNED_R11_EAC";
420
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RG11_EAC"] = 37490] = "COMPRESSED_RG11_EAC";
421
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SIGNED_RG11_EAC"] = 37491] = "COMPRESSED_SIGNED_RG11_EAC";
422
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB8_ETC2"] = 37492] = "COMPRESSED_RGB8_ETC2";
423
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA8_ETC2_EAC"] = 37496] = "COMPRESSED_RGBA8_ETC2_EAC";
424
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ETC2"] = 37493] = "COMPRESSED_SRGB8_ETC2";
425
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ETC2_EAC"] = 37497] = "COMPRESSED_SRGB8_ALPHA8_ETC2_EAC";
426
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2"] = 37494] = "COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2";
427
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2"] = 37495] = "COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2";
428
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB_PVRTC_4BPPV1_IMG"] = 35840] = "COMPRESSED_RGB_PVRTC_4BPPV1_IMG";
429
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_PVRTC_4BPPV1_IMG"] = 35842] = "COMPRESSED_RGBA_PVRTC_4BPPV1_IMG";
430
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB_PVRTC_2BPPV1_IMG"] = 35841] = "COMPRESSED_RGB_PVRTC_2BPPV1_IMG";
431
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_PVRTC_2BPPV1_IMG"] = 35843] = "COMPRESSED_RGBA_PVRTC_2BPPV1_IMG";
432
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB_ETC1_WEBGL"] = 36196] = "COMPRESSED_RGB_ETC1_WEBGL";
433
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB_ATC_WEBGL"] = 35986] = "COMPRESSED_RGB_ATC_WEBGL";
434
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL"] = 35986] = "COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL";
435
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL"] = 34798] = "COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL";
436
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_10x10_KHR"] = 37819] = "COMPRESSED_RGBA_ASTC_10x10_KHR";
437
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_10x5_KHR"] = 37816] = "COMPRESSED_RGBA_ASTC_10x5_KHR";
438
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_10x6_KHR"] = 37817] = "COMPRESSED_RGBA_ASTC_10x6_KHR";
439
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_10x8_KHR"] = 37818] = "COMPRESSED_RGBA_ASTC_10x8_KHR";
440
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_12x10_KHR"] = 37820] = "COMPRESSED_RGBA_ASTC_12x10_KHR";
441
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_12x12_KHR"] = 37821] = "COMPRESSED_RGBA_ASTC_12x12_KHR";
442
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_4x4_KHR"] = 37808] = "COMPRESSED_RGBA_ASTC_4x4_KHR";
443
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_5x4_KHR"] = 37809] = "COMPRESSED_RGBA_ASTC_5x4_KHR";
444
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_5x5_KHR"] = 37810] = "COMPRESSED_RGBA_ASTC_5x5_KHR";
445
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_6x5_KHR"] = 37811] = "COMPRESSED_RGBA_ASTC_6x5_KHR";
446
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_6x6_KHR"] = 37812] = "COMPRESSED_RGBA_ASTC_6x6_KHR";
447
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_8x5_KHR"] = 37813] = "COMPRESSED_RGBA_ASTC_8x5_KHR";
448
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_8x6_KHR"] = 37814] = "COMPRESSED_RGBA_ASTC_8x6_KHR";
449
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_ASTC_8x8_KHR"] = 37815] = "COMPRESSED_RGBA_ASTC_8x8_KHR";
450
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR"] = 3781] = "COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR";
451
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR"] = 37847] = "COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR";
452
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR"] = 37849] = "COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR";
453
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR"] = 37850] = "COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR";
454
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR"] = 37852] = "COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR";
455
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"] = 37853] = "COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR";
456
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR"] = 37840] = "COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR";
457
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR"] = 37841] = "COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR";
458
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR"] = 37842] = "COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR";
459
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR"] = 37843] = "COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR";
460
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR"] = 37844] = "COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR";
461
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR"] = 37845] = "COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR";
462
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR"] = 37846] = "COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR";
463
- INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR"] = 37847] = "COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR";
464
- })(INTERNAL_FORMATS || (INTERNAL_FORMATS = {}));
465
- var INTERNAL_FORMAT_TO_BLOCK_SIZE = (_a$2 = {},
466
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGB_S3TC_DXT1_EXT] = [4, 4],
467
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT1_EXT] = [4, 4],
468
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT3_EXT] = [4, 4],
469
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT] = [4, 4],
470
- _a$2[INTERNAL_FORMATS.COMPRESSED_SRGB_S3TC_DXT1_EXT] = [4, 4],
471
- _a$2[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT] = [4, 4],
472
- _a$2[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT] = [4, 4],
473
- _a$2[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT] = [4, 4],
474
- _a$2[INTERNAL_FORMATS.COMPRESSED_R11_EAC] = [4, 4],
475
- _a$2[INTERNAL_FORMATS.COMPRESSED_SIGNED_R11_EAC] = [4, 4],
476
- _a$2[INTERNAL_FORMATS.COMPRESSED_RG11_EAC] = [4, 4],
477
- _a$2[INTERNAL_FORMATS.COMPRESSED_SIGNED_RG11_EAC] = [4, 4],
478
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGB8_ETC2] = [4, 4],
479
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA8_ETC2_EAC] = [4, 4],
480
- _a$2[INTERNAL_FORMATS.COMPRESSED_SRGB8_ETC2] = [4, 4],
481
- _a$2[INTERNAL_FORMATS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC] = [4, 4],
482
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2] = [4, 4],
483
- _a$2[INTERNAL_FORMATS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2] = [4, 4],
484
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG] = [4, 4],
485
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG] = [4, 4],
486
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG] = [8, 4],
487
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG] = [8, 4],
488
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGB_ETC1_WEBGL] = [4, 4],
489
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGB_ATC_WEBGL] = [4, 4],
490
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL] = [4, 4],
491
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL] = [4, 4],
492
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_4x4_KHR] = [4, 4],
493
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_5x5_KHR] = [5, 5],
494
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_6x6_KHR] = [6, 6],
495
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_8x8_KHR] = [8, 8],
496
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x10_KHR] = [10, 10],
497
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_12x12_KHR] = [12, 12],
498
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x5_KHR] = [10, 5],
499
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x6_KHR] = [10, 6],
500
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x8_KHR] = [10, 8],
501
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_12x10_KHR] = [12, 10],
502
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_5x4_KHR] = [5, 4],
503
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_6x5_KHR] = [6, 5],
504
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_8x5_KHR] = [8, 5],
505
- _a$2[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_8x6_KHR] = [8, 6],
506
- _a$2);
507
- var INTERNAL_FORMATS_TO_EXTENSION_NAME = (_b = {},
508
- _b[INTERNAL_FORMATS.COMPRESSED_RGB_S3TC_DXT1_EXT] = 'WEBGL_compressed_texture_s3tc',
509
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT1_EXT] = 'WEBGL_compressed_texture_s3tc',
510
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT3_EXT] = 'WEBGL_compressed_texture_s3tc',
511
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT] = 'WEBGL_compressed_texture_s3tc',
512
- _b[INTERNAL_FORMATS.COMPRESSED_SRGB_S3TC_DXT1_EXT] = 'WEBGL_compressed_texture_s3tc_srgb',
513
- _b[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT] = 'WEBGL_compressed_texture_s3tc_srgb',
514
- _b[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT] = 'WEBGL_compressed_texture_s3tc_srgb',
515
- _b[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT] = 'WEBGL_compressed_texture_s3tc_srgb',
516
- _b[INTERNAL_FORMATS.COMPRESSED_R11_EAC] = 'WEBGL_compressed_texture_etc',
517
- _b[INTERNAL_FORMATS.COMPRESSED_SIGNED_R11_EAC] = 'WEBGL_compressed_texture_etc',
518
- _b[INTERNAL_FORMATS.COMPRESSED_RG11_EAC] = 'WEBGL_compressed_texture_etc',
519
- _b[INTERNAL_FORMATS.COMPRESSED_SIGNED_RG11_EAC] = 'WEBGL_compressed_texture_etc',
520
- _b[INTERNAL_FORMATS.COMPRESSED_RGB8_ETC2] = 'WEBGL_compressed_texture_etc',
521
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA8_ETC2_EAC] = 'WEBGL_compressed_texture_etc',
522
- _b[INTERNAL_FORMATS.COMPRESSED_SRGB8_ETC2] = 'WEBGL_compressed_texture_etc',
523
- _b[INTERNAL_FORMATS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC] = 'WEBGL_compressed_texture_etc',
524
- _b[INTERNAL_FORMATS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2] = 'WEBGL_compressed_texture_etc',
525
- _b[INTERNAL_FORMATS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2] = 'WEBGL_compressed_texture_etc',
526
- _b[INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG] = 'WEBGL_compressed_texture_pvrtc',
527
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG] = 'WEBGL_compressed_texture_pvrtc',
528
- _b[INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG] = 'WEBGL_compressed_texture_pvrtc',
529
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG] = 'WEBGL_compressed_texture_pvrtc',
530
- _b[INTERNAL_FORMATS.COMPRESSED_RGB_ETC1_WEBGL] = 'WEBGL_compressed_texture_etc1',
531
- _b[INTERNAL_FORMATS.COMPRESSED_RGB_ATC_WEBGL] = 'WEBGL_compressed_texture_atc',
532
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL] = 'WEBGL_compressed_texture_atc',
533
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL] = 'WEBGL_compressed_texture_atc',
534
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_4x4_KHR] = 'WEBGL_compressed_texture_astc',
535
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_5x5_KHR] = 'WEBGL_compressed_texture_astc',
536
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_6x6_KHR] = 'WEBGL_compressed_texture_astc',
537
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_8x8_KHR] = 'WEBGL_compressed_texture_astc',
538
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x10_KHR] = 'WEBGL_compressed_texture_astc',
539
- _b[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_12x12_KHR] = 'WEBGL_compressed_texture_astc',
540
- _b);
541
-
542
- var CompressedTextureResource = (function () {
543
- function CompressedTextureResource() {
544
- this.levelBuffers = [];
545
- }
546
- CompressedTextureResource.prototype.upload = function (gl) {
547
- var levels = this.levels;
548
- var name = INTERNAL_FORMATS_TO_EXTENSION_NAME[this.internalFormat];
549
- if (!gl[name]) {
550
- gl[name] = true;
551
- if (name === 'WEBGL_compressed_texture_pvrtc') {
552
- gl.getExtension(name) || gl.getExtension('WEBKIT_WEBGL_compressed_texture_pvrtc');
553
- }
554
- else {
555
- gl.getExtension(name);
556
- }
557
- }
558
- for (var i = 0; i < this.levels; ++i) {
559
- var _a = this.levelBuffers[i], levelWidth = _a.levelWidth, levelHeight = _a.levelHeight, levelBuffer = _a.levelBuffer;
560
- gl.compressedTexImage2D(gl.TEXTURE_2D, i, this.internalFormat, levelWidth, levelHeight, 0, levelBuffer);
561
- }
562
- if (levels > 1) {
563
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
564
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_NEAREST);
565
- }
566
- else {
567
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
568
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
569
- }
570
- };
571
- return CompressedTextureResource;
572
- }());
573
-
574
- var FILE_HEADER_SIZE = 64;
575
- var KTX_FIELDS = {
576
- FILE_IDENTIFIER: 0,
577
- ENDIANNESS: 12,
578
- GL_TYPE: 16,
579
- GL_TYPE_SIZE: 20,
580
- GL_FORMAT: 24,
581
- GL_INTERNAL_FORMAT: 28,
582
- GL_BASE_INTERNAL_FORMAT: 32,
583
- PIXEL_WIDTH: 36,
584
- PIXEL_HEIGHT: 40,
585
- PIXEL_DEPTH: 44,
586
- NUMBER_OF_ARRAY_ELEMENTS: 48,
587
- NUMBER_OF_FACES: 52,
588
- NUMBER_OF_MIPMAP_LEVELS: 56,
589
- BYTES_OF_KEY_VALUE_DATA: 60
590
- };
591
- var FILE_IDENTIFIER = [0xAB, 0x4B, 0x54, 0x58, 0x20, 0x31, 0x31, 0xBB, 0x0D, 0x0A, 0x1A, 0x0A];
592
- var ENDIANNESS = 0x04030201;
593
- var KTXTextureResource = (function (_super) {
594
- __extends(KTXTextureResource, _super);
595
- function KTXTextureResource(source, config) {
596
- var _a;
597
- var _this = _super.call(this) || this;
598
- _this.complete = true;
599
- _this.src = config.url;
600
- var dataView = new DataView(source);
601
- if (!validateKTX(dataView)) {
602
- throw new Error('Not a valid KTX Texture');
603
- }
604
- var littleEndian = dataView.getUint32(KTX_FIELDS.ENDIANNESS, true) === ENDIANNESS;
605
- _this.internalFormat = dataView.getUint32(KTX_FIELDS.GL_INTERNAL_FORMAT, littleEndian);
606
- var pixelWidth = _this.formerWidth = dataView.getUint32(KTX_FIELDS.PIXEL_WIDTH, littleEndian);
607
- var pixelHeight = _this.formerHeight = dataView.getUint32(KTX_FIELDS.PIXEL_HEIGHT, littleEndian) || 1;
608
- var size = INTERNAL_FORMAT_TO_BLOCK_SIZE[_this.internalFormat];
609
- _this.width = pixelWidth % size[0] === 0 ? pixelWidth : (pixelWidth + size[0] - (pixelWidth % size[0]));
610
- _this.height = pixelHeight % size[1] === 0 ? pixelHeight : (pixelHeight + size[1] - (pixelHeight % size[1]));
611
- var src = eva_js.resource.resourcesMap[config.metadata.name].src[config.metadata.key];
612
- var _b = (_a = src === null || src === void 0 ? void 0 : src.size) !== null && _a !== void 0 ? _a : {}, width = _b.width, height = _b.height;
613
- if (width && height) {
614
- _this.naturalWidth = width;
615
- _this.naturalHeight = height;
616
- }
617
- var pixelDepth = dataView.getUint32(KTX_FIELDS.PIXEL_DEPTH, littleEndian) || 1;
618
- var numberOfArrayElements = dataView.getUint32(KTX_FIELDS.NUMBER_OF_ARRAY_ELEMENTS, littleEndian) || 1;
619
- var numberOfFaces = dataView.getUint32(KTX_FIELDS.NUMBER_OF_FACES, littleEndian);
620
- var numberOfMipmapLevels = _this.levels = dataView.getUint32(KTX_FIELDS.NUMBER_OF_MIPMAP_LEVELS, littleEndian);
621
- var bytesOfKeyValueData = dataView.getUint32(KTX_FIELDS.BYTES_OF_KEY_VALUE_DATA, littleEndian);
622
- if (pixelHeight === 0 || pixelDepth !== 1) {
623
- throw new Error('Only 2D textures are supported!');
624
- }
625
- if (numberOfFaces !== 1) {
626
- throw new Error('CubeTextures are not supported!');
627
- }
628
- if (numberOfArrayElements !== 1) {
629
- throw new Error('It does not support array textures!');
630
- }
631
- var mipWidth = pixelWidth;
632
- var mipHeight = pixelHeight;
633
- var imageOffset = FILE_HEADER_SIZE + bytesOfKeyValueData;
634
- for (var mipmapLevel = 0; mipmapLevel < numberOfMipmapLevels; mipmapLevel++) {
635
- var imageSize = dataView.getUint32(imageOffset, littleEndian);
636
- imageOffset += 4;
637
- var size_1 = INTERNAL_FORMAT_TO_BLOCK_SIZE[_this.internalFormat];
638
- var levelWidth = mipWidth % size_1[0] === 0 ? mipWidth : mipWidth + size_1[0] - (mipWidth % size_1[0]);
639
- var levelHeight = mipHeight % size_1[1] === 0 ? mipHeight : mipHeight + size_1[1] - (mipHeight % size_1[1]);
640
- var mip = {
641
- levelID: mipmapLevel,
642
- levelWidth: levelWidth,
643
- levelHeight: levelHeight,
644
- levelBuffer: new Uint8Array(source, imageOffset, imageSize)
645
- };
646
- _this.levelBuffers.push(mip);
647
- imageOffset += imageSize;
648
- imageOffset += 3 - ((imageOffset + 3) % 4);
649
- mipWidth = (mipWidth >> 1) || 1;
650
- mipHeight = (mipHeight >> 1) || 1;
651
- }
652
- return _this;
653
- }
654
- return KTXTextureResource;
655
- }(CompressedTextureResource));
656
- function validateKTX(dataView) {
657
- for (var i = 0; i < FILE_IDENTIFIER.length; i++) {
658
- if (dataView.getUint8(i) !== FILE_IDENTIFIER[i]) {
659
- return false;
660
- }
661
- }
662
- return true;
663
- }
664
-
665
- var KTXLoadStrategy = (function (_super) {
666
- __extends(KTXLoadStrategy, _super);
667
- function KTXLoadStrategy() {
668
- return _super !== null && _super.apply(this, arguments) || this;
669
- }
670
- KTXLoadStrategy.prototype._complete = function (type, data) {
671
- _super.prototype._complete.call(this, type, new KTXTextureResource(data, this.config));
672
- };
673
- return KTXLoadStrategy;
674
- }(XhrLoadStrategy));
675
- var KTXLoadStrategy$1 = KTXLoadStrategy;
676
-
677
- var XhrResponseType = eva_js.resourceLoader.XhrResponseType;
678
- function addPreProcessResourceHandler(resource, gl) {
679
- resource.addPreProcessResourceHandler(function normalizeResource(resource) {
680
- var _a, _b, _c;
681
- var textures = (_b = (_a = resource.src) === null || _a === void 0 ? void 0 : _a.image) === null || _b === void 0 ? void 0 : _b.texture;
682
- if (!textures)
683
- return;
684
- if (!Array.isArray(textures)) {
685
- textures = [textures];
686
- }
687
- var formats = (_c = getSuportCompressedTextureFormats(gl)) !== null && _c !== void 0 ? _c : {};
688
- var target = textures.find(function (texture) { return formats[texture.type]; });
689
- if (target) {
690
- Object.assign(resource.src.image, target);
691
- }
692
- });
693
- }
694
- function addKTXStragetyAndRegister() {
695
- Object.assign(eva_js.RESOURCE_TYPE_STRATEGY, {
696
- astc: KTXLoadStrategy$1,
697
- etc: KTXLoadStrategy$1,
698
- pvrtc: KTXLoadStrategy$1,
699
- s3tc: KTXLoadStrategy$1,
700
- atc: KTXLoadStrategy$1,
701
- });
702
- KTXLoadStrategy$1.setExtensionXhrType('ktx', XhrResponseType.Buffer);
703
- }
704
-
705
- var GLTexture = pixi_js.glCore.GLTexture;
706
- var GLTextureMixin = {
707
- isCompressed: false,
708
- uploadNotCompressed: GLTexture.prototype.upload,
709
- upload: function (source) {
710
- if (!(source instanceof CompressedTextureResource)) {
711
- return this.uploadNotCompressed(source);
712
- }
713
- this.bind();
714
- var gl = this.gl;
715
- gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this.premultiplyAlpha);
716
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST_MIPMAP_NEAREST);
717
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
718
- this.isCompressed = true;
719
- source.upload(gl);
720
- },
721
- enableMipmap: function () {
722
- if (this.isCompressed) {
723
- return;
724
- }
725
- var gl = this.gl;
726
- this.bind();
727
- this.mipmap = true;
728
- gl.generateMipmap(gl.TEXTURE_2D);
729
- }
730
- };
731
-
732
- var _a$1;
733
- var oldFrom$1 = Symbol();
734
- var TextureMixin = (_a$1 = {},
735
- _a$1[oldFrom$1] = pixi_js.Texture.from,
736
- _a$1.from = function (source) {
737
- if (!(source instanceof CompressedTextureResource)) {
738
- return this[oldFrom$1](source);
739
- }
740
- return new pixi_js.Texture(pixi_js.BaseTexture.from(source));
741
- },
742
- _a$1);
743
-
744
- var _a;
745
- var oldFrom = Symbol();
746
- var BaseTextureMixin = (_a = {},
747
- _a[oldFrom] = pixi_js.BaseTexture.from,
748
- _a.from = function (source, scaleMode, sourceScale) {
749
- if (!(source instanceof CompressedTextureResource)) {
750
- return this[oldFrom](source, scaleMode, sourceScale);
751
- }
752
- var imageUrl = source.src;
753
- var baseTexture = pixi_js.utils.BaseTextureCache[imageUrl];
754
- if (!baseTexture) {
755
- baseTexture = new pixi_js.BaseTexture(source, scaleMode);
756
- baseTexture.imageUrl = imageUrl;
757
- if (sourceScale) {
758
- baseTexture.sourceScale = sourceScale;
759
- }
760
- pixi_js.BaseTexture.addToCache(baseTexture, imageUrl);
761
- }
762
- return baseTexture;
763
- },
764
- _a);
765
-
766
- function registerCompressedTexture(gl) {
767
- addPreProcessResourceHandler(eva_js.resource, gl);
768
- addKTXStragetyAndRegister();
769
- Object.assign(pixi_js.glCore.GLTexture.prototype, GLTextureMixin);
770
- Object.assign(pixi_js.Texture, TextureMixin);
771
- Object.assign(pixi_js.BaseTexture, BaseTextureMixin);
772
- }
773
-
774
410
  exports.RENDERER_TYPE = void 0;
775
411
  (function (RENDERER_TYPE) {
776
412
  RENDERER_TYPE[RENDERER_TYPE["UNKNOWN"] = 0] = "UNKNOWN";
@@ -778,12 +414,12 @@ exports.RENDERER_TYPE = void 0;
778
414
  RENDERER_TYPE[RENDERER_TYPE["CANVAS"] = 2] = "CANVAS";
779
415
  })(exports.RENDERER_TYPE || (exports.RENDERER_TYPE = {}));
780
416
  var disableScroll = function (renderer) {
781
- renderer.plugins.interaction.autoPreventDefault = true;
782
- renderer.view.style.touchAction = 'none';
417
+ renderer.events.autoPreventDefault = true;
418
+ renderer.canvas.style.touchAction = 'none';
783
419
  };
784
420
  var enableScroll = function (renderer) {
785
- renderer.plugins.interaction.autoPreventDefault = false;
786
- renderer.view.style.touchAction = 'auto';
421
+ renderer.events.autoPreventDefault = false;
422
+ renderer.canvas.style.touchAction = 'auto';
787
423
  };
788
424
  var Renderer$2 = (function (_super) {
789
425
  __extends(Renderer, _super);
@@ -793,42 +429,49 @@ var Renderer$2 = (function (_super) {
793
429
  return _this;
794
430
  }
795
431
  Renderer.prototype.init = function (params) {
796
- var _this = this;
797
- this.params = params;
798
- this.application = this.createApplication(params);
799
- this.containerManager = new ContainerManager$1();
800
- this.rendererManager = new RendererManager$1({
801
- game: this.game,
802
- rendererSystem: this,
803
- });
804
- this.game.canvas = this.application.view;
805
- this.transform = new Transform$1({
806
- system: this,
807
- containerManager: this.containerManager,
808
- });
809
- this.game.on('sceneChanged', function (_a) {
810
- var scene = _a.scene, mode = _a.mode, params = _a.params;
811
- var application;
812
- switch (mode) {
813
- case eva_js.LOAD_SCENE_MODE.SINGLE:
814
- application = _this.application;
815
- break;
816
- case eva_js.LOAD_SCENE_MODE.MULTI_CANVAS:
817
- application = _this.createMultiApplication({ params: params });
818
- break;
819
- }
820
- scene.canvas = application.view;
821
- _this.transform.emit('changeScene', {
822
- scene: scene,
823
- mode: mode,
824
- application: application,
432
+ return __awaiter(this, void 0, void 0, function () {
433
+ var _a;
434
+ var _this = this;
435
+ return __generator(this, function (_b) {
436
+ switch (_b.label) {
437
+ case 0:
438
+ this.params = params;
439
+ _a = this;
440
+ return [4, this.createApplication(params)];
441
+ case 1:
442
+ _a.application = _b.sent();
443
+ this.containerManager = new ContainerManager$1();
444
+ this.rendererManager = new RendererManager$1({
445
+ game: this.game,
446
+ rendererSystem: this,
447
+ });
448
+ this.game.canvas = this.application.canvas;
449
+ this.transform = new Transform$1({
450
+ system: this,
451
+ containerManager: this.containerManager,
452
+ });
453
+ this.game.on('sceneChanged', function (_a) {
454
+ var scene = _a.scene, mode = _a.mode, params = _a.params;
455
+ var application;
456
+ switch (mode) {
457
+ case eva_js.LOAD_SCENE_MODE.SINGLE:
458
+ application = _this.application;
459
+ break;
460
+ case eva_js.LOAD_SCENE_MODE.MULTI_CANVAS:
461
+ application = _this.createMultiApplication({ params: params });
462
+ break;
463
+ }
464
+ scene.canvas = application.canvas;
465
+ _this.transform.emit('changeScene', {
466
+ scene: scene,
467
+ mode: mode,
468
+ application: application,
469
+ });
470
+ });
471
+ return [2];
472
+ }
825
473
  });
826
474
  });
827
- var gl = this.application.renderer.gl;
828
- if (gl) {
829
- this.suportedCompressedTextureFormats = getSuportCompressedTextureFormats(gl);
830
- registerCompressedTexture(gl);
831
- }
832
475
  };
833
476
  Renderer.prototype.registerObserver = function (observerInfo) {
834
477
  var _a;
@@ -842,29 +485,41 @@ var Renderer$2 = (function (_super) {
842
485
  };
843
486
  Renderer.prototype.createMultiApplication = function (_a) {
844
487
  var params = _a.params;
845
- var app = this.createApplication(params);
846
- this.multiApps.push(app);
847
- return app;
488
+ return __awaiter(this, void 0, void 0, function () {
489
+ var app;
490
+ return __generator(this, function (_b) {
491
+ switch (_b.label) {
492
+ case 0: return [4, this.createApplication(params)];
493
+ case 1:
494
+ app = _b.sent();
495
+ this.multiApps.push(app);
496
+ return [2, app];
497
+ }
498
+ });
499
+ });
848
500
  };
849
501
  Renderer.prototype.createApplication = function (params) {
850
- params.view = params.canvas;
851
- if (params.renderType === exports.RENDERER_TYPE.CANVAS) {
852
- params.forceCanvas = true;
853
- }
854
- pixi_js.ticker.shared.autoStart = false;
855
- pixi_js.ticker.shared.stop();
856
- var app = new rendererAdapter.Application(__assign({ sharedTicker: true }, params));
857
- if (params.preventScroll !== undefined) {
858
- console.warn('PreventScroll property will deprecate at next major version, please use enableEnable instead. https://eva.js.org/#/tutorials/game');
859
- params.preventScroll ? enableScroll(app.renderer) : disableScroll(app.renderer);
860
- }
861
- if (params.enableScroll !== undefined) {
862
- params.enableScroll ? enableScroll(app.renderer) : disableScroll(app.renderer);
863
- }
864
- if (params.preventScroll === undefined && params.enableScroll === undefined) {
865
- enableScroll(app.renderer);
866
- }
867
- return app;
502
+ return __awaiter(this, void 0, void 0, function () {
503
+ var app;
504
+ return __generator(this, function (_a) {
505
+ switch (_a.label) {
506
+ case 0:
507
+ app = new rendererAdapter.Application();
508
+ if (params.debugMode) {
509
+ globalThis.__PIXI_APP__ = app;
510
+ }
511
+ return [4, app.init(__assign(__assign({ sharedTicker: true }, params), { hello: true }))];
512
+ case 1:
513
+ _a.sent();
514
+ pixi_js.Ticker.shared.stop();
515
+ pixi_js.Ticker.shared.autoStart = false;
516
+ if (params.enableScroll !== undefined) {
517
+ params.enableScroll ? enableScroll(app.renderer) : disableScroll(app.renderer);
518
+ }
519
+ return [2, app];
520
+ }
521
+ });
522
+ });
868
523
  };
869
524
  Renderer.prototype.update = function () {
870
525
  var e_1, _a, e_2, _b;
@@ -948,6 +603,7 @@ var Renderer = (function (_super) {
948
603
  __extends(Renderer, _super);
949
604
  function Renderer(params) {
950
605
  var _this = _super.call(this, params) || this;
606
+ _this.asyncIdMap = {};
951
607
  _this.observerInfo = _this.constructor.observerInfo;
952
608
  return _this;
953
609
  }
@@ -970,27 +626,84 @@ var Renderer = (function (_super) {
970
626
  finally { if (e_1) throw e_1.error; }
971
627
  }
972
628
  };
629
+ Renderer.prototype.increaseAsyncId = function (id) {
630
+ this.asyncIdMap[id] = (this.asyncIdMap[id] || 0) + 1;
631
+ return this.asyncIdMap[id];
632
+ };
633
+ Renderer.prototype.validateAsyncId = function (id, asyncId) {
634
+ return this.asyncIdMap[id] === asyncId;
635
+ };
973
636
  return Renderer;
974
637
  }(eva_js.System));
975
638
  var Renderer$1 = Renderer;
976
639
 
977
640
  var mixinPIXI = function () {
978
- pixi_js.BaseTexture.prototype.destroy = function () {
979
- if (this.imageUrl) {
980
- delete pixi_js.utils.TextureCache[this.imageUrl];
981
- this.imageUrl = null;
982
- }
983
- this.source = null;
984
- this.dispose();
985
- pixi_js.BaseTexture.removeFromCache(this);
986
- this.textureCacheIds = null;
987
- this._destroyed = true;
988
- };
989
641
  };
990
642
 
643
+ var result = undefined;
644
+ function getSuportCompressedTextureFormats() {
645
+ if (result)
646
+ return result;
647
+ var canvas = document.createElement('canvas');
648
+ var gl = canvas.getContext('webgl2') || canvas.getContext('webgl');
649
+ if (!gl) {
650
+ console.warn('WebGL not available for compressed textures. Silently failing.');
651
+ return {
652
+ s3tc: false,
653
+ etc: false,
654
+ etc1: false,
655
+ pvrtc: false,
656
+ atc: false,
657
+ astc: false,
658
+ };
659
+ }
660
+ result = {
661
+ s3tc: !!gl.getExtension('WEBGL_compressed_texture_s3tc'),
662
+ etc: !!gl.getExtension('WEBGL_compressed_texture_etc'),
663
+ etc1: !!gl.getExtension('WEBGL_compressed_texture_etc1'),
664
+ pvrtc: !!gl.getExtension('WEBGL_compressed_texture_pvrtc') || !!gl.getExtension('WEBKIT_WEBGL_compressed_texture_pvrtc'),
665
+ atc: !!gl.getExtension('WEBGL_compressed_texture_atc'),
666
+ astc: !!gl.getExtension('WEBGL_compressed_texture_astc'),
667
+ };
668
+ try {
669
+ console.log('Eva.js Supported Compressed Texture Format List: ' +
670
+ Object.keys(result)
671
+ .filter(function (type) { return result[type]; })
672
+ .join(', '));
673
+ }
674
+ catch (e) { }
675
+ return result;
676
+ }
677
+
678
+ function addPreProcessResourceHandler(resource) {
679
+ resource.addPreProcessResourceHandler(function normalizeResource(resource) {
680
+ var _a, _b, _c;
681
+ var textures = (_b = (_a = resource.src) === null || _a === void 0 ? void 0 : _a.image) === null || _b === void 0 ? void 0 : _b.texture;
682
+ if (!textures)
683
+ return;
684
+ if (!Array.isArray(textures)) {
685
+ textures = [textures];
686
+ }
687
+ var formats = (_c = getSuportCompressedTextureFormats()) !== null && _c !== void 0 ? _c : {};
688
+ var target = textures.find(function (texture) { return formats[texture.type]; });
689
+ if (target) {
690
+ Object.assign(resource.src.image, target);
691
+ }
692
+ });
693
+ }
694
+
695
+ function registerKtx2CompressedTexture(params) {
696
+ pixi_js.setKTXTranscoderPath(params);
697
+ pixi_js.extensions.add(pixi_js.loadKTX2);
698
+ pixi_js.extensions.add(pixi_js.resolveCompressedTextureUrl);
699
+ pixi_js.extensions.add(pixi_js.detectCompressed);
700
+ addPreProcessResourceHandler(eva_js.resource);
701
+ }
702
+
991
703
  mixinPIXI();
992
704
 
993
705
  exports.ContainerManager = ContainerManager$1;
994
706
  exports.Renderer = Renderer$1;
995
707
  exports.RendererManager = RendererManager$1;
996
708
  exports.RendererSystem = Renderer$3;
709
+ exports.registerKtx2CompressedTexture = registerKtx2CompressedTexture;