@eva/plugin-renderer-mesh 2.0.2 → 2.1.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.
@@ -3,39 +3,6 @@ globalThis.EVA.plugin = globalThis.EVA.plugin || {};
3
3
  globalThis.EVA.plugin.renderer = globalThis.EVA.plugin.renderer || {};
4
4
  var _EVA_IIFE_mesh = function (exports, eva_js, pluginRenderer, pixi_js) {
5
5
  'use strict';
6
- class PerspectiveMesh extends eva_js.Component {
7
- constructor() {
8
- super(...arguments);
9
- this.verticesX = 10;
10
- this.verticesY = 10;
11
- this._forceUpdate = 0;
12
- }
13
- init(obj) {
14
- if (obj && obj.resource) {
15
- this.resource = obj.resource;
16
- }
17
- if (obj && obj.verticesX) {
18
- this.verticesX = obj.verticesX;
19
- }
20
- if (obj && obj.verticesY) {
21
- this.verticesY = obj.verticesY;
22
- }
23
- }
24
- setCorners(x0, y0, x1, y1, x2, y2, x3, y3) {
25
- const corners = this.corners || {};
26
- corners.x0 = x0;
27
- corners.y0 = y0;
28
- corners.x1 = x1;
29
- corners.y1 = y1;
30
- corners.x2 = x2;
31
- corners.y2 = y2;
32
- corners.x3 = x3;
33
- corners.y3 = y3;
34
- this.corners = corners;
35
- this._forceUpdate += 1;
36
- }
37
- }
38
- PerspectiveMesh.componentName = 'PerspectiveMesh';
39
6
  function __decorate(decorators, target, key, desc) {
40
7
  var c = arguments.length,
41
8
  r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
@@ -43,6 +10,9 @@ var _EVA_IIFE_mesh = function (exports, eva_js, pluginRenderer, pixi_js) {
43
10
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
44
11
  return c > 3 && r && Object.defineProperty(target, key, r), r;
45
12
  }
13
+ function __metadata(metadataKey, metadataValue) {
14
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
15
+ }
46
16
  function __awaiter(thisArg, _arguments, P, generator) {
47
17
  function adopt(value) {
48
18
  return value instanceof P ? value : new P(function (resolve) {
@@ -70,6 +40,55 @@ var _EVA_IIFE_mesh = function (exports, eva_js, pluginRenderer, pixi_js) {
70
40
  step((generator = generator.apply(thisArg, _arguments || [])).next());
71
41
  });
72
42
  }
43
+ class CornersMetadata {}
44
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "x0", void 0);
45
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "y0", void 0);
46
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "x1", void 0);
47
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "y1", void 0);
48
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "x2", void 0);
49
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "y2", void 0);
50
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "x3", void 0);
51
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Number)], CornersMetadata.prototype, "y3", void 0);
52
+ class PerspectiveMesh extends eva_js.Component {
53
+ constructor() {
54
+ super(...arguments);
55
+ this.verticesX = 10;
56
+ this.verticesY = 10;
57
+ this._forceUpdate = 0;
58
+ }
59
+ init(obj) {
60
+ if (obj && obj.resource) {
61
+ this.resource = obj.resource;
62
+ }
63
+ if (obj && obj.verticesX) {
64
+ this.verticesX = obj.verticesX;
65
+ }
66
+ if (obj && obj.verticesY) {
67
+ this.verticesY = obj.verticesY;
68
+ }
69
+ if (obj && obj.corners) {
70
+ this.corners = obj.corners;
71
+ }
72
+ }
73
+ setCorners(x0, y0, x1, y1, x2, y2, x3, y3) {
74
+ const corners = this.corners || {};
75
+ corners.x0 = x0;
76
+ corners.y0 = y0;
77
+ corners.x1 = x1;
78
+ corners.y1 = y1;
79
+ corners.x2 = x2;
80
+ corners.y2 = y2;
81
+ corners.x3 = x3;
82
+ corners.y3 = y3;
83
+ this.corners = corners;
84
+ this._forceUpdate += 1;
85
+ }
86
+ }
87
+ PerspectiveMesh.componentName = 'PerspectiveMesh';
88
+ __decorate([eva_js.type('string'), __metadata("design:type", String)], PerspectiveMesh.prototype, "resource", void 0);
89
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Object)], PerspectiveMesh.prototype, "verticesX", void 0);
90
+ __decorate([eva_js.type('number'), eva_js.step(1), __metadata("design:type", Object)], PerspectiveMesh.prototype, "verticesY", void 0);
91
+ __decorate([eva_js.Field(() => CornersMetadata), __metadata("design:type", Object)], PerspectiveMesh.prototype, "corners", void 0);
73
92
  let MeshSystem = class MeshSystem extends pluginRenderer.Renderer {
74
93
  constructor() {
75
94
  super(...arguments);
@@ -1 +1 @@
1
- globalThis.EVA=globalThis.EVA||{},globalThis.EVA.plugin=globalThis.EVA.plugin||{},globalThis.EVA.plugin.renderer=globalThis.EVA.plugin.renderer||{};var _EVA_IIFE_mesh=function(e,r,s,t){"use strict";class n extends r.Component{constructor(){super(...arguments),this.verticesX=10,this.verticesY=10,this._forceUpdate=0}init(e){e&&e.resource&&(this.resource=e.resource),e&&e.verticesX&&(this.verticesX=e.verticesX),e&&e.verticesY&&(this.verticesY=e.verticesY)}setCorners(e,r,s,t,n,i,o,c){const a=this.corners||{};a.x0=e,a.y0=r,a.x1=s,a.y1=t,a.x2=n,a.y2=i,a.x3=o,a.y3=c,this.corners=a,this._forceUpdate+=1}}function i(e,r,s,t){return new(s||(s=Promise))(function(n,i){function o(e){try{a(t.next(e))}catch(e){i(e)}}function c(e){try{a(t.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?n(e.value):(r=e.value,r instanceof s?r:new s(function(e){e(r)})).then(o,c)}a((t=t.apply(e,r||[])).next())})}n.componentName="PerspectiveMesh";let o=class extends s.Renderer{constructor(){super(...arguments),this.name="MeshSystem",this.meshes={}}init(){this.renderSystem=this.game.getSystem(s.RendererSystem),this.renderSystem.rendererManager.register(this)}componentChanged(e){var s,n;return i(this,void 0,void 0,function*(){if("PerspectiveMesh"===e.componentName){const i=e.gameObject.id,o=e.component;if(e.type===r.OBSERVER_TYPE.ADD){const n=new t.PerspectiveMesh({texture:new t.Texture,verticesX:o.verticesX,verticesY:o.verticesY});this.meshes[e.gameObject.id]=n,this.containerManager.getContainer(e.gameObject.id).addChildAt(n,0);const c=this.increaseAsyncId(i),a=yield r.resource.getResource(o.resource),h=null===(s=a.data)||void 0===s?void 0:s.image;if(!this.validateAsyncId(i,c))return;if(!h)return void console.error(`GameObject:${e.gameObject.name}'s Mesh resource load error`);n.texture=h,o.corners?this.meshes[e.gameObject.id].setCorners(o.corners.x0,o.corners.y0,o.corners.x1,o.corners.y1,o.corners.x2,o.corners.y2,o.corners.x3,o.corners.y3):n.setCorners(0,0,h.width,0,h.width,h.height,0,h.height)}else if(e.type===r.OBSERVER_TYPE.CHANGE){const s=this.increaseAsyncId(i),t=yield r.resource.getResource(o.resource),c=null===(n=t.data)||void 0===n?void 0:n.image;if(!this.validateAsyncId(i,s))return;if(!c)return void console.error(`GameObject:${e.gameObject.name}'s Mesh resource load error`);this.meshes[e.gameObject.id].texture=c,o.corners&&this.meshes[e.gameObject.id].setCorners(o.corners.x0,o.corners.y0,o.corners.x1,o.corners.y1,o.corners.x2,o.corners.y2,o.corners.x3,o.corners.y3)}else if(e.type===r.OBSERVER_TYPE.REMOVE){this.increaseAsyncId(i);const r=this.meshes[e.gameObject.id];this.containerManager.getContainer(e.gameObject.id).removeChild(r),r.destroy(),delete this.meshes[e.gameObject.id]}}})}destroy(){var e,r;for(const s in this.meshes){const t=this.meshes[s];null===(r=null===(e=this.containerManager)||void 0===e?void 0:e.getContainer(parseInt(s)))||void 0===r||r.removeChild(t),t.destroy(),delete this.meshes[s]}}};o.systemName="MeshSystem",o=function(e,r,s,t){var n,i=arguments.length,o=i<3?r:null===t?t=Object.getOwnPropertyDescriptor(r,s):t;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,r,s,t);else for(var c=e.length-1;c>=0;c--)(n=e[c])&&(o=(i<3?n(o):i>3?n(r,s,o):n(r,s))||o);return i>3&&o&&Object.defineProperty(r,s,o),o}([r.decorators.componentObserver({PerspectiveMesh:["resource","_forceUpdate"]})],o);var c=o;return e.MeshSystem=c,e.PerspectiveMesh=n,Object.defineProperty(e,"__esModule",{value:!0}),e}({},EVA,EVA.plugin.renderer,PIXI);globalThis.EVA.plugin.renderer.mesh=globalThis.EVA.plugin.renderer.mesh||_EVA_IIFE_mesh;
1
+ globalThis.EVA=globalThis.EVA||{},globalThis.EVA.plugin=globalThis.EVA.plugin||{},globalThis.EVA.plugin.renderer=globalThis.EVA.plugin.renderer||{};var _EVA_IIFE_mesh=function(e,t,r,s){"use strict";function n(e,t,r,s){var n,o=arguments.length,i=o<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,r):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,s);else for(var c=e.length-1;c>=0;c--)(n=e[c])&&(i=(o<3?n(i):o>3?n(t,r,i):n(t,r))||i);return o>3&&i&&Object.defineProperty(t,r,i),i}function o(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function i(e,t,r,s){return new(r||(r=Promise))(function(n,o){function i(e){try{d(s.next(e))}catch(e){o(e)}}function c(e){try{d(s.throw(e))}catch(e){o(e)}}function d(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r(function(e){e(t)})).then(i,c)}d((s=s.apply(e,t||[])).next())})}class c{}n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"x0",void 0),n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"y0",void 0),n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"x1",void 0),n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"y1",void 0),n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"x2",void 0),n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"y2",void 0),n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"x3",void 0),n([t.type("number"),t.step(1),o("design:type",Number)],c.prototype,"y3",void 0);class d extends t.Component{constructor(){super(...arguments),this.verticesX=10,this.verticesY=10,this._forceUpdate=0}init(e){e&&e.resource&&(this.resource=e.resource),e&&e.verticesX&&(this.verticesX=e.verticesX),e&&e.verticesY&&(this.verticesY=e.verticesY),e&&e.corners&&(this.corners=e.corners)}setCorners(e,t,r,s,n,o,i,c){const d=this.corners||{};d.x0=e,d.y0=t,d.x1=r,d.y1=s,d.x2=n,d.y2=o,d.x3=i,d.y3=c,this.corners=d,this._forceUpdate+=1}}d.componentName="PerspectiveMesh",n([t.type("string"),o("design:type",String)],d.prototype,"resource",void 0),n([t.type("number"),t.step(1),o("design:type",Object)],d.prototype,"verticesX",void 0),n([t.type("number"),t.step(1),o("design:type",Object)],d.prototype,"verticesY",void 0),n([t.Field(()=>c),o("design:type",Object)],d.prototype,"corners",void 0);let p=class extends r.Renderer{constructor(){super(...arguments),this.name="MeshSystem",this.meshes={}}init(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)}componentChanged(e){var r,n;return i(this,void 0,void 0,function*(){if("PerspectiveMesh"===e.componentName){const o=e.gameObject.id,i=e.component;if(e.type===t.OBSERVER_TYPE.ADD){const n=new s.PerspectiveMesh({texture:new s.Texture,verticesX:i.verticesX,verticesY:i.verticesY});this.meshes[e.gameObject.id]=n,this.containerManager.getContainer(e.gameObject.id).addChildAt(n,0);const c=this.increaseAsyncId(o),d=yield t.resource.getResource(i.resource),p=null===(r=d.data)||void 0===r?void 0:r.image;if(!this.validateAsyncId(o,c))return;if(!p)return void console.error(`GameObject:${e.gameObject.name}'s Mesh resource load error`);n.texture=p,i.corners?this.meshes[e.gameObject.id].setCorners(i.corners.x0,i.corners.y0,i.corners.x1,i.corners.y1,i.corners.x2,i.corners.y2,i.corners.x3,i.corners.y3):n.setCorners(0,0,p.width,0,p.width,p.height,0,p.height)}else if(e.type===t.OBSERVER_TYPE.CHANGE){const r=this.increaseAsyncId(o),s=yield t.resource.getResource(i.resource),c=null===(n=s.data)||void 0===n?void 0:n.image;if(!this.validateAsyncId(o,r))return;if(!c)return void console.error(`GameObject:${e.gameObject.name}'s Mesh resource load error`);this.meshes[e.gameObject.id].texture=c,i.corners&&this.meshes[e.gameObject.id].setCorners(i.corners.x0,i.corners.y0,i.corners.x1,i.corners.y1,i.corners.x2,i.corners.y2,i.corners.x3,i.corners.y3)}else if(e.type===t.OBSERVER_TYPE.REMOVE){this.increaseAsyncId(o);const t=this.meshes[e.gameObject.id];this.containerManager.getContainer(e.gameObject.id).removeChild(t),t.destroy(),delete this.meshes[e.gameObject.id]}}})}destroy(){var e,t;for(const r in this.meshes){const s=this.meshes[r];null===(t=null===(e=this.containerManager)||void 0===e?void 0:e.getContainer(parseInt(r)))||void 0===t||t.removeChild(s),s.destroy(),delete this.meshes[r]}}};p.systemName="MeshSystem",p=n([t.decorators.componentObserver({PerspectiveMesh:["resource","_forceUpdate"]})],p);var a=p;return e.MeshSystem=a,e.PerspectiveMesh=d,Object.defineProperty(e,"__esModule",{value:!0}),e}({},EVA,EVA.plugin.renderer,PIXI);globalThis.EVA.plugin.renderer.mesh=globalThis.EVA.plugin.renderer.mesh||_EVA_IIFE_mesh;
@@ -6,6 +6,89 @@ var eva_js = require('@eva/eva.js');
6
6
  var pluginRenderer = require('@eva/plugin-renderer');
7
7
  var pixi_js = require('pixi.js');
8
8
 
9
+ /******************************************************************************
10
+ Copyright (c) Microsoft Corporation.
11
+
12
+ Permission to use, copy, modify, and/or distribute this software for any
13
+ purpose with or without fee is hereby granted.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
16
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
17
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
18
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
19
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
20
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
21
+ PERFORMANCE OF THIS SOFTWARE.
22
+ ***************************************************************************** */
23
+
24
+ function __decorate(decorators, target, key, desc) {
25
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
26
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
27
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
28
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
29
+ }
30
+
31
+ function __metadata(metadataKey, metadataValue) {
32
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
33
+ }
34
+
35
+ function __awaiter(thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ }
44
+
45
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
46
+ var e = new Error(message);
47
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
48
+ };
49
+
50
+ class CornersMetadata {
51
+ }
52
+ __decorate([
53
+ eva_js.type('number'),
54
+ eva_js.step(1),
55
+ __metadata("design:type", Number)
56
+ ], CornersMetadata.prototype, "x0", void 0);
57
+ __decorate([
58
+ eva_js.type('number'),
59
+ eva_js.step(1),
60
+ __metadata("design:type", Number)
61
+ ], CornersMetadata.prototype, "y0", void 0);
62
+ __decorate([
63
+ eva_js.type('number'),
64
+ eva_js.step(1),
65
+ __metadata("design:type", Number)
66
+ ], CornersMetadata.prototype, "x1", void 0);
67
+ __decorate([
68
+ eva_js.type('number'),
69
+ eva_js.step(1),
70
+ __metadata("design:type", Number)
71
+ ], CornersMetadata.prototype, "y1", void 0);
72
+ __decorate([
73
+ eva_js.type('number'),
74
+ eva_js.step(1),
75
+ __metadata("design:type", Number)
76
+ ], CornersMetadata.prototype, "x2", void 0);
77
+ __decorate([
78
+ eva_js.type('number'),
79
+ eva_js.step(1),
80
+ __metadata("design:type", Number)
81
+ ], CornersMetadata.prototype, "y2", void 0);
82
+ __decorate([
83
+ eva_js.type('number'),
84
+ eva_js.step(1),
85
+ __metadata("design:type", Number)
86
+ ], CornersMetadata.prototype, "x3", void 0);
87
+ __decorate([
88
+ eva_js.type('number'),
89
+ eva_js.step(1),
90
+ __metadata("design:type", Number)
91
+ ], CornersMetadata.prototype, "y3", void 0);
9
92
  /**
10
93
  * 透视网格组件
11
94
  *
@@ -79,6 +162,9 @@ class PerspectiveMesh extends eva_js.Component {
79
162
  if (obj && obj.verticesY) {
80
163
  this.verticesY = obj.verticesY;
81
164
  }
165
+ if (obj && obj.corners) {
166
+ this.corners = obj.corners;
167
+ }
82
168
  }
83
169
  /**
84
170
  * 设置四个角的位置
@@ -109,44 +195,25 @@ class PerspectiveMesh extends eva_js.Component {
109
195
  }
110
196
  }
111
197
  /** 组件名称 */
112
- PerspectiveMesh.componentName = 'PerspectiveMesh';
113
-
114
- /******************************************************************************
115
- Copyright (c) Microsoft Corporation.
116
-
117
- Permission to use, copy, modify, and/or distribute this software for any
118
- purpose with or without fee is hereby granted.
119
-
120
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
121
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
122
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
123
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
124
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
125
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
126
- PERFORMANCE OF THIS SOFTWARE.
127
- ***************************************************************************** */
128
-
129
- function __decorate(decorators, target, key, desc) {
130
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
131
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
132
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
133
- return c > 3 && r && Object.defineProperty(target, key, r), r;
134
- }
135
-
136
- function __awaiter(thisArg, _arguments, P, generator) {
137
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
138
- return new (P || (P = Promise))(function (resolve, reject) {
139
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
140
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
141
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
142
- step((generator = generator.apply(thisArg, _arguments || [])).next());
143
- });
144
- }
145
-
146
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
147
- var e = new Error(message);
148
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
149
- };
198
+ PerspectiveMesh.componentName = 'PerspectiveMesh';
199
+ __decorate([
200
+ eva_js.type('string'),
201
+ __metadata("design:type", String)
202
+ ], PerspectiveMesh.prototype, "resource", void 0);
203
+ __decorate([
204
+ eva_js.type('number'),
205
+ eva_js.step(1),
206
+ __metadata("design:type", Object)
207
+ ], PerspectiveMesh.prototype, "verticesX", void 0);
208
+ __decorate([
209
+ eva_js.type('number'),
210
+ eva_js.step(1),
211
+ __metadata("design:type", Object)
212
+ ], PerspectiveMesh.prototype, "verticesY", void 0);
213
+ __decorate([
214
+ eva_js.Field(() => CornersMetadata),
215
+ __metadata("design:type", Object)
216
+ ], PerspectiveMesh.prototype, "corners", void 0);
150
217
 
151
218
  let MeshSystem = class MeshSystem extends pluginRenderer.Renderer {
152
219
  constructor() {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@eva/eva.js"),r=require("@eva/plugin-renderer"),t=require("pixi.js");class s extends e.Component{constructor(){super(...arguments),this.verticesX=10,this.verticesY=10,this._forceUpdate=0}init(e){e&&e.resource&&(this.resource=e.resource),e&&e.verticesX&&(this.verticesX=e.verticesX),e&&e.verticesY&&(this.verticesY=e.verticesY)}setCorners(e,r,t,s,n,i,o,c){const a=this.corners||{};a.x0=e,a.y0=r,a.x1=t,a.y1=s,a.x2=n,a.y2=i,a.x3=o,a.y3=c,this.corners=a,this._forceUpdate+=1}}function n(e,r,t,s){return new(t||(t=Promise))(function(n,i){function o(e){try{a(s.next(e))}catch(e){i(e)}}function c(e){try{a(s.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?n(e.value):(r=e.value,r instanceof t?r:new t(function(e){e(r)})).then(o,c)}a((s=s.apply(e,r||[])).next())})}s.componentName="PerspectiveMesh","function"==typeof SuppressedError&&SuppressedError;let i=class extends r.Renderer{constructor(){super(...arguments),this.name="MeshSystem",this.meshes={}}init(){this.renderSystem=this.game.getSystem(r.RendererSystem),this.renderSystem.rendererManager.register(this)}componentChanged(r){var s,i;return n(this,void 0,void 0,function*(){if("PerspectiveMesh"===r.componentName){const n=r.gameObject.id,o=r.component;if(r.type===e.OBSERVER_TYPE.ADD){const i=new t.PerspectiveMesh({texture:new t.Texture,verticesX:o.verticesX,verticesY:o.verticesY});this.meshes[r.gameObject.id]=i,this.containerManager.getContainer(r.gameObject.id).addChildAt(i,0);const c=this.increaseAsyncId(n),a=yield e.resource.getResource(o.resource),h=null===(s=a.data)||void 0===s?void 0:s.image;if(!this.validateAsyncId(n,c))return;if(!h)return void console.error(`GameObject:${r.gameObject.name}'s Mesh resource load error`);i.texture=h,o.corners?this.meshes[r.gameObject.id].setCorners(o.corners.x0,o.corners.y0,o.corners.x1,o.corners.y1,o.corners.x2,o.corners.y2,o.corners.x3,o.corners.y3):i.setCorners(0,0,h.width,0,h.width,h.height,0,h.height)}else if(r.type===e.OBSERVER_TYPE.CHANGE){const t=this.increaseAsyncId(n),s=yield e.resource.getResource(o.resource),c=null===(i=s.data)||void 0===i?void 0:i.image;if(!this.validateAsyncId(n,t))return;if(!c)return void console.error(`GameObject:${r.gameObject.name}'s Mesh resource load error`);this.meshes[r.gameObject.id].texture=c,o.corners&&this.meshes[r.gameObject.id].setCorners(o.corners.x0,o.corners.y0,o.corners.x1,o.corners.y1,o.corners.x2,o.corners.y2,o.corners.x3,o.corners.y3)}else if(r.type===e.OBSERVER_TYPE.REMOVE){this.increaseAsyncId(n);const e=this.meshes[r.gameObject.id];this.containerManager.getContainer(r.gameObject.id).removeChild(e),e.destroy(),delete this.meshes[r.gameObject.id]}}})}destroy(){var e,r;for(const t in this.meshes){const s=this.meshes[t];null===(r=null===(e=this.containerManager)||void 0===e?void 0:e.getContainer(parseInt(t)))||void 0===r||r.removeChild(s),s.destroy(),delete this.meshes[t]}}};i.systemName="MeshSystem",i=function(e,r,t,s){var n,i=arguments.length,o=i<3?r:null===s?s=Object.getOwnPropertyDescriptor(r,t):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,r,t,s);else for(var c=e.length-1;c>=0;c--)(n=e[c])&&(o=(i<3?n(o):i>3?n(r,t,o):n(r,t))||o);return i>3&&o&&Object.defineProperty(r,t,o),o}([e.decorators.componentObserver({PerspectiveMesh:["resource","_forceUpdate"]})],i);var o=i;exports.MeshSystem=o,exports.PerspectiveMesh=s;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@eva/eva.js"),t=require("@eva/plugin-renderer"),r=require("pixi.js");function s(e,t,r,s){var o,n=arguments.length,i=n<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,r):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,s);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(i=(n<3?o(i):n>3?o(t,r,i):o(t,r))||i);return n>3&&i&&Object.defineProperty(t,r,i),i}function o(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function n(e,t,r,s){return new(r||(r=Promise))(function(o,n){function i(e){try{p(s.next(e))}catch(e){n(e)}}function c(e){try{p(s.throw(e))}catch(e){n(e)}}function p(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r(function(e){e(t)})).then(i,c)}p((s=s.apply(e,t||[])).next())})}"function"==typeof SuppressedError&&SuppressedError;class i{}s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"x0",void 0),s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"y0",void 0),s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"x1",void 0),s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"y1",void 0),s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"x2",void 0),s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"y2",void 0),s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"x3",void 0),s([e.type("number"),e.step(1),o("design:type",Number)],i.prototype,"y3",void 0);class c extends e.Component{constructor(){super(...arguments),this.verticesX=10,this.verticesY=10,this._forceUpdate=0}init(e){e&&e.resource&&(this.resource=e.resource),e&&e.verticesX&&(this.verticesX=e.verticesX),e&&e.verticesY&&(this.verticesY=e.verticesY),e&&e.corners&&(this.corners=e.corners)}setCorners(e,t,r,s,o,n,i,c){const p=this.corners||{};p.x0=e,p.y0=t,p.x1=r,p.y1=s,p.x2=o,p.y2=n,p.x3=i,p.y3=c,this.corners=p,this._forceUpdate+=1}}c.componentName="PerspectiveMesh",s([e.type("string"),o("design:type",String)],c.prototype,"resource",void 0),s([e.type("number"),e.step(1),o("design:type",Object)],c.prototype,"verticesX",void 0),s([e.type("number"),e.step(1),o("design:type",Object)],c.prototype,"verticesY",void 0),s([e.Field(()=>i),o("design:type",Object)],c.prototype,"corners",void 0);let p=class extends t.Renderer{constructor(){super(...arguments),this.name="MeshSystem",this.meshes={}}init(){this.renderSystem=this.game.getSystem(t.RendererSystem),this.renderSystem.rendererManager.register(this)}componentChanged(t){var s,o;return n(this,void 0,void 0,function*(){if("PerspectiveMesh"===t.componentName){const n=t.gameObject.id,i=t.component;if(t.type===e.OBSERVER_TYPE.ADD){const o=new r.PerspectiveMesh({texture:new r.Texture,verticesX:i.verticesX,verticesY:i.verticesY});this.meshes[t.gameObject.id]=o,this.containerManager.getContainer(t.gameObject.id).addChildAt(o,0);const c=this.increaseAsyncId(n),p=yield e.resource.getResource(i.resource),d=null===(s=p.data)||void 0===s?void 0:s.image;if(!this.validateAsyncId(n,c))return;if(!d)return void console.error(`GameObject:${t.gameObject.name}'s Mesh resource load error`);o.texture=d,i.corners?this.meshes[t.gameObject.id].setCorners(i.corners.x0,i.corners.y0,i.corners.x1,i.corners.y1,i.corners.x2,i.corners.y2,i.corners.x3,i.corners.y3):o.setCorners(0,0,d.width,0,d.width,d.height,0,d.height)}else if(t.type===e.OBSERVER_TYPE.CHANGE){const r=this.increaseAsyncId(n),s=yield e.resource.getResource(i.resource),c=null===(o=s.data)||void 0===o?void 0:o.image;if(!this.validateAsyncId(n,r))return;if(!c)return void console.error(`GameObject:${t.gameObject.name}'s Mesh resource load error`);this.meshes[t.gameObject.id].texture=c,i.corners&&this.meshes[t.gameObject.id].setCorners(i.corners.x0,i.corners.y0,i.corners.x1,i.corners.y1,i.corners.x2,i.corners.y2,i.corners.x3,i.corners.y3)}else if(t.type===e.OBSERVER_TYPE.REMOVE){this.increaseAsyncId(n);const e=this.meshes[t.gameObject.id];this.containerManager.getContainer(t.gameObject.id).removeChild(e),e.destroy(),delete this.meshes[t.gameObject.id]}}})}destroy(){var e,t;for(const r in this.meshes){const s=this.meshes[r];null===(t=null===(e=this.containerManager)||void 0===e?void 0:e.getContainer(parseInt(r)))||void 0===t||t.removeChild(s),s.destroy(),delete this.meshes[r]}}};p.systemName="MeshSystem",p=s([e.decorators.componentObserver({PerspectiveMesh:["resource","_forceUpdate"]})],p);var d=p;exports.MeshSystem=d,exports.PerspectiveMesh=c;
@@ -112,6 +112,7 @@ declare interface PerspectiveMeshParams {
112
112
  resource: string;
113
113
  verticesX?: number;
114
114
  verticesY?: number;
115
+ corners?: Corners;
115
116
  }
116
117
 
117
118
  export { }
@@ -1,7 +1,90 @@
1
- import { Component, decorators, OBSERVER_TYPE, resource } from '@eva/eva.js';
1
+ import { Component, type, step, Field, decorators, OBSERVER_TYPE, resource } from '@eva/eva.js';
2
2
  import { Renderer, RendererSystem } from '@eva/plugin-renderer';
3
3
  import { PerspectiveMesh as PerspectiveMesh$1, Texture } from 'pixi.js';
4
4
 
5
+ /******************************************************************************
6
+ Copyright (c) Microsoft Corporation.
7
+
8
+ Permission to use, copy, modify, and/or distribute this software for any
9
+ purpose with or without fee is hereby granted.
10
+
11
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
12
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
13
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
14
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
15
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
16
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17
+ PERFORMANCE OF THIS SOFTWARE.
18
+ ***************************************************************************** */
19
+
20
+ function __decorate(decorators, target, key, desc) {
21
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
22
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
23
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
24
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
25
+ }
26
+
27
+ function __metadata(metadataKey, metadataValue) {
28
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
29
+ }
30
+
31
+ function __awaiter(thisArg, _arguments, P, generator) {
32
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
33
+ return new (P || (P = Promise))(function (resolve, reject) {
34
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
35
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
36
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
37
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
38
+ });
39
+ }
40
+
41
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
42
+ var e = new Error(message);
43
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
44
+ };
45
+
46
+ class CornersMetadata {
47
+ }
48
+ __decorate([
49
+ type('number'),
50
+ step(1),
51
+ __metadata("design:type", Number)
52
+ ], CornersMetadata.prototype, "x0", void 0);
53
+ __decorate([
54
+ type('number'),
55
+ step(1),
56
+ __metadata("design:type", Number)
57
+ ], CornersMetadata.prototype, "y0", void 0);
58
+ __decorate([
59
+ type('number'),
60
+ step(1),
61
+ __metadata("design:type", Number)
62
+ ], CornersMetadata.prototype, "x1", void 0);
63
+ __decorate([
64
+ type('number'),
65
+ step(1),
66
+ __metadata("design:type", Number)
67
+ ], CornersMetadata.prototype, "y1", void 0);
68
+ __decorate([
69
+ type('number'),
70
+ step(1),
71
+ __metadata("design:type", Number)
72
+ ], CornersMetadata.prototype, "x2", void 0);
73
+ __decorate([
74
+ type('number'),
75
+ step(1),
76
+ __metadata("design:type", Number)
77
+ ], CornersMetadata.prototype, "y2", void 0);
78
+ __decorate([
79
+ type('number'),
80
+ step(1),
81
+ __metadata("design:type", Number)
82
+ ], CornersMetadata.prototype, "x3", void 0);
83
+ __decorate([
84
+ type('number'),
85
+ step(1),
86
+ __metadata("design:type", Number)
87
+ ], CornersMetadata.prototype, "y3", void 0);
5
88
  /**
6
89
  * 透视网格组件
7
90
  *
@@ -75,6 +158,9 @@ class PerspectiveMesh extends Component {
75
158
  if (obj && obj.verticesY) {
76
159
  this.verticesY = obj.verticesY;
77
160
  }
161
+ if (obj && obj.corners) {
162
+ this.corners = obj.corners;
163
+ }
78
164
  }
79
165
  /**
80
166
  * 设置四个角的位置
@@ -105,44 +191,25 @@ class PerspectiveMesh extends Component {
105
191
  }
106
192
  }
107
193
  /** 组件名称 */
108
- PerspectiveMesh.componentName = 'PerspectiveMesh';
109
-
110
- /******************************************************************************
111
- Copyright (c) Microsoft Corporation.
112
-
113
- Permission to use, copy, modify, and/or distribute this software for any
114
- purpose with or without fee is hereby granted.
115
-
116
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
117
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
118
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
119
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
120
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
121
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
122
- PERFORMANCE OF THIS SOFTWARE.
123
- ***************************************************************************** */
124
-
125
- function __decorate(decorators, target, key, desc) {
126
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
127
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
128
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
129
- return c > 3 && r && Object.defineProperty(target, key, r), r;
130
- }
131
-
132
- function __awaiter(thisArg, _arguments, P, generator) {
133
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
134
- return new (P || (P = Promise))(function (resolve, reject) {
135
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
136
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
137
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
138
- step((generator = generator.apply(thisArg, _arguments || [])).next());
139
- });
140
- }
141
-
142
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
143
- var e = new Error(message);
144
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
145
- };
194
+ PerspectiveMesh.componentName = 'PerspectiveMesh';
195
+ __decorate([
196
+ type('string'),
197
+ __metadata("design:type", String)
198
+ ], PerspectiveMesh.prototype, "resource", void 0);
199
+ __decorate([
200
+ type('number'),
201
+ step(1),
202
+ __metadata("design:type", Object)
203
+ ], PerspectiveMesh.prototype, "verticesX", void 0);
204
+ __decorate([
205
+ type('number'),
206
+ step(1),
207
+ __metadata("design:type", Object)
208
+ ], PerspectiveMesh.prototype, "verticesY", void 0);
209
+ __decorate([
210
+ Field(() => CornersMetadata),
211
+ __metadata("design:type", Object)
212
+ ], PerspectiveMesh.prototype, "corners", void 0);
146
213
 
147
214
  let MeshSystem = class MeshSystem extends Renderer {
148
215
  constructor() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eva/plugin-renderer-mesh",
3
- "version": "2.0.2",
3
+ "version": "2.1.0-beta.1",
4
4
  "description": "@eva/plugin-renderer-mesh",
5
5
  "main": "index.js",
6
6
  "module": "dist/plugin-renderer-mesh.esm.js",
@@ -18,9 +18,9 @@
18
18
  "license": "MIT",
19
19
  "homepage": "https://eva.js.org",
20
20
  "dependencies": {
21
- "@eva/inspector-decorator": "^0.0.5",
22
- "@eva/plugin-renderer": "2.0.2",
23
- "@eva/eva.js": "2.0.2",
21
+ "@eva/inspector-decorator": "^2.0.0-beta.0",
22
+ "@eva/plugin-renderer": "2.1.0-beta.1",
23
+ "@eva/eva.js": "2.1.0-beta.1",
24
24
  "pixi.js": "^8.17.0"
25
25
  }
26
26
  }