@eva/plugin-renderer 1.1.1-beta.0 → 1.1.1-fix.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/EVA.plugin.renderer.js +2052 -4659
- package/dist/EVA.plugin.renderer.min.js +2 -1
- package/dist/EVA.plugin.renderer.min.js.map +1 -0
- package/dist/plugin-renderer.cjs.js +416 -426
- package/dist/plugin-renderer.cjs.prod.js +2 -1
- package/dist/plugin-renderer.cjs.prod.js.map +1 -0
- package/dist/plugin-renderer.d.ts +0 -65
- package/dist/plugin-renderer.esm.js +413 -421
- package/package.json +4 -5
- package/dist/vite-test/dist/assets/Graphics.f535ed8f.d.ts +0 -6
- package/dist/vite-test/dist/assets/Graphics.f535ed8f.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/Sprite.703a9f94.d.ts +0 -9
- package/dist/vite-test/dist/assets/Sprite.703a9f94.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/a11y.9b3ce839.d.ts +0 -4
- package/dist/vite-test/dist/assets/a11y.9b3ce839.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/component.caf56816.d.ts +0 -4
- package/dist/vite-test/dist/assets/component.caf56816.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/compressed-texture-animation.6dcf9ab4.d.ts +0 -4
- package/dist/vite-test/dist/assets/compressed-texture-animation.6dcf9ab4.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/compressed-texture-mipmap.cc4fada9.d.ts +0 -4
- package/dist/vite-test/dist/assets/compressed-texture-mipmap.cc4fada9.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/compressed-texture.07a67c9f.d.ts +0 -4
- package/dist/vite-test/dist/assets/compressed-texture.07a67c9f.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/dragonbone.bfd80a38.d.ts +0 -4
- package/dist/vite-test/dist/assets/dragonbone.bfd80a38.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/event.0de0fd28.d.ts +0 -4
- package/dist/vite-test/dist/assets/event.0de0fd28.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/graphics.df3659e9.d.ts +0 -4
- package/dist/vite-test/dist/assets/graphics.df3659e9.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/image.9d7f7b54.d.ts +0 -4
- package/dist/vite-test/dist/assets/image.9d7f7b54.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/index.cf7bfffd.d.ts +0 -2
- package/dist/vite-test/dist/assets/index.cf7bfffd.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/loader.03643d14.d.ts +0 -4
- package/dist/vite-test/dist/assets/loader.03643d14.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/lottie.8e29b509.d.ts +0 -4
- package/dist/vite-test/dist/assets/lottie.8e29b509.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/mask.c3592934.d.ts +0 -4
- package/dist/vite-test/dist/assets/mask.c3592934.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/matter.bcb02c9e.d.ts +0 -4
- package/dist/vite-test/dist/assets/matter.bcb02c9e.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/multi-canvas.a081d481.d.ts +0 -4
- package/dist/vite-test/dist/assets/multi-canvas.a081d481.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/ninePatch.ec5000f5.d.ts +0 -4
- package/dist/vite-test/dist/assets/ninePatch.ec5000f5.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/sound.81f19bb0.d.ts +0 -4
- package/dist/vite-test/dist/assets/sound.81f19bb0.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/spine.08037e2f.d.ts +0 -4
- package/dist/vite-test/dist/assets/spine.08037e2f.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/sprite.ab61ce04.d.ts +0 -4
- package/dist/vite-test/dist/assets/sprite.ab61ce04.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/spriteAnimation.fbd1b62d.d.ts +0 -4
- package/dist/vite-test/dist/assets/spriteAnimation.fbd1b62d.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/text.3e406bba.d.ts +0 -4
- package/dist/vite-test/dist/assets/text.3e406bba.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/tilingSprite.3f09d780.d.ts +0 -4
- package/dist/vite-test/dist/assets/tilingSprite.3f09d780.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/transition.f3d6a6eb.d.ts +0 -4
- package/dist/vite-test/dist/assets/transition.f3d6a6eb.d.ts.map +0 -1
- package/dist/vite-test/dist/assets/vendor.1f31f96e.d.ts +0 -5
- package/dist/vite-test/dist/assets/vendor.1f31f96e.d.ts.map +0 -1
- package/dist/vite-test/index.d.ts +0 -2
- package/dist/vite-test/index.d.ts.map +0 -1
- package/dist/vite-test/ts/a11y.d.ts +0 -3
- package/dist/vite-test/ts/a11y.d.ts.map +0 -1
- package/dist/vite-test/ts/component.d.ts +0 -3
- package/dist/vite-test/ts/component.d.ts.map +0 -1
- package/dist/vite-test/ts/compressed-texture-animation.d.ts +0 -3
- package/dist/vite-test/ts/compressed-texture-animation.d.ts.map +0 -1
- package/dist/vite-test/ts/compressed-texture-mipmap.d.ts +0 -3
- package/dist/vite-test/ts/compressed-texture-mipmap.d.ts.map +0 -1
- package/dist/vite-test/ts/compressed-texture.d.ts +0 -3
- package/dist/vite-test/ts/compressed-texture.d.ts.map +0 -1
- package/dist/vite-test/ts/dragonbone.d.ts +0 -3
- package/dist/vite-test/ts/dragonbone.d.ts.map +0 -1
- package/dist/vite-test/ts/event.d.ts +0 -3
- package/dist/vite-test/ts/event.d.ts.map +0 -1
- package/dist/vite-test/ts/graphics.d.ts +0 -3
- package/dist/vite-test/ts/graphics.d.ts.map +0 -1
- package/dist/vite-test/ts/image.d.ts +0 -3
- package/dist/vite-test/ts/image.d.ts.map +0 -1
- package/dist/vite-test/ts/loader.d.ts +0 -3
- package/dist/vite-test/ts/loader.d.ts.map +0 -1
- package/dist/vite-test/ts/lottie.d.ts +0 -3
- package/dist/vite-test/ts/lottie.d.ts.map +0 -1
- package/dist/vite-test/ts/mask.d.ts +0 -4
- package/dist/vite-test/ts/mask.d.ts.map +0 -1
- package/dist/vite-test/ts/matter.d.ts +0 -3
- package/dist/vite-test/ts/matter.d.ts.map +0 -1
- package/dist/vite-test/ts/multi-canvas.d.ts +0 -3
- package/dist/vite-test/ts/multi-canvas.d.ts.map +0 -1
- package/dist/vite-test/ts/ninePatch.d.ts +0 -3
- package/dist/vite-test/ts/ninePatch.d.ts.map +0 -1
- package/dist/vite-test/ts/sound.d.ts +0 -3
- package/dist/vite-test/ts/sound.d.ts.map +0 -1
- package/dist/vite-test/ts/spine.d.ts +0 -3
- package/dist/vite-test/ts/spine.d.ts.map +0 -1
- package/dist/vite-test/ts/sprite.d.ts +0 -3
- package/dist/vite-test/ts/sprite.d.ts.map +0 -1
- package/dist/vite-test/ts/spriteAnimation.d.ts +0 -3
- package/dist/vite-test/ts/spriteAnimation.d.ts.map +0 -1
- package/dist/vite-test/ts/text.d.ts +0 -3
- package/dist/vite-test/ts/text.d.ts.map +0 -1
- package/dist/vite-test/ts/tilingSprite.d.ts +0 -3
- package/dist/vite-test/ts/tilingSprite.d.ts.map +0 -1
- package/dist/vite-test/ts/transition.d.ts +0 -3
- package/dist/vite-test/ts/transition.d.ts.map +0 -1
|
@@ -7,8 +7,6 @@ var rendererAdapter = require('@eva/renderer-adapter');
|
|
|
7
7
|
var isEqual = require('lodash-es/isEqual');
|
|
8
8
|
var EventEmitter = require('eventemitter3');
|
|
9
9
|
var pixi_js = require('pixi.js');
|
|
10
|
-
var resourceLoader = require('resource-loader');
|
|
11
|
-
var constants = require('@pixi/constants');
|
|
12
10
|
|
|
13
11
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
|
|
14
12
|
|
|
@@ -220,7 +218,8 @@ var RendererManager = (function () {
|
|
|
220
218
|
}
|
|
221
219
|
};
|
|
222
220
|
return RendererManager;
|
|
223
|
-
}());
|
|
221
|
+
}());
|
|
222
|
+
var RendererManager$1 = RendererManager;
|
|
224
223
|
|
|
225
224
|
var ContainerManager = (function () {
|
|
226
225
|
function ContainerManager() {
|
|
@@ -241,7 +240,7 @@ var ContainerManager = (function () {
|
|
|
241
240
|
ContainerManager.prototype.updateTransform = function (_a) {
|
|
242
241
|
var name = _a.name, transform = _a.transform;
|
|
243
242
|
var container = this.containerMap[name];
|
|
244
|
-
if (!container)
|
|
243
|
+
if (!container || !transform)
|
|
245
244
|
return;
|
|
246
245
|
var anchor = transform.anchor, origin = transform.origin, position = transform.position, rotation = transform.rotation, scale = transform.scale, size = transform.size, skew = transform.skew;
|
|
247
246
|
container.rotation = rotation;
|
|
@@ -259,7 +258,8 @@ var ContainerManager = (function () {
|
|
|
259
258
|
container.position = { x: x, y: y };
|
|
260
259
|
};
|
|
261
260
|
return ContainerManager;
|
|
262
|
-
}());
|
|
261
|
+
}());
|
|
262
|
+
var ContainerManager$1 = ContainerManager;
|
|
263
263
|
|
|
264
264
|
var Transform = (function (_super) {
|
|
265
265
|
__extends(Transform, _super);
|
|
@@ -367,206 +367,45 @@ var Transform = (function (_super) {
|
|
|
367
367
|
})
|
|
368
368
|
], Transform);
|
|
369
369
|
return Transform;
|
|
370
|
-
}(EventEmitter__default));
|
|
370
|
+
}(EventEmitter__default));
|
|
371
|
+
var Transform$1 = Transform;
|
|
371
372
|
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
};
|
|
386
|
-
var Renderer$1 = (function (_super) {
|
|
387
|
-
__extends(Renderer, _super);
|
|
388
|
-
function Renderer() {
|
|
389
|
-
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
390
|
-
_this.multiApps = [];
|
|
391
|
-
return _this;
|
|
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
|
+
};
|
|
392
387
|
}
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
});
|
|
402
|
-
this.game.canvas = this.application.view;
|
|
403
|
-
this.transform = new Transform({
|
|
404
|
-
system: this,
|
|
405
|
-
containerManager: this.containerManager,
|
|
406
|
-
});
|
|
407
|
-
this.game.on('sceneChanged', function (_a) {
|
|
408
|
-
var scene = _a.scene, mode = _a.mode, params = _a.params;
|
|
409
|
-
var application;
|
|
410
|
-
switch (mode) {
|
|
411
|
-
case eva_js.LOAD_SCENE_MODE.SINGLE:
|
|
412
|
-
application = _this.application;
|
|
413
|
-
break;
|
|
414
|
-
case eva_js.LOAD_SCENE_MODE.MULTI_CANVAS:
|
|
415
|
-
application = _this.createMultiApplication({ params: params });
|
|
416
|
-
break;
|
|
417
|
-
}
|
|
418
|
-
scene.canvas = application.view;
|
|
419
|
-
_this.transform.emit('changeScene', {
|
|
420
|
-
scene: scene,
|
|
421
|
-
mode: mode,
|
|
422
|
-
application: application,
|
|
423
|
-
});
|
|
424
|
-
});
|
|
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')
|
|
425
396
|
};
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
var thisObserverInfo = this.constructor.observerInfo;
|
|
429
|
-
for (var key in observerInfo) {
|
|
430
|
-
if (!thisObserverInfo[key]) {
|
|
431
|
-
thisObserverInfo[key] = [];
|
|
432
|
-
}
|
|
433
|
-
(_a = thisObserverInfo[key]).push.apply(_a, __spread(observerInfo[key]));
|
|
434
|
-
}
|
|
435
|
-
};
|
|
436
|
-
Renderer.prototype.createMultiApplication = function (_a) {
|
|
437
|
-
var params = _a.params;
|
|
438
|
-
var app = this.createApplication(params);
|
|
439
|
-
this.multiApps.push(app);
|
|
440
|
-
return app;
|
|
441
|
-
};
|
|
442
|
-
Renderer.prototype.createApplication = function (params) {
|
|
443
|
-
params.view = params.canvas;
|
|
444
|
-
if (params.renderType === exports.RENDERER_TYPE.CANVAS) {
|
|
445
|
-
params.forceCanvas = true;
|
|
446
|
-
}
|
|
447
|
-
pixi_js.ticker.shared.autoStart = false;
|
|
448
|
-
pixi_js.ticker.shared.stop();
|
|
449
|
-
var app = new rendererAdapter.Application(__assign({ sharedTicker: true }, params));
|
|
450
|
-
if (params.preventScroll !== undefined) {
|
|
451
|
-
console.warn('PreventScroll property will deprecate at next major version, please use enableEnable instead. https://eva.js.org/#/tutorials/game');
|
|
452
|
-
params.preventScroll ? enableScroll(app.renderer) : disableScroll(app.renderer);
|
|
453
|
-
}
|
|
454
|
-
if (params.enableScroll !== undefined) {
|
|
455
|
-
params.enableScroll ? enableScroll(app.renderer) : disableScroll(app.renderer);
|
|
456
|
-
}
|
|
457
|
-
if (params.preventScroll === undefined && params.enableScroll === undefined) {
|
|
458
|
-
enableScroll(app.renderer);
|
|
459
|
-
}
|
|
460
|
-
return app;
|
|
461
|
-
};
|
|
462
|
-
Renderer.prototype.update = function () {
|
|
463
|
-
var e_1, _a, e_2, _b;
|
|
464
|
-
var changes = this.componentObserver.clear();
|
|
465
|
-
try {
|
|
466
|
-
for (var changes_1 = __values(changes), changes_1_1 = changes_1.next(); !changes_1_1.done; changes_1_1 = changes_1.next()) {
|
|
467
|
-
var changed = changes_1_1.value;
|
|
468
|
-
this.transform.componentChanged(changed);
|
|
469
|
-
}
|
|
470
|
-
}
|
|
471
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
472
|
-
finally {
|
|
473
|
-
try {
|
|
474
|
-
if (changes_1_1 && !changes_1_1.done && (_a = changes_1.return)) _a.call(changes_1);
|
|
475
|
-
}
|
|
476
|
-
finally { if (e_1) throw e_1.error; }
|
|
477
|
-
}
|
|
478
|
-
try {
|
|
479
|
-
for (var _c = __values(this.game.gameObjects), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
480
|
-
var gameObject = _d.value;
|
|
481
|
-
this.containerManager.updateTransform({
|
|
482
|
-
name: gameObject.id,
|
|
483
|
-
transform: gameObject.transform,
|
|
484
|
-
});
|
|
485
|
-
this.rendererManager.update(gameObject);
|
|
486
|
-
}
|
|
487
|
-
}
|
|
488
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
489
|
-
finally {
|
|
490
|
-
try {
|
|
491
|
-
if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
|
|
492
|
-
}
|
|
493
|
-
finally { if (e_2) throw e_2.error; }
|
|
494
|
-
}
|
|
495
|
-
};
|
|
496
|
-
Renderer.prototype.lateUpdate = function (e) {
|
|
497
|
-
this.transform.update();
|
|
498
|
-
this.application.ticker.update(e.time);
|
|
499
|
-
};
|
|
500
|
-
Renderer.prototype.onDestroy = function () {
|
|
501
|
-
var e_3, _a;
|
|
502
|
-
this.application.destroy();
|
|
503
|
-
try {
|
|
504
|
-
for (var _b = __values(this.multiApps), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
505
|
-
var app = _c.value;
|
|
506
|
-
app && app.destroy();
|
|
507
|
-
}
|
|
508
|
-
}
|
|
509
|
-
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
510
|
-
finally {
|
|
511
|
-
try {
|
|
512
|
-
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
513
|
-
}
|
|
514
|
-
finally { if (e_3) throw e_3.error; }
|
|
515
|
-
}
|
|
516
|
-
this.transform.destroy();
|
|
517
|
-
this.transform = null;
|
|
518
|
-
this.params = null;
|
|
519
|
-
this.rendererManager = null;
|
|
520
|
-
this.containerManager = null;
|
|
521
|
-
this.application = null;
|
|
522
|
-
this.game = null;
|
|
523
|
-
this.multiApps = null;
|
|
524
|
-
};
|
|
525
|
-
Renderer.prototype.resize = function (width, height) {
|
|
526
|
-
this.params.width = width;
|
|
527
|
-
this.params.height = height;
|
|
528
|
-
this.application.renderer.resize(width, height);
|
|
529
|
-
};
|
|
530
|
-
Renderer.systemName = 'Renderer';
|
|
531
|
-
Renderer = __decorate([
|
|
532
|
-
eva_js.decorators.componentObserver({
|
|
533
|
-
Transform: ['_parent'],
|
|
534
|
-
})
|
|
535
|
-
], Renderer);
|
|
536
|
-
return Renderer;
|
|
537
|
-
}(eva_js.System));
|
|
538
|
-
|
|
539
|
-
var Renderer = (function (_super) {
|
|
540
|
-
__extends(Renderer, _super);
|
|
541
|
-
function Renderer(params) {
|
|
542
|
-
var _this = _super.call(this, params) || this;
|
|
543
|
-
_this.observerInfo = _this.constructor.observerInfo;
|
|
544
|
-
return _this;
|
|
397
|
+
try {
|
|
398
|
+
console.log('Eva.js Supported Compressed Texture Format List: ' + Object.keys(result).filter(function (type) { return result[type]; }).join(', '));
|
|
545
399
|
}
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
for (var changes_1 = __values(changes), changes_1_1 = changes_1.next(); !changes_1_1.done; changes_1_1 = changes_1.next()) {
|
|
553
|
-
var changed = changes_1_1.value;
|
|
554
|
-
this.componentChanged(changed);
|
|
555
|
-
}
|
|
556
|
-
}
|
|
557
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
558
|
-
finally {
|
|
559
|
-
try {
|
|
560
|
-
if (changes_1_1 && !changes_1_1.done && (_a = changes_1.return)) _a.call(changes_1);
|
|
561
|
-
}
|
|
562
|
-
finally { if (e_1) throw e_1.error; }
|
|
563
|
-
}
|
|
564
|
-
};
|
|
565
|
-
return Renderer;
|
|
566
|
-
}(eva_js.System));
|
|
400
|
+
catch (e) { }
|
|
401
|
+
return result;
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
var XLS = eva_js.resourceLoader.XhrLoadStrategy;
|
|
405
|
+
var XhrLoadStrategy = XLS;
|
|
567
406
|
|
|
568
|
-
var _a
|
|
569
|
-
|
|
407
|
+
var _a, _b;
|
|
408
|
+
var INTERNAL_FORMATS;
|
|
570
409
|
(function (INTERNAL_FORMATS) {
|
|
571
410
|
INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGB_S3TC_DXT1_EXT"] = 33776] = "COMPRESSED_RGB_S3TC_DXT1_EXT";
|
|
572
411
|
INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_RGBA_S3TC_DXT1_EXT"] = 33777] = "COMPRESSED_RGBA_S3TC_DXT1_EXT";
|
|
@@ -622,115 +461,87 @@ exports.INTERNAL_FORMATS = void 0;
|
|
|
622
461
|
INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR"] = 37845] = "COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR";
|
|
623
462
|
INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR"] = 37846] = "COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR";
|
|
624
463
|
INTERNAL_FORMATS[INTERNAL_FORMATS["COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR"] = 37847] = "COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR";
|
|
625
|
-
})(
|
|
626
|
-
var
|
|
627
|
-
_a
|
|
628
|
-
_a
|
|
629
|
-
_a
|
|
630
|
-
_a
|
|
631
|
-
_a
|
|
632
|
-
_a
|
|
633
|
-
_a
|
|
634
|
-
_a
|
|
635
|
-
_a
|
|
636
|
-
_a
|
|
637
|
-
_a
|
|
638
|
-
_a
|
|
639
|
-
_a
|
|
640
|
-
_a
|
|
641
|
-
_a
|
|
642
|
-
_a
|
|
643
|
-
_a
|
|
644
|
-
_a
|
|
645
|
-
_a
|
|
646
|
-
_a
|
|
647
|
-
_a
|
|
648
|
-
_a
|
|
649
|
-
_a
|
|
650
|
-
_a
|
|
651
|
-
_a
|
|
652
|
-
_a
|
|
653
|
-
_a
|
|
654
|
-
_a
|
|
655
|
-
_a
|
|
656
|
-
_a
|
|
657
|
-
_a
|
|
658
|
-
_a
|
|
659
|
-
_a
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
_b
|
|
670
|
-
_b
|
|
671
|
-
_b
|
|
672
|
-
_b
|
|
673
|
-
_b
|
|
674
|
-
_b
|
|
675
|
-
_b
|
|
676
|
-
_b
|
|
677
|
-
_b
|
|
678
|
-
_b
|
|
679
|
-
_b
|
|
680
|
-
_b
|
|
681
|
-
_b
|
|
682
|
-
_b
|
|
683
|
-
_b
|
|
684
|
-
_b
|
|
685
|
-
_b
|
|
686
|
-
_b
|
|
687
|
-
_b
|
|
688
|
-
_b
|
|
689
|
-
_b
|
|
690
|
-
_b
|
|
691
|
-
_b
|
|
692
|
-
_b
|
|
693
|
-
_b
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
console.warn('WebGL not available for compressed textures. Silently failing.');
|
|
703
|
-
return;
|
|
704
|
-
}
|
|
705
|
-
var extensions = {
|
|
706
|
-
s3tc: gl.getExtension('WEBGL_compressed_texture_s3tc'),
|
|
707
|
-
s3tc_sRGB: gl.getExtension('WEBGL_compressed_texture_s3tc_srgb'),
|
|
708
|
-
etc: gl.getExtension('WEBGL_compressed_texture_etc'),
|
|
709
|
-
etc1: gl.getExtension('WEBGL_compressed_texture_etc1'),
|
|
710
|
-
pvrtc: gl.getExtension('WEBGL_compressed_texture_pvrtc')
|
|
711
|
-
|| gl.getExtension('WEBKIT_WEBGL_compressed_texture_pvrtc'),
|
|
712
|
-
atc: gl.getExtension('WEBGL_compressed_texture_atc'),
|
|
713
|
-
astc: gl.getExtension('WEBGL_compressed_texture_astc')
|
|
714
|
-
};
|
|
715
|
-
var textureFormats = {};
|
|
716
|
-
for (var extensionName in extensions) {
|
|
717
|
-
var extension = extensions[extensionName];
|
|
718
|
-
if (!extension) {
|
|
719
|
-
continue;
|
|
720
|
-
}
|
|
721
|
-
Object.assign(textureFormats, Object.getPrototypeOf(extension));
|
|
722
|
-
}
|
|
723
|
-
var formats = Object.values(textureFormats);
|
|
724
|
-
res = {
|
|
725
|
-
extensions: extensions,
|
|
726
|
-
textureFormats: textureFormats,
|
|
727
|
-
formats: formats
|
|
728
|
-
};
|
|
729
|
-
return res;
|
|
730
|
-
}
|
|
464
|
+
})(INTERNAL_FORMATS || (INTERNAL_FORMATS = {}));
|
|
465
|
+
var INTERNAL_FORMAT_TO_BLOCK_SIZE = (_a = {},
|
|
466
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGB_S3TC_DXT1_EXT] = [4, 4],
|
|
467
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT1_EXT] = [4, 4],
|
|
468
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT3_EXT] = [4, 4],
|
|
469
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT] = [4, 4],
|
|
470
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SRGB_S3TC_DXT1_EXT] = [4, 4],
|
|
471
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT] = [4, 4],
|
|
472
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT] = [4, 4],
|
|
473
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT] = [4, 4],
|
|
474
|
+
_a[INTERNAL_FORMATS.COMPRESSED_R11_EAC] = [4, 4],
|
|
475
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SIGNED_R11_EAC] = [4, 4],
|
|
476
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RG11_EAC] = [4, 4],
|
|
477
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SIGNED_RG11_EAC] = [4, 4],
|
|
478
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGB8_ETC2] = [4, 4],
|
|
479
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA8_ETC2_EAC] = [4, 4],
|
|
480
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SRGB8_ETC2] = [4, 4],
|
|
481
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC] = [4, 4],
|
|
482
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2] = [4, 4],
|
|
483
|
+
_a[INTERNAL_FORMATS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2] = [4, 4],
|
|
484
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG] = [4, 4],
|
|
485
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG] = [4, 4],
|
|
486
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG] = [8, 4],
|
|
487
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG] = [8, 4],
|
|
488
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGB_ETC1_WEBGL] = [4, 4],
|
|
489
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGB_ATC_WEBGL] = [4, 4],
|
|
490
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL] = [4, 4],
|
|
491
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL] = [4, 4],
|
|
492
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_4x4_KHR] = [4, 4],
|
|
493
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_5x5_KHR] = [5, 5],
|
|
494
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_6x6_KHR] = [6, 6],
|
|
495
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_8x8_KHR] = [8, 8],
|
|
496
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x10_KHR] = [10, 10],
|
|
497
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_12x12_KHR] = [12, 12],
|
|
498
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x5_KHR] = [10, 5],
|
|
499
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x6_KHR] = [10, 6],
|
|
500
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_10x8_KHR] = [10, 8],
|
|
501
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_12x10_KHR] = [12, 10],
|
|
502
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_5x4_KHR] = [5, 4],
|
|
503
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_6x5_KHR] = [6, 5],
|
|
504
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_8x5_KHR] = [8, 5],
|
|
505
|
+
_a[INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_8x6_KHR] = [8, 6],
|
|
506
|
+
_a);
|
|
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);
|
|
731
541
|
|
|
732
542
|
var CompressedTextureResource = (function () {
|
|
733
543
|
function CompressedTextureResource() {
|
|
544
|
+
this.levelBuffers = [];
|
|
734
545
|
}
|
|
735
546
|
CompressedTextureResource.prototype.upload = function (gl) {
|
|
736
547
|
var levels = this.levels;
|
|
@@ -760,26 +571,7 @@ var CompressedTextureResource = (function () {
|
|
|
760
571
|
return CompressedTextureResource;
|
|
761
572
|
}());
|
|
762
573
|
|
|
763
|
-
var _a$2, _b, _c;
|
|
764
574
|
var FILE_HEADER_SIZE = 64;
|
|
765
|
-
var TYPES_TO_BYTES_PER_COMPONENT = (_a$2 = {},
|
|
766
|
-
_a$2[constants.TYPES.UNSIGNED_BYTE] = 1,
|
|
767
|
-
_a$2[constants.TYPES.UNSIGNED_SHORT] = 2,
|
|
768
|
-
_a$2[constants.TYPES.FLOAT] = 4,
|
|
769
|
-
_a$2[constants.TYPES.HALF_FLOAT] = 8,
|
|
770
|
-
_a$2);
|
|
771
|
-
var FORMATS_TO_COMPONENTS = (_b = {},
|
|
772
|
-
_b[constants.FORMATS.RGBA] = 4,
|
|
773
|
-
_b[constants.FORMATS.RGB] = 3,
|
|
774
|
-
_b[constants.FORMATS.LUMINANCE] = 1,
|
|
775
|
-
_b[constants.FORMATS.LUMINANCE_ALPHA] = 2,
|
|
776
|
-
_b[constants.FORMATS.ALPHA] = 1,
|
|
777
|
-
_b);
|
|
778
|
-
var TYPES_TO_BYTES_PER_PIXEL = (_c = {},
|
|
779
|
-
_c[constants.TYPES.UNSIGNED_SHORT_4_4_4_4] = 2,
|
|
780
|
-
_c[constants.TYPES.UNSIGNED_SHORT_5_5_5_1] = 2,
|
|
781
|
-
_c[constants.TYPES.UNSIGNED_SHORT_5_6_5] = 2,
|
|
782
|
-
_c);
|
|
783
575
|
var KTX_FIELDS = {
|
|
784
576
|
FILE_IDENTIFIER: 0,
|
|
785
577
|
ENDIANNESS: 12,
|
|
@@ -800,93 +592,63 @@ var FILE_IDENTIFIER = [0xAB, 0x4B, 0x54, 0x58, 0x20, 0x31, 0x31, 0xBB, 0x0D, 0x0
|
|
|
800
592
|
var ENDIANNESS = 0x04030201;
|
|
801
593
|
var KTXTextureResource = (function (_super) {
|
|
802
594
|
__extends(KTXTextureResource, _super);
|
|
803
|
-
function KTXTextureResource(source,
|
|
595
|
+
function KTXTextureResource(source, config) {
|
|
596
|
+
var _a;
|
|
804
597
|
var _this = _super.call(this) || this;
|
|
805
|
-
_this.src = src;
|
|
806
598
|
_this.complete = true;
|
|
599
|
+
_this.src = config.url;
|
|
807
600
|
var dataView = new DataView(source);
|
|
808
601
|
if (!validateKTX(dataView)) {
|
|
809
602
|
throw new Error('Not a valid KTX Texture');
|
|
810
603
|
}
|
|
811
604
|
var littleEndian = dataView.getUint32(KTX_FIELDS.ENDIANNESS, true) === ENDIANNESS;
|
|
812
|
-
|
|
813
|
-
var
|
|
814
|
-
var
|
|
815
|
-
var
|
|
816
|
-
|
|
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
|
+
}
|
|
817
617
|
var pixelDepth = dataView.getUint32(KTX_FIELDS.PIXEL_DEPTH, littleEndian) || 1;
|
|
818
618
|
var numberOfArrayElements = dataView.getUint32(KTX_FIELDS.NUMBER_OF_ARRAY_ELEMENTS, littleEndian) || 1;
|
|
819
619
|
var numberOfFaces = dataView.getUint32(KTX_FIELDS.NUMBER_OF_FACES, littleEndian);
|
|
820
620
|
var numberOfMipmapLevels = _this.levels = dataView.getUint32(KTX_FIELDS.NUMBER_OF_MIPMAP_LEVELS, littleEndian);
|
|
821
621
|
var bytesOfKeyValueData = dataView.getUint32(KTX_FIELDS.BYTES_OF_KEY_VALUE_DATA, littleEndian);
|
|
822
622
|
if (pixelHeight === 0 || pixelDepth !== 1) {
|
|
823
|
-
throw new Error('Only 2D textures are supported');
|
|
623
|
+
throw new Error('Only 2D textures are supported!');
|
|
824
624
|
}
|
|
825
625
|
if (numberOfFaces !== 1) {
|
|
826
|
-
throw new Error('CubeTextures are not supported
|
|
626
|
+
throw new Error('CubeTextures are not supported!');
|
|
827
627
|
}
|
|
828
628
|
if (numberOfArrayElements !== 1) {
|
|
829
|
-
throw new Error('
|
|
830
|
-
}
|
|
831
|
-
var blockWidth = 4;
|
|
832
|
-
var blockHeight = 4;
|
|
833
|
-
var alignedWidth = (pixelWidth + 3) & ~3;
|
|
834
|
-
var alignedHeight = (pixelHeight + 3) & ~3;
|
|
835
|
-
var imageBuffers = new Array(numberOfArrayElements);
|
|
836
|
-
var imagePixels = pixelWidth * pixelHeight;
|
|
837
|
-
if (glType === 0) {
|
|
838
|
-
imagePixels = alignedWidth * alignedHeight;
|
|
839
|
-
}
|
|
840
|
-
var imagePixelByteSize;
|
|
841
|
-
if (glType !== 0) {
|
|
842
|
-
if (TYPES_TO_BYTES_PER_COMPONENT[glType]) {
|
|
843
|
-
imagePixelByteSize = TYPES_TO_BYTES_PER_COMPONENT[glType] * FORMATS_TO_COMPONENTS[glFormat];
|
|
844
|
-
}
|
|
845
|
-
else {
|
|
846
|
-
imagePixelByteSize = TYPES_TO_BYTES_PER_PIXEL[glType];
|
|
847
|
-
}
|
|
848
|
-
}
|
|
849
|
-
else {
|
|
850
|
-
imagePixelByteSize = INTERNAL_FORMAT_TO_BYTES_PER_PIXEL[glInternalFormat];
|
|
629
|
+
throw new Error('It does not support array textures!');
|
|
851
630
|
}
|
|
852
|
-
if (imagePixelByteSize === undefined) {
|
|
853
|
-
throw new Error('Unable to resolve the pixel format stored in the *.ktx file!');
|
|
854
|
-
}
|
|
855
|
-
var imageByteSize = imagePixels * imagePixelByteSize;
|
|
856
|
-
var mipByteSize = imageByteSize;
|
|
857
631
|
var mipWidth = pixelWidth;
|
|
858
632
|
var mipHeight = pixelHeight;
|
|
859
|
-
var alignedMipWidth = alignedWidth;
|
|
860
|
-
var alignedMipHeight = alignedHeight;
|
|
861
633
|
var imageOffset = FILE_HEADER_SIZE + bytesOfKeyValueData;
|
|
862
634
|
for (var mipmapLevel = 0; mipmapLevel < numberOfMipmapLevels; mipmapLevel++) {
|
|
863
635
|
var imageSize = dataView.getUint32(imageOffset, littleEndian);
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
}
|
|
878
|
-
imageOffset += imageSize + 4;
|
|
879
|
-
imageOffset = imageOffset % 4 !== 0 ? imageOffset + 4 - (imageOffset % 4) : imageOffset;
|
|
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);
|
|
880
649
|
mipWidth = (mipWidth >> 1) || 1;
|
|
881
650
|
mipHeight = (mipHeight >> 1) || 1;
|
|
882
|
-
alignedMipWidth = (mipWidth + blockWidth - 1) & ~(blockWidth - 1);
|
|
883
|
-
alignedMipHeight = (mipHeight + blockHeight - 1) & ~(blockHeight - 1);
|
|
884
|
-
mipByteSize = alignedMipWidth * alignedMipHeight * imagePixelByteSize;
|
|
885
|
-
}
|
|
886
|
-
if (glType !== 0) {
|
|
887
|
-
throw new Error('TODO: Uncompressed');
|
|
888
651
|
}
|
|
889
|
-
_this.levelBuffers = imageBuffers[0];
|
|
890
652
|
return _this;
|
|
891
653
|
}
|
|
892
654
|
return KTXTextureResource;
|
|
@@ -906,37 +668,38 @@ var KTXLoadStrategy = (function (_super) {
|
|
|
906
668
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
907
669
|
}
|
|
908
670
|
KTXLoadStrategy.prototype._complete = function (type, data) {
|
|
909
|
-
_super.prototype._complete.call(this, type, new KTXTextureResource(data, this.config
|
|
671
|
+
_super.prototype._complete.call(this, type, new KTXTextureResource(data, this.config));
|
|
910
672
|
};
|
|
911
673
|
return KTXLoadStrategy;
|
|
912
|
-
}(
|
|
674
|
+
}(XhrLoadStrategy));
|
|
675
|
+
var KTXLoadStrategy$1 = KTXLoadStrategy;
|
|
913
676
|
|
|
914
|
-
|
|
677
|
+
var XhrResponseType = eva_js.resourceLoader.XhrResponseType;
|
|
678
|
+
function addPreProcessResourceHandler(resource, gl) {
|
|
915
679
|
resource.addPreProcessResourceHandler(function normalizeResource(resource) {
|
|
916
|
-
var _a, _b;
|
|
680
|
+
var _a, _b, _c;
|
|
917
681
|
var textures = (_b = (_a = resource.src) === null || _a === void 0 ? void 0 : _a.image) === null || _b === void 0 ? void 0 : _b.texture;
|
|
918
682
|
if (!textures)
|
|
919
683
|
return;
|
|
920
684
|
if (!Array.isArray(textures)) {
|
|
921
685
|
textures = [textures];
|
|
922
686
|
}
|
|
923
|
-
var
|
|
924
|
-
var target = textures.find(function (texture) { return
|
|
687
|
+
var formats = (_c = getSuportCompressedTextureFormats(gl)) !== null && _c !== void 0 ? _c : {};
|
|
688
|
+
var target = textures.find(function (texture) { return formats[texture.type]; });
|
|
925
689
|
if (target) {
|
|
926
|
-
resource.src.image
|
|
927
|
-
resource.src.image.type = target.type;
|
|
690
|
+
Object.assign(resource.src.image, target);
|
|
928
691
|
}
|
|
929
692
|
});
|
|
930
693
|
}
|
|
931
694
|
function addKTXStragetyAndRegister() {
|
|
932
|
-
Object.assign(eva_js.
|
|
933
|
-
astc: KTXLoadStrategy,
|
|
934
|
-
etc: KTXLoadStrategy,
|
|
935
|
-
pvrtc: KTXLoadStrategy,
|
|
936
|
-
s3tc: KTXLoadStrategy,
|
|
937
|
-
atc: KTXLoadStrategy,
|
|
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,
|
|
938
701
|
});
|
|
939
|
-
KTXLoadStrategy.setExtensionXhrType('ktx',
|
|
702
|
+
KTXLoadStrategy$1.setExtensionXhrType('ktx', XhrResponseType.Buffer);
|
|
940
703
|
}
|
|
941
704
|
|
|
942
705
|
var GLTexture = pixi_js.glCore.GLTexture;
|
|
@@ -966,25 +729,21 @@ var GLTextureMixin = {
|
|
|
966
729
|
}
|
|
967
730
|
};
|
|
968
731
|
|
|
969
|
-
var
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
_a$1[oldFrom$1] = pixi_js.Texture.from,
|
|
973
|
-
_a$1.from = function (source) {
|
|
732
|
+
var TextureMixin = {
|
|
733
|
+
oldFrom: pixi_js.Texture.from,
|
|
734
|
+
from: function (source) {
|
|
974
735
|
if (!(source instanceof CompressedTextureResource)) {
|
|
975
|
-
return this
|
|
736
|
+
return this.oldFrom(source);
|
|
976
737
|
}
|
|
977
738
|
return new pixi_js.Texture(pixi_js.BaseTexture.from(source));
|
|
978
|
-
}
|
|
979
|
-
|
|
739
|
+
}
|
|
740
|
+
};
|
|
980
741
|
|
|
981
|
-
var
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
_a[oldFrom] = pixi_js.BaseTexture.from,
|
|
985
|
-
_a.from = function (source, scaleMode, sourceScale) {
|
|
742
|
+
var BaseTextureMixin = {
|
|
743
|
+
oldFrom: pixi_js.BaseTexture.from,
|
|
744
|
+
from: function (source, scaleMode, sourceScale) {
|
|
986
745
|
if (!(source instanceof CompressedTextureResource)) {
|
|
987
|
-
return this
|
|
746
|
+
return this.oldFrom(source, scaleMode, sourceScale);
|
|
988
747
|
}
|
|
989
748
|
var imageUrl = source.src;
|
|
990
749
|
var baseTexture = pixi_js.utils.BaseTextureCache[imageUrl];
|
|
@@ -997,22 +756,253 @@ var BaseTextureMixin = (_a = {},
|
|
|
997
756
|
pixi_js.BaseTexture.addToCache(baseTexture, imageUrl);
|
|
998
757
|
}
|
|
999
758
|
return baseTexture;
|
|
1000
|
-
}
|
|
1001
|
-
|
|
759
|
+
}
|
|
760
|
+
};
|
|
1002
761
|
|
|
1003
|
-
function registerCompressedTexture() {
|
|
1004
|
-
addPreProcessResourceHandler(eva_js.resource);
|
|
762
|
+
function registerCompressedTexture(gl) {
|
|
763
|
+
addPreProcessResourceHandler(eva_js.resource, gl);
|
|
1005
764
|
addKTXStragetyAndRegister();
|
|
1006
765
|
Object.assign(pixi_js.glCore.GLTexture.prototype, GLTextureMixin);
|
|
1007
766
|
Object.assign(pixi_js.Texture, TextureMixin);
|
|
1008
767
|
Object.assign(pixi_js.BaseTexture, BaseTextureMixin);
|
|
1009
768
|
}
|
|
1010
769
|
|
|
1011
|
-
|
|
770
|
+
exports.RENDERER_TYPE = void 0;
|
|
771
|
+
(function (RENDERER_TYPE) {
|
|
772
|
+
RENDERER_TYPE[RENDERER_TYPE["UNKNOWN"] = 0] = "UNKNOWN";
|
|
773
|
+
RENDERER_TYPE[RENDERER_TYPE["WEBGL"] = 1] = "WEBGL";
|
|
774
|
+
RENDERER_TYPE[RENDERER_TYPE["CANVAS"] = 2] = "CANVAS";
|
|
775
|
+
})(exports.RENDERER_TYPE || (exports.RENDERER_TYPE = {}));
|
|
776
|
+
var disableScroll = function (renderer) {
|
|
777
|
+
renderer.plugins.interaction.autoPreventDefault = true;
|
|
778
|
+
renderer.view.style.touchAction = 'none';
|
|
779
|
+
};
|
|
780
|
+
var enableScroll = function (renderer) {
|
|
781
|
+
renderer.plugins.interaction.autoPreventDefault = false;
|
|
782
|
+
renderer.view.style.touchAction = 'auto';
|
|
783
|
+
};
|
|
784
|
+
var Renderer$2 = (function (_super) {
|
|
785
|
+
__extends(Renderer, _super);
|
|
786
|
+
function Renderer() {
|
|
787
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
788
|
+
_this.multiApps = [];
|
|
789
|
+
return _this;
|
|
790
|
+
}
|
|
791
|
+
Renderer.prototype.init = function (params) {
|
|
792
|
+
var _this = this;
|
|
793
|
+
this.params = params;
|
|
794
|
+
this.application = this.createApplication(params);
|
|
795
|
+
this.containerManager = new ContainerManager$1();
|
|
796
|
+
this.rendererManager = new RendererManager$1({
|
|
797
|
+
game: this.game,
|
|
798
|
+
rendererSystem: this,
|
|
799
|
+
});
|
|
800
|
+
this.game.canvas = this.application.view;
|
|
801
|
+
this.transform = new Transform$1({
|
|
802
|
+
system: this,
|
|
803
|
+
containerManager: this.containerManager,
|
|
804
|
+
});
|
|
805
|
+
this.game.on('sceneChanged', function (_a) {
|
|
806
|
+
var scene = _a.scene, mode = _a.mode, params = _a.params;
|
|
807
|
+
var application;
|
|
808
|
+
switch (mode) {
|
|
809
|
+
case eva_js.LOAD_SCENE_MODE.SINGLE:
|
|
810
|
+
application = _this.application;
|
|
811
|
+
break;
|
|
812
|
+
case eva_js.LOAD_SCENE_MODE.MULTI_CANVAS:
|
|
813
|
+
application = _this.createMultiApplication({ params: params });
|
|
814
|
+
break;
|
|
815
|
+
}
|
|
816
|
+
scene.canvas = application.view;
|
|
817
|
+
_this.transform.emit('changeScene', {
|
|
818
|
+
scene: scene,
|
|
819
|
+
mode: mode,
|
|
820
|
+
application: application,
|
|
821
|
+
});
|
|
822
|
+
});
|
|
823
|
+
var gl = this.application.renderer.gl;
|
|
824
|
+
if (gl) {
|
|
825
|
+
this.suportedCompressedTextureFormats = getSuportCompressedTextureFormats(gl);
|
|
826
|
+
registerCompressedTexture(gl);
|
|
827
|
+
}
|
|
828
|
+
};
|
|
829
|
+
Renderer.prototype.registerObserver = function (observerInfo) {
|
|
830
|
+
var _a;
|
|
831
|
+
var thisObserverInfo = this.constructor.observerInfo;
|
|
832
|
+
for (var key in observerInfo) {
|
|
833
|
+
if (!thisObserverInfo[key]) {
|
|
834
|
+
thisObserverInfo[key] = [];
|
|
835
|
+
}
|
|
836
|
+
(_a = thisObserverInfo[key]).push.apply(_a, __spread(observerInfo[key]));
|
|
837
|
+
}
|
|
838
|
+
};
|
|
839
|
+
Renderer.prototype.createMultiApplication = function (_a) {
|
|
840
|
+
var params = _a.params;
|
|
841
|
+
var app = this.createApplication(params);
|
|
842
|
+
this.multiApps.push(app);
|
|
843
|
+
return app;
|
|
844
|
+
};
|
|
845
|
+
Renderer.prototype.createApplication = function (params) {
|
|
846
|
+
params.view = params.canvas;
|
|
847
|
+
if (params.renderType === exports.RENDERER_TYPE.CANVAS) {
|
|
848
|
+
params.forceCanvas = true;
|
|
849
|
+
}
|
|
850
|
+
var app;
|
|
851
|
+
try {
|
|
852
|
+
app = new rendererAdapter.Application(__assign({ sharedTicker: true }, params));
|
|
853
|
+
}
|
|
854
|
+
catch (e) {
|
|
855
|
+
if (e.message.match(/not support webgl/i) !== undefined) {
|
|
856
|
+
app = new rendererAdapter.Application(__assign(__assign({ sharedTicker: true }, params), { forceCanvas: true }));
|
|
857
|
+
}
|
|
858
|
+
}
|
|
859
|
+
pixi_js.ticker.shared.stop();
|
|
860
|
+
pixi_js.ticker.shared.autoStart = false;
|
|
861
|
+
if (params.preventScroll !== undefined) {
|
|
862
|
+
console.warn('PreventScroll property will deprecate at next major version, please use enableEnable instead. https://eva.js.org/#/tutorials/game');
|
|
863
|
+
params.preventScroll ? enableScroll(app.renderer) : disableScroll(app.renderer);
|
|
864
|
+
}
|
|
865
|
+
if (params.enableScroll !== undefined) {
|
|
866
|
+
params.enableScroll ? enableScroll(app.renderer) : disableScroll(app.renderer);
|
|
867
|
+
}
|
|
868
|
+
if (params.preventScroll === undefined && params.enableScroll === undefined) {
|
|
869
|
+
enableScroll(app.renderer);
|
|
870
|
+
}
|
|
871
|
+
return app;
|
|
872
|
+
};
|
|
873
|
+
Renderer.prototype.update = function () {
|
|
874
|
+
var e_1, _a, e_2, _b;
|
|
875
|
+
var changes = this.componentObserver.clear();
|
|
876
|
+
try {
|
|
877
|
+
for (var changes_1 = __values(changes), changes_1_1 = changes_1.next(); !changes_1_1.done; changes_1_1 = changes_1.next()) {
|
|
878
|
+
var changed = changes_1_1.value;
|
|
879
|
+
this.transform.componentChanged(changed);
|
|
880
|
+
}
|
|
881
|
+
}
|
|
882
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
883
|
+
finally {
|
|
884
|
+
try {
|
|
885
|
+
if (changes_1_1 && !changes_1_1.done && (_a = changes_1.return)) _a.call(changes_1);
|
|
886
|
+
}
|
|
887
|
+
finally { if (e_1) throw e_1.error; }
|
|
888
|
+
}
|
|
889
|
+
try {
|
|
890
|
+
for (var _c = __values(this.game.gameObjects), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
891
|
+
var gameObject = _d.value;
|
|
892
|
+
this.containerManager.updateTransform({
|
|
893
|
+
name: gameObject.id,
|
|
894
|
+
transform: gameObject.transform,
|
|
895
|
+
});
|
|
896
|
+
this.rendererManager.update(gameObject);
|
|
897
|
+
}
|
|
898
|
+
}
|
|
899
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
900
|
+
finally {
|
|
901
|
+
try {
|
|
902
|
+
if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
|
|
903
|
+
}
|
|
904
|
+
finally { if (e_2) throw e_2.error; }
|
|
905
|
+
}
|
|
906
|
+
};
|
|
907
|
+
Renderer.prototype.lateUpdate = function (e) {
|
|
908
|
+
this.transform.update();
|
|
909
|
+
this.application.ticker.update(e.time);
|
|
910
|
+
};
|
|
911
|
+
Renderer.prototype.onDestroy = function () {
|
|
912
|
+
var e_3, _a;
|
|
913
|
+
this.application.destroy();
|
|
914
|
+
try {
|
|
915
|
+
for (var _b = __values(this.multiApps), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
916
|
+
var app = _c.value;
|
|
917
|
+
app && app.destroy();
|
|
918
|
+
}
|
|
919
|
+
}
|
|
920
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
921
|
+
finally {
|
|
922
|
+
try {
|
|
923
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
924
|
+
}
|
|
925
|
+
finally { if (e_3) throw e_3.error; }
|
|
926
|
+
}
|
|
927
|
+
this.transform.destroy();
|
|
928
|
+
this.transform = null;
|
|
929
|
+
this.params = null;
|
|
930
|
+
this.rendererManager = null;
|
|
931
|
+
this.containerManager = null;
|
|
932
|
+
this.application = null;
|
|
933
|
+
this.game = null;
|
|
934
|
+
this.multiApps = null;
|
|
935
|
+
};
|
|
936
|
+
Renderer.prototype.resize = function (width, height) {
|
|
937
|
+
this.params.width = width;
|
|
938
|
+
this.params.height = height;
|
|
939
|
+
this.application.renderer.resize(width, height);
|
|
940
|
+
};
|
|
941
|
+
Renderer.systemName = 'Renderer';
|
|
942
|
+
Renderer = __decorate([
|
|
943
|
+
eva_js.decorators.componentObserver({
|
|
944
|
+
Transform: ['_parent'],
|
|
945
|
+
})
|
|
946
|
+
], Renderer);
|
|
947
|
+
return Renderer;
|
|
948
|
+
}(eva_js.System));
|
|
949
|
+
var Renderer$3 = Renderer$2;
|
|
950
|
+
|
|
951
|
+
var Renderer = (function (_super) {
|
|
952
|
+
__extends(Renderer, _super);
|
|
953
|
+
function Renderer(params) {
|
|
954
|
+
var _this = _super.call(this, params) || this;
|
|
955
|
+
_this.asyncIdMap = {};
|
|
956
|
+
_this.observerInfo = _this.constructor.observerInfo;
|
|
957
|
+
return _this;
|
|
958
|
+
}
|
|
959
|
+
Renderer.prototype.componentChanged = function (_changed) { };
|
|
960
|
+
Renderer.prototype.rendererUpdate = function (_gameObject) { };
|
|
961
|
+
Renderer.prototype.update = function (e) {
|
|
962
|
+
var e_1, _a;
|
|
963
|
+
var changes = this.componentObserver.clear();
|
|
964
|
+
try {
|
|
965
|
+
for (var changes_1 = __values(changes), changes_1_1 = changes_1.next(); !changes_1_1.done; changes_1_1 = changes_1.next()) {
|
|
966
|
+
var changed = changes_1_1.value;
|
|
967
|
+
this.componentChanged(changed);
|
|
968
|
+
}
|
|
969
|
+
}
|
|
970
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
971
|
+
finally {
|
|
972
|
+
try {
|
|
973
|
+
if (changes_1_1 && !changes_1_1.done && (_a = changes_1.return)) _a.call(changes_1);
|
|
974
|
+
}
|
|
975
|
+
finally { if (e_1) throw e_1.error; }
|
|
976
|
+
}
|
|
977
|
+
};
|
|
978
|
+
Renderer.prototype.increaseAsyncId = function (id) {
|
|
979
|
+
this.asyncIdMap[id] = (this.asyncIdMap[id] || 0) + 1;
|
|
980
|
+
return this.asyncIdMap[id];
|
|
981
|
+
};
|
|
982
|
+
Renderer.prototype.validateAsyncId = function (id, asyncId) {
|
|
983
|
+
return this.asyncIdMap[id] === asyncId;
|
|
984
|
+
};
|
|
985
|
+
return Renderer;
|
|
986
|
+
}(eva_js.System));
|
|
987
|
+
var Renderer$1 = Renderer;
|
|
988
|
+
|
|
989
|
+
var mixinPIXI = function () {
|
|
990
|
+
pixi_js.BaseTexture.prototype.destroy = function () {
|
|
991
|
+
if (this.imageUrl) {
|
|
992
|
+
delete pixi_js.utils.TextureCache[this.imageUrl];
|
|
993
|
+
this.imageUrl = null;
|
|
994
|
+
}
|
|
995
|
+
this.source = null;
|
|
996
|
+
this.dispose();
|
|
997
|
+
pixi_js.BaseTexture.removeFromCache(this);
|
|
998
|
+
this.textureCacheIds = null;
|
|
999
|
+
this._destroyed = true;
|
|
1000
|
+
};
|
|
1001
|
+
};
|
|
1002
|
+
|
|
1003
|
+
mixinPIXI();
|
|
1012
1004
|
|
|
1013
|
-
exports.ContainerManager = ContainerManager;
|
|
1014
|
-
exports.
|
|
1015
|
-
exports.
|
|
1016
|
-
exports.
|
|
1017
|
-
exports.RendererManager = RendererManager;
|
|
1018
|
-
exports.RendererSystem = Renderer$1;
|
|
1005
|
+
exports.ContainerManager = ContainerManager$1;
|
|
1006
|
+
exports.Renderer = Renderer$1;
|
|
1007
|
+
exports.RendererManager = RendererManager$1;
|
|
1008
|
+
exports.RendererSystem = Renderer$3;
|