@caspertech/node-metaverse 0.6.6 → 0.6.8

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.
@@ -1,7 +1,261 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LLGLTFMaterialOverride = void 0;
4
+ const UUID_1 = require("./UUID");
4
5
  class LLGLTFMaterialOverride {
6
+ getFullMaterialJSON() {
7
+ const obj = {};
8
+ obj.asset = {
9
+ version: '2.0',
10
+ };
11
+ let texIndex = 0;
12
+ const material = {};
13
+ const addTexture = (texNum) => {
14
+ var _a, _b, _c, _d;
15
+ let idx = undefined;
16
+ if ((this.textures && this.textures.length > texNum && this.textures[texNum] !== null) || (this.textureTransforms && this.textureTransforms.length > texNum && this.textureTransforms[texNum] !== null)) {
17
+ idx = texIndex++;
18
+ if (idx === 0) {
19
+ obj.images = [];
20
+ obj.textures = [];
21
+ }
22
+ const texture = (_a = this.textures) === null || _a === void 0 ? void 0 : _a[texNum];
23
+ if (texture) {
24
+ obj.images.push({
25
+ uri: texture
26
+ });
27
+ }
28
+ else {
29
+ obj.images.push({
30
+ uri: UUID_1.UUID.zero().toString()
31
+ });
32
+ }
33
+ const tex = {
34
+ source: idx
35
+ };
36
+ if (this.textureTransforms && this.textureTransforms.length > texNum && this.textureTransforms[texNum] !== null) {
37
+ const trans = this.textureTransforms[texNum];
38
+ tex.extensions = {
39
+ KHR_texture_transform: {
40
+ offset: (_b = trans === null || trans === void 0 ? void 0 : trans.offset) !== null && _b !== void 0 ? _b : undefined,
41
+ scale: (_c = trans === null || trans === void 0 ? void 0 : trans.scale) !== null && _c !== void 0 ? _c : undefined,
42
+ rotation: (_d = trans === null || trans === void 0 ? void 0 : trans.rotation) !== null && _d !== void 0 ? _d : undefined
43
+ }
44
+ };
45
+ }
46
+ if (obj.textures === undefined) {
47
+ obj.textures = [
48
+ tex
49
+ ];
50
+ }
51
+ else {
52
+ obj.textures.push(tex);
53
+ }
54
+ }
55
+ return idx;
56
+ };
57
+ if (this.baseColor !== undefined
58
+ || (this.textures !== undefined
59
+ && ((this.textures.length > 0
60
+ && this.textures[0] !== undefined)
61
+ || (this.textures.length > 2
62
+ && this.textures[2] !== undefined)))
63
+ || this.metallicFactor !== undefined
64
+ || this.roughnessFactor !== undefined) {
65
+ const pbrMetallicRoughness = {
66
+ baseColorFactor: this.baseColor,
67
+ metallicFactor: this.metallicFactor,
68
+ roughnessFactor: this.roughnessFactor
69
+ };
70
+ let texIdx2 = addTexture(0);
71
+ if (texIdx2 !== undefined) {
72
+ pbrMetallicRoughness.baseColorTexture = {
73
+ index: texIdx2
74
+ };
75
+ }
76
+ texIdx2 = addTexture(2);
77
+ if (texIdx2 !== undefined) {
78
+ pbrMetallicRoughness.metallicRoughnessTexture = {
79
+ index: texIdx2
80
+ };
81
+ material.occlusionTexture = {
82
+ index: texIdx2
83
+ };
84
+ }
85
+ material.pbrMetallicRoughness = pbrMetallicRoughness;
86
+ }
87
+ if (this.alphaMode !== undefined) {
88
+ if (this.alphaMode === 0) {
89
+ material.extras = {
90
+ override_alpha_mode: true
91
+ };
92
+ }
93
+ else if (this.alphaMode === 1) {
94
+ material.alphaMode = 'BLEND';
95
+ }
96
+ else if (this.alphaMode === 2) {
97
+ material.alphaMode = 'MASK';
98
+ }
99
+ }
100
+ if (this.alphaCutoff !== undefined) {
101
+ material.alphaCutoff = this.alphaCutoff;
102
+ }
103
+ if (this.emissiveFactor !== undefined) {
104
+ material.emissiveFactor = this.emissiveFactor;
105
+ }
106
+ if (this.doubleSided) {
107
+ material.doubleSided = this.doubleSided;
108
+ }
109
+ else if (this.doubleSided === false) {
110
+ if (!material.extras) {
111
+ material.extras = {};
112
+ }
113
+ material.extras.override_double_sided = true;
114
+ }
115
+ let texIdx = addTexture(3);
116
+ if (texIdx !== undefined) {
117
+ material.emissiveTexture = {
118
+ index: texIdx
119
+ };
120
+ }
121
+ texIdx = addTexture(1);
122
+ if (texIdx !== undefined) {
123
+ material.normalTexture = {
124
+ index: texIdx
125
+ };
126
+ }
127
+ if (Object.keys(material).length > 0) {
128
+ obj.materials = [
129
+ material
130
+ ];
131
+ }
132
+ return JSON.stringify(obj);
133
+ }
134
+ setTexture(idx, uuid) {
135
+ if (!this.textures) {
136
+ this.textures = [];
137
+ }
138
+ for (let x = this.textures.length; x < idx + 1; x++) {
139
+ this.textures.push(null);
140
+ }
141
+ this.textures[idx] = uuid;
142
+ }
143
+ setTransform(idx, trans) {
144
+ if (!this.textureTransforms) {
145
+ this.textureTransforms = [];
146
+ }
147
+ for (let x = this.textureTransforms.length; x < idx + 1; x++) {
148
+ this.textureTransforms.push(null);
149
+ }
150
+ this.textureTransforms[idx] = trans;
151
+ }
152
+ static fromFullMaterialJSON(json) {
153
+ var _a, _b, _c, _d, _e, _f, _g;
154
+ const obj = JSON.parse(json);
155
+ const over = new LLGLTFMaterialOverride();
156
+ if (!((_a = obj.materials) === null || _a === void 0 ? void 0 : _a.length)) {
157
+ return over;
158
+ }
159
+ const mat = obj.materials[0];
160
+ const getTexture = (idx) => {
161
+ var _a, _b;
162
+ const found = {
163
+ uuid: null,
164
+ transform: null
165
+ };
166
+ if (obj.textures && Array.isArray(obj.textures) && obj.textures.length > idx) {
167
+ const source = obj.textures[idx].source;
168
+ if (source !== undefined && obj.images && Array.isArray(obj.images) && obj.images.length > source) {
169
+ const img = obj.images[source];
170
+ if ('uri' in img) {
171
+ found.uuid = (_a = img.uri) !== null && _a !== void 0 ? _a : null;
172
+ if (found.uuid === UUID_1.UUID.zero().toString()) {
173
+ found.uuid = null;
174
+ }
175
+ }
176
+ }
177
+ const transform = (_b = obj.textures[idx].extensions) === null || _b === void 0 ? void 0 : _b.KHR_texture_transform;
178
+ if (transform) {
179
+ found.transform = transform !== null && transform !== void 0 ? transform : null;
180
+ }
181
+ }
182
+ return found;
183
+ };
184
+ if (mat.pbrMetallicRoughness) {
185
+ const pbr = mat.pbrMetallicRoughness;
186
+ if (pbr.metallicFactor !== undefined) {
187
+ over.metallicFactor = pbr.metallicFactor;
188
+ }
189
+ if (pbr.roughnessFactor !== undefined) {
190
+ over.roughnessFactor = pbr.roughnessFactor;
191
+ }
192
+ if (pbr.baseColorFactor !== undefined && Array.isArray(pbr.baseColorFactor) && pbr.baseColorFactor.length === 4) {
193
+ over.baseColor = pbr.baseColorFactor;
194
+ }
195
+ if (((_b = pbr.baseColorTexture) === null || _b === void 0 ? void 0 : _b.index) !== undefined) {
196
+ const tex = getTexture(pbr.baseColorTexture.index);
197
+ if (tex && tex.uuid) {
198
+ over.setTexture(0, tex.uuid);
199
+ }
200
+ if (tex && tex.transform) {
201
+ over.setTransform(0, tex.transform);
202
+ }
203
+ }
204
+ if (((_c = pbr.metallicRoughnessTexture) === null || _c === void 0 ? void 0 : _c.index) !== undefined) {
205
+ const tex = getTexture(pbr.metallicRoughnessTexture.index);
206
+ if (tex && tex.uuid) {
207
+ over.setTexture(2, tex.uuid);
208
+ }
209
+ if (tex && tex.transform) {
210
+ over.setTransform(2, tex.transform);
211
+ }
212
+ }
213
+ }
214
+ if (mat.alphaMode) {
215
+ switch (mat.alphaMode) {
216
+ case 'BLEND':
217
+ over.alphaMode = 1;
218
+ break;
219
+ case 'MASK':
220
+ over.alphaMode = 2;
221
+ break;
222
+ }
223
+ }
224
+ else if (mat.extras && mat.extras.override_alpha_mode) {
225
+ over.alphaMode = 0;
226
+ }
227
+ if (mat.alphaCutoff !== undefined) {
228
+ over.alphaCutoff = mat.alphaCutoff;
229
+ }
230
+ if (mat.emissiveFactor !== undefined) {
231
+ over.emissiveFactor = mat.emissiveFactor;
232
+ }
233
+ if (mat.doubleSided === true) {
234
+ over.doubleSided = true;
235
+ }
236
+ else if (mat.extras && mat.extras.override_double_sided) {
237
+ over.doubleSided = false;
238
+ }
239
+ if (((_d = mat.normalTexture) === null || _d === void 0 ? void 0 : _d.index) !== undefined) {
240
+ const tex = getTexture((_e = mat.normalTexture) === null || _e === void 0 ? void 0 : _e.index);
241
+ if (tex && tex.uuid) {
242
+ over.setTexture(1, tex.uuid);
243
+ }
244
+ if (tex && tex.transform) {
245
+ over.setTransform(1, tex.transform);
246
+ }
247
+ }
248
+ if (((_f = mat.emissiveTexture) === null || _f === void 0 ? void 0 : _f.index) !== undefined) {
249
+ const tex = getTexture((_g = mat.emissiveTexture) === null || _g === void 0 ? void 0 : _g.index);
250
+ if (tex && tex.uuid) {
251
+ over.setTexture(3, tex.uuid);
252
+ }
253
+ if (tex && tex.transform) {
254
+ over.setTransform(3, tex.transform);
255
+ }
256
+ }
257
+ return over;
258
+ }
5
259
  }
6
260
  exports.LLGLTFMaterialOverride = LLGLTFMaterialOverride;
7
261
  //# sourceMappingURL=LLGLTFMaterialOverride.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LLGLTFMaterialOverride.js","sourceRoot":"","sources":["../../../lib/classes/LLGLTFMaterialOverride.ts"],"names":[],"mappings":";;;AAOA,MAAa,sBAAsB;CAWlC;AAXD,wDAWC"}
1
+ {"version":3,"file":"LLGLTFMaterialOverride.js","sourceRoot":"","sources":["../../../lib/classes/LLGLTFMaterialOverride.ts"],"names":[],"mappings":";;;AAMA,iCAA8B;AAS9B,MAAa,sBAAsB;IAYxB,mBAAmB;QAEtB,MAAM,GAAG,GAAuB,EAAE,CAAC;QACnC,GAAG,CAAC,KAAK,GAAG;YACR,OAAO,EAAE,KAAK;SACjB,CAAC;QAEF,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,MAAM,QAAQ,GAAoD,EAAE,CAAC;QAErE,MAAM,UAAU,GAAG,CAAC,MAAc,EAAsB,EAAE;;YAEtD,IAAI,GAAG,GAAuB,SAAS,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,EACvM;gBACI,GAAG,GAAG,QAAQ,EAAE,CAAC;gBACjB,IAAI,GAAG,KAAK,CAAC,EACb;oBACI,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC;oBAChB,GAAG,CAAC,QAAQ,GAAG,EAAE,CAAC;iBACrB;gBAED,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,QAAQ,0CAAG,MAAM,CAAC,CAAC;gBACxC,IAAI,OAAO,EACX;oBACI,GAAG,CAAC,MAAO,CAAC,IAAI,CAAC;wBACb,GAAG,EAAE,OAAO;qBACf,CAAC,CAAC;iBACN;qBAED;oBACI,GAAG,CAAC,MAAO,CAAC,IAAI,CAAC;wBACb,GAAG,EAAE,WAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;qBAC9B,CAAC,CAAC;iBACN;gBAED,MAAM,GAAG,GAEuB;oBAC5B,MAAM,EAAE,GAAG;iBACd,CAAC;gBAEF,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,IAAI,EAC/G;oBACI,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBAC7C,GAAG,CAAC,UAAU,GAAG;wBACb,qBAAqB,EAAE;4BACnB,MAAM,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,mCAAI,SAAS;4BAClC,KAAK,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,mCAAI,SAAS;4BAChC,QAAQ,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,mCAAI,SAAS;yBACzC;qBACJ,CAAC;iBACL;gBAED,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAC9B;oBACI,GAAG,CAAC,QAAQ,GAAG;wBACX,GAAG;qBACN,CAAC;iBACL;qBAED;oBACI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAC1B;aACJ;YACD,OAAO,GAAG,CAAC;QACf,CAAC,CAAA;QAED,IACI,IAAI,CAAC,SAAS,KAAK,SAAS;eACzB,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS;mBACxB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;uBAClB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,CACpC;uBACE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;2BACrB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,CACpC,CAAC,CAAC;eACR,IAAI,CAAC,cAAc,KAAK,SAAS;eACjC,IAAI,CAAC,eAAe,KAAK,SAAS,EAEzC;YACI,MAAM,oBAAoB,GAMM;gBAC5B,eAAe,EAAE,IAAI,CAAC,SAAS;gBAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,eAAe,EAAE,IAAI,CAAC,eAAe;aACxC,CAAC;YAGF,IAAI,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,KAAK,SAAS,EACzB;gBACI,oBAAoB,CAAC,gBAAgB,GAAG;oBACpC,KAAK,EAAE,OAAO;iBACjB,CAAC;aACL;YAED,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,OAAO,KAAK,SAAS,EACzB;gBACI,oBAAoB,CAAC,wBAAwB,GAAG;oBAC5C,KAAK,EAAE,OAAO;iBACjB,CAAC;gBAEF,QAAQ,CAAC,gBAAgB,GAAG;oBACxB,KAAK,EAAE,OAAO;iBACjB,CAAC;aACL;YAED,QAAQ,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;SACxD;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAChC;YACI,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,EACxB;gBACI,QAAQ,CAAC,MAAM,GAAG;oBACd,mBAAmB,EAAE,IAAI;iBAC5B,CAAC;aACL;iBACI,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,EAC7B;gBACI,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC;aAChC;iBACI,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,EAC7B;gBACI,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC;aAC/B;SACJ;QAED,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAClC;YACI,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;SAC3C;QAED,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EACrC;YACI,QAAQ,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;SACjD;QAED,IAAI,IAAI,CAAC,WAAW,EACpB;YACI,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;SAC3C;aACI,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK,EACnC;YACI,IAAI,CAAC,QAAQ,CAAC,MAAM,EACpB;gBACI,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC;aACxB;YACD,QAAQ,CAAC,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC;SAChD;QAGD,IAAI,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,MAAM,KAAK,SAAS,EACxB;YACI,QAAQ,CAAC,eAAe,GAAG;gBACvB,KAAK,EAAE,MAAM;aAChB,CAAC;SACL;QAGD,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,MAAM,KAAK,SAAS,EACxB;YACI,QAAQ,CAAC,aAAa,GAAG;gBACrB,KAAK,EAAE,MAAM;aAChB,CAAC;SACL;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EACpC;YACI,GAAG,CAAC,SAAS,GAAG;gBACZ,QAAQ;aACX,CAAC;SACL;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAEM,UAAU,CAAC,GAAW,EAAE,IAAY;QAEvC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAClB;YACI,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;SACtB;QACD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,EACnD;YACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IAC9B,CAAC;IAEM,YAAY,CAAC,GAAW,EAAE,KAAqC;QAElE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAC3B;YACI,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;SAC/B;QACD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,EAC5D;YACI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACrC;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACxC,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAC,IAAY;;QAE3C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAC;QAEnD,MAAM,IAAI,GAAG,IAAI,sBAAsB,EAAE,CAAC;QAE1C,IAAI,CAAC,CAAA,MAAA,GAAG,CAAC,SAAS,0CAAE,MAAM,CAAA,EAC1B;YACI,OAAO,IAAI,CAAC;SACf;QACD,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAE7B,MAAM,UAAU,GAAG,CAAC,GAAW,EAA6E,EAAE;;YAE1G,MAAM,KAAK,GAGP;gBACA,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,IAAI;aAClB,CAAC;YAEF,IAAI,GAAG,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG,EAC5E;gBACI,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;gBACxC,IAAI,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,EACjG;oBACI,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC/B,IAAI,KAAK,IAAI,GAAG,EAChB;wBACI,KAAK,CAAC,IAAI,GAAG,MAAA,GAAG,CAAC,GAAG,mCAAI,IAAI,CAAC;wBAC7B,IAAI,KAAK,CAAC,IAAI,KAAK,WAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,EACzC;4BACI,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;yBACrB;qBACJ;iBACJ;gBACD,MAAM,SAAS,GAAG,MAAA,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,UAAU,0CAAE,qBAI/C,CAAC;gBACF,IAAI,SAAS,EACb;oBACI,KAAK,CAAC,SAAS,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,IAAI,CAAC;iBACvC;aACJ;YAED,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC;QAEF,IAAI,GAAG,CAAC,oBAAoB,EAC5B;YACI,MAAM,GAAG,GAAG,GAAG,CAAC,oBAAoB,CAAC;YACrC,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EACpC;gBACI,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC;aAC5C;YACD,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,EACrC;gBACI,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC;aAC9C;YACD,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAC/G;gBACI,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC;aACxC;YACD,IAAI,CAAA,MAAA,GAAG,CAAC,gBAAgB,0CAAE,KAAK,MAAK,SAAS,EAC7C;gBACI,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBACnD,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EACnB;oBACI,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;iBAChC;gBACD,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,EACxB;oBACI,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;iBACvC;aACJ;YACD,IAAI,CAAA,MAAA,GAAG,CAAC,wBAAwB,0CAAE,KAAK,MAAK,SAAS,EACrD;gBACI,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;gBAC3D,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EACnB;oBACI,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;iBAChC;gBACD,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,EACxB;oBACI,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;iBACvC;aACJ;SACJ;QAED,IAAI,GAAG,CAAC,SAAS,EACjB;YACI,QAAQ,GAAG,CAAC,SAAS,EACrB;gBACI,KAAK,OAAO;oBACR,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;oBACnB,MAAM;gBACV,KAAK,MAAM;oBACP,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;oBACnB,MAAM;aACb;SACJ;aACI,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,mBAAmB,EACrD;YACI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;SACtB;QAED,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS,EACjC;YACI,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;SACtC;QAED,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EACpC;YACI,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,cAAc,CAAC;SAC5C;QAED,IAAI,GAAG,CAAC,WAAW,KAAK,IAAI,EAC5B;YACI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;SAC3B;aACI,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,qBAAqB,EACvD;YACI,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;SAC5B;QAED,IAAI,CAAA,MAAA,GAAG,CAAC,aAAa,0CAAE,KAAK,MAAK,SAAS,EAC1C;YACI,MAAM,GAAG,GAAG,UAAU,CAAC,MAAA,GAAG,CAAC,aAAa,0CAAE,KAAK,CAAC,CAAC;YACjD,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EACnB;gBACI,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;aAChC;YACD,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,EACxB;gBACI,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;aACvC;SACJ;QAED,IAAI,CAAA,MAAA,GAAG,CAAC,eAAe,0CAAE,KAAK,MAAK,SAAS,EAC5C;YACI,MAAM,GAAG,GAAG,UAAU,CAAC,MAAA,GAAG,CAAC,eAAe,0CAAE,KAAK,CAAC,CAAC;YACnD,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EACnB;gBACI,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;aAChC;YACD,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,EACxB;gBACI,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;aACvC;SACJ;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA7XD,wDA6XC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,225 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const LLGLTFMaterialOverride_1 = require("./LLGLTFMaterialOverride");
4
+ const assert = require("assert");
5
+ const m = new LLGLTFMaterialOverride_1.LLGLTFMaterialOverride();
6
+ m.textures = [
7
+ 'a6edc906-2f9f-5fb2-a373-efac406f0ef2',
8
+ '2f70a4f7-4ece-48d2-8963-32192608067d',
9
+ '45a45cc0-463c-49dd-9133-5202399a16d4',
10
+ '39bf5b2b-0619-4892-872c-024e2f601684'
11
+ ];
12
+ m.doubleSided = true;
13
+ m.emissiveFactor = [
14
+ 0.1,
15
+ 0.69,
16
+ 0.420
17
+ ];
18
+ m.alphaCutoff = 0.42;
19
+ m.alphaMode = 1;
20
+ m.roughnessFactor = 0.23;
21
+ m.metallicFactor = 0.91;
22
+ m.baseColor = [
23
+ 0.1,
24
+ 0.2,
25
+ 0.3,
26
+ 0.4
27
+ ];
28
+ m.textureTransforms = [
29
+ {
30
+ rotation: 0.43,
31
+ scale: [
32
+ 0.2,
33
+ 0.4
34
+ ],
35
+ offset: [
36
+ 1.0,
37
+ 0.5
38
+ ]
39
+ },
40
+ {
41
+ rotation: 0.52,
42
+ scale: [
43
+ 0.9,
44
+ 0.1
45
+ ],
46
+ offset: [
47
+ 0.8,
48
+ 0.3
49
+ ]
50
+ },
51
+ {
52
+ rotation: 0.43,
53
+ scale: [
54
+ 0.1,
55
+ 0.9
56
+ ],
57
+ offset: [
58
+ 1.3,
59
+ 0.6
60
+ ]
61
+ },
62
+ {
63
+ rotation: 0.43,
64
+ scale: [
65
+ 0.0,
66
+ 0.11
67
+ ],
68
+ offset: [
69
+ 0.5,
70
+ 0.4
71
+ ]
72
+ }
73
+ ];
74
+ const m3 = new LLGLTFMaterialOverride_1.LLGLTFMaterialOverride();
75
+ m3.textures = [
76
+ null,
77
+ null,
78
+ '45a45cc0-463c-49dd-9133-5202399a16d4',
79
+ '39bf5b2b-0619-4892-872c-024e2f601684'
80
+ ];
81
+ m3.doubleSided = false;
82
+ m3.emissiveFactor = [
83
+ 0.1,
84
+ 0.69,
85
+ 0.420
86
+ ];
87
+ m3.alphaCutoff = 0.42;
88
+ m3.alphaMode = 0;
89
+ m3.roughnessFactor = 0.23;
90
+ m3.metallicFactor = 0.91;
91
+ m3.baseColor = [
92
+ 0.1,
93
+ 0.2,
94
+ 0.3,
95
+ 0.4
96
+ ];
97
+ m3.textureTransforms = [
98
+ {
99
+ rotation: 0.43,
100
+ scale: [
101
+ 0.2,
102
+ 0.4
103
+ ],
104
+ offset: [
105
+ 1.0,
106
+ 0.5
107
+ ]
108
+ },
109
+ null,
110
+ {
111
+ rotation: 0.43,
112
+ scale: [
113
+ 0.1,
114
+ 0.9
115
+ ],
116
+ offset: [
117
+ 1.3,
118
+ 0.6
119
+ ]
120
+ },
121
+ {
122
+ rotation: 0.43,
123
+ scale: [
124
+ 0.0,
125
+ 0.11
126
+ ],
127
+ offset: [
128
+ 0.5,
129
+ 0.4
130
+ ]
131
+ }
132
+ ];
133
+ describe('LLGLTFMaterialOverride', () => {
134
+ it('outputs valid JSON', () => {
135
+ assert.equal(m.getFullMaterialJSON(), '{"asset":{"version":"2.0"},"images":[{"uri":"a6edc906-2f9f-5fb2-a373-efac406f0ef2"},{"uri":"45a45cc0-463c-49dd-9133-5202399a16d4"},{"uri":"39bf5b2b-0619-4892-872c-024e2f601684"},{"uri":"2f70a4f7-4ece-48d2-8963-32192608067d"}],"textures":[{"source":0,"extensions":{"KHR_texture_transform":{"offset":[1,0.5],"scale":[0.2,0.4],"rotation":0.43}}},{"source":1,"extensions":{"KHR_texture_transform":{"offset":[1.3,0.6],"scale":[0.1,0.9],"rotation":0.43}}},{"source":2,"extensions":{"KHR_texture_transform":{"offset":[0.5,0.4],"scale":[0,0.11],"rotation":0.43}}},{"source":3,"extensions":{"KHR_texture_transform":{"offset":[0.8,0.3],"scale":[0.9,0.1],"rotation":0.52}}}],"materials":[{"occlusionTexture":{"index":1},"pbrMetallicRoughness":{"baseColorFactor":[0.1,0.2,0.3,0.4],"metallicFactor":0.91,"roughnessFactor":0.23,"baseColorTexture":{"index":0},"metallicRoughnessTexture":{"index":1}},"alphaMode":"BLEND","alphaCutoff":0.42,"emissiveFactor":[0.1,0.69,0.42],"doubleSided":true,"emissiveTexture":{"index":2},"normalTexture":{"index":3}}]}');
136
+ });
137
+ it('parses json JSON correctly', () => {
138
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59, _60, _61, _62, _63, _64, _65, _66, _67, _68, _69, _70, _71, _72, _73, _74, _75, _76, _77, _78, _79, _80, _81, _82, _83, _84, _85, _86, _87, _88, _89, _90, _91, _92, _93, _94, _95, _96, _97, _98, _99, _100, _101, _102, _103, _104, _105, _106, _107, _108, _109, _110, _111, _112, _113, _114, _115, _116, _117, _118, _119, _120, _121, _122, _123, _124, _125, _126, _127, _128, _129, _130, _131, _132, _133, _134, _135, _136, _137, _138, _139, _140, _141, _142, _143, _144, _145, _146, _147, _148, _149, _150, _151, _152, _153, _154, _155, _156, _157, _158, _159, _160, _161, _162, _163, _164, _165, _166, _167, _168, _169, _170, _171, _172, _173, _174, _175, _176, _177, _178, _179, _180, _181, _182, _183, _184, _185, _186, _187, _188, _189, _190, _191, _192, _193, _194, _195, _196, _197, _198, _199, _200, _201, _202, _203, _204, _205, _206, _207, _208, _209, _210, _211, _212, _213, _214, _215, _216, _217, _218, _219, _220, _221, _222, _223, _224, _225, _226, _227, _228, _229, _230, _231, _232, _233, _234, _235, _236, _237, _238, _239, _240, _241, _242, _243, _244, _245, _246, _247, _248, _249, _250, _251, _252, _253, _254, _255, _256, _257, _258, _259;
139
+ let json = m.getFullMaterialJSON();
140
+ const m2 = LLGLTFMaterialOverride_1.LLGLTFMaterialOverride.fromFullMaterialJSON(json);
141
+ assert.equal(m2.roughnessFactor, m.roughnessFactor);
142
+ assert.equal(m2.doubleSided, m.doubleSided);
143
+ assert.equal(m2.alphaCutoff, m.alphaCutoff);
144
+ assert.equal(m2.alphaMode, m.alphaMode);
145
+ assert.equal(m2.metallicFactor, m.metallicFactor);
146
+ assert.equal((_a = m2.baseColor) === null || _a === void 0 ? void 0 : _a.length, (_b = m.baseColor) === null || _b === void 0 ? void 0 : _b.length);
147
+ assert.equal((_c = m2.baseColor) === null || _c === void 0 ? void 0 : _c[0], (_d = m.baseColor) === null || _d === void 0 ? void 0 : _d[0]);
148
+ assert.equal((_e = m2.baseColor) === null || _e === void 0 ? void 0 : _e[1], (_f = m.baseColor) === null || _f === void 0 ? void 0 : _f[1]);
149
+ assert.equal((_g = m2.baseColor) === null || _g === void 0 ? void 0 : _g[2], (_h = m.baseColor) === null || _h === void 0 ? void 0 : _h[2]);
150
+ assert.equal((_j = m2.baseColor) === null || _j === void 0 ? void 0 : _j[3], (_k = m.baseColor) === null || _k === void 0 ? void 0 : _k[3]);
151
+ assert.equal((_l = m2.emissiveFactor) === null || _l === void 0 ? void 0 : _l.length, (_m = m.emissiveFactor) === null || _m === void 0 ? void 0 : _m.length);
152
+ assert.equal((_o = m2.emissiveFactor) === null || _o === void 0 ? void 0 : _o[0], (_p = m.emissiveFactor) === null || _p === void 0 ? void 0 : _p[0]);
153
+ assert.equal((_q = m2.emissiveFactor) === null || _q === void 0 ? void 0 : _q[1], (_r = m.emissiveFactor) === null || _r === void 0 ? void 0 : _r[1]);
154
+ assert.equal((_s = m2.emissiveFactor) === null || _s === void 0 ? void 0 : _s[2], (_t = m.emissiveFactor) === null || _t === void 0 ? void 0 : _t[2]);
155
+ assert.equal((_u = m2.textures) === null || _u === void 0 ? void 0 : _u.length, (_v = m.textures) === null || _v === void 0 ? void 0 : _v.length);
156
+ assert.equal((_w = m2.textures) === null || _w === void 0 ? void 0 : _w[0], (_x = m.textures) === null || _x === void 0 ? void 0 : _x[0]);
157
+ assert.equal((_y = m2.textures) === null || _y === void 0 ? void 0 : _y[1], (_z = m.textures) === null || _z === void 0 ? void 0 : _z[1]);
158
+ assert.equal((_0 = m2.textures) === null || _0 === void 0 ? void 0 : _0[2], (_1 = m.textures) === null || _1 === void 0 ? void 0 : _1[2]);
159
+ assert.equal((_2 = m2.textures) === null || _2 === void 0 ? void 0 : _2[3], (_3 = m.textures) === null || _3 === void 0 ? void 0 : _3[3]);
160
+ assert.equal((_4 = m2.textureTransforms) === null || _4 === void 0 ? void 0 : _4.length, (_5 = m.textureTransforms) === null || _5 === void 0 ? void 0 : _5.length);
161
+ assert.equal((_8 = (_7 = (_6 = m2.textureTransforms) === null || _6 === void 0 ? void 0 : _6[0]) === null || _7 === void 0 ? void 0 : _7.offset) === null || _8 === void 0 ? void 0 : _8[0], (_11 = (_10 = (_9 = m.textureTransforms) === null || _9 === void 0 ? void 0 : _9[0]) === null || _10 === void 0 ? void 0 : _10.offset) === null || _11 === void 0 ? void 0 : _11[0]);
162
+ assert.equal((_14 = (_13 = (_12 = m2.textureTransforms) === null || _12 === void 0 ? void 0 : _12[0]) === null || _13 === void 0 ? void 0 : _13.offset) === null || _14 === void 0 ? void 0 : _14[1], (_17 = (_16 = (_15 = m.textureTransforms) === null || _15 === void 0 ? void 0 : _15[0]) === null || _16 === void 0 ? void 0 : _16.offset) === null || _17 === void 0 ? void 0 : _17[1]);
163
+ assert.equal((_20 = (_19 = (_18 = m2.textureTransforms) === null || _18 === void 0 ? void 0 : _18[0]) === null || _19 === void 0 ? void 0 : _19.scale) === null || _20 === void 0 ? void 0 : _20[0], (_23 = (_22 = (_21 = m.textureTransforms) === null || _21 === void 0 ? void 0 : _21[0]) === null || _22 === void 0 ? void 0 : _22.scale) === null || _23 === void 0 ? void 0 : _23[0]);
164
+ assert.equal((_26 = (_25 = (_24 = m2.textureTransforms) === null || _24 === void 0 ? void 0 : _24[0]) === null || _25 === void 0 ? void 0 : _25.scale) === null || _26 === void 0 ? void 0 : _26[1], (_29 = (_28 = (_27 = m.textureTransforms) === null || _27 === void 0 ? void 0 : _27[0]) === null || _28 === void 0 ? void 0 : _28.scale) === null || _29 === void 0 ? void 0 : _29[1]);
165
+ assert.equal((_31 = (_30 = m2.textureTransforms) === null || _30 === void 0 ? void 0 : _30[0]) === null || _31 === void 0 ? void 0 : _31.rotation, (_33 = (_32 = m.textureTransforms) === null || _32 === void 0 ? void 0 : _32[0]) === null || _33 === void 0 ? void 0 : _33.rotation);
166
+ assert.equal((_36 = (_35 = (_34 = m2.textureTransforms) === null || _34 === void 0 ? void 0 : _34[1]) === null || _35 === void 0 ? void 0 : _35.offset) === null || _36 === void 0 ? void 0 : _36[0], (_39 = (_38 = (_37 = m.textureTransforms) === null || _37 === void 0 ? void 0 : _37[1]) === null || _38 === void 0 ? void 0 : _38.offset) === null || _39 === void 0 ? void 0 : _39[0]);
167
+ assert.equal((_42 = (_41 = (_40 = m2.textureTransforms) === null || _40 === void 0 ? void 0 : _40[1]) === null || _41 === void 0 ? void 0 : _41.offset) === null || _42 === void 0 ? void 0 : _42[1], (_45 = (_44 = (_43 = m.textureTransforms) === null || _43 === void 0 ? void 0 : _43[1]) === null || _44 === void 0 ? void 0 : _44.offset) === null || _45 === void 0 ? void 0 : _45[1]);
168
+ assert.equal((_48 = (_47 = (_46 = m2.textureTransforms) === null || _46 === void 0 ? void 0 : _46[1]) === null || _47 === void 0 ? void 0 : _47.scale) === null || _48 === void 0 ? void 0 : _48[0], (_51 = (_50 = (_49 = m.textureTransforms) === null || _49 === void 0 ? void 0 : _49[1]) === null || _50 === void 0 ? void 0 : _50.scale) === null || _51 === void 0 ? void 0 : _51[0]);
169
+ assert.equal((_54 = (_53 = (_52 = m2.textureTransforms) === null || _52 === void 0 ? void 0 : _52[1]) === null || _53 === void 0 ? void 0 : _53.scale) === null || _54 === void 0 ? void 0 : _54[1], (_57 = (_56 = (_55 = m.textureTransforms) === null || _55 === void 0 ? void 0 : _55[1]) === null || _56 === void 0 ? void 0 : _56.scale) === null || _57 === void 0 ? void 0 : _57[1]);
170
+ assert.equal((_59 = (_58 = m2.textureTransforms) === null || _58 === void 0 ? void 0 : _58[1]) === null || _59 === void 0 ? void 0 : _59.rotation, (_61 = (_60 = m.textureTransforms) === null || _60 === void 0 ? void 0 : _60[1]) === null || _61 === void 0 ? void 0 : _61.rotation);
171
+ assert.equal((_64 = (_63 = (_62 = m2.textureTransforms) === null || _62 === void 0 ? void 0 : _62[2]) === null || _63 === void 0 ? void 0 : _63.offset) === null || _64 === void 0 ? void 0 : _64[0], (_67 = (_66 = (_65 = m.textureTransforms) === null || _65 === void 0 ? void 0 : _65[2]) === null || _66 === void 0 ? void 0 : _66.offset) === null || _67 === void 0 ? void 0 : _67[0]);
172
+ assert.equal((_70 = (_69 = (_68 = m2.textureTransforms) === null || _68 === void 0 ? void 0 : _68[2]) === null || _69 === void 0 ? void 0 : _69.offset) === null || _70 === void 0 ? void 0 : _70[1], (_73 = (_72 = (_71 = m.textureTransforms) === null || _71 === void 0 ? void 0 : _71[2]) === null || _72 === void 0 ? void 0 : _72.offset) === null || _73 === void 0 ? void 0 : _73[1]);
173
+ assert.equal((_76 = (_75 = (_74 = m2.textureTransforms) === null || _74 === void 0 ? void 0 : _74[2]) === null || _75 === void 0 ? void 0 : _75.scale) === null || _76 === void 0 ? void 0 : _76[0], (_79 = (_78 = (_77 = m.textureTransforms) === null || _77 === void 0 ? void 0 : _77[2]) === null || _78 === void 0 ? void 0 : _78.scale) === null || _79 === void 0 ? void 0 : _79[0]);
174
+ assert.equal((_82 = (_81 = (_80 = m2.textureTransforms) === null || _80 === void 0 ? void 0 : _80[2]) === null || _81 === void 0 ? void 0 : _81.scale) === null || _82 === void 0 ? void 0 : _82[1], (_85 = (_84 = (_83 = m.textureTransforms) === null || _83 === void 0 ? void 0 : _83[2]) === null || _84 === void 0 ? void 0 : _84.scale) === null || _85 === void 0 ? void 0 : _85[1]);
175
+ assert.equal((_87 = (_86 = m2.textureTransforms) === null || _86 === void 0 ? void 0 : _86[2]) === null || _87 === void 0 ? void 0 : _87.rotation, (_89 = (_88 = m.textureTransforms) === null || _88 === void 0 ? void 0 : _88[2]) === null || _89 === void 0 ? void 0 : _89.rotation);
176
+ assert.equal((_92 = (_91 = (_90 = m2.textureTransforms) === null || _90 === void 0 ? void 0 : _90[3]) === null || _91 === void 0 ? void 0 : _91.offset) === null || _92 === void 0 ? void 0 : _92[0], (_95 = (_94 = (_93 = m.textureTransforms) === null || _93 === void 0 ? void 0 : _93[3]) === null || _94 === void 0 ? void 0 : _94.offset) === null || _95 === void 0 ? void 0 : _95[0]);
177
+ assert.equal((_98 = (_97 = (_96 = m2.textureTransforms) === null || _96 === void 0 ? void 0 : _96[3]) === null || _97 === void 0 ? void 0 : _97.offset) === null || _98 === void 0 ? void 0 : _98[1], (_101 = (_100 = (_99 = m.textureTransforms) === null || _99 === void 0 ? void 0 : _99[3]) === null || _100 === void 0 ? void 0 : _100.offset) === null || _101 === void 0 ? void 0 : _101[1]);
178
+ assert.equal((_104 = (_103 = (_102 = m2.textureTransforms) === null || _102 === void 0 ? void 0 : _102[3]) === null || _103 === void 0 ? void 0 : _103.scale) === null || _104 === void 0 ? void 0 : _104[0], (_107 = (_106 = (_105 = m.textureTransforms) === null || _105 === void 0 ? void 0 : _105[3]) === null || _106 === void 0 ? void 0 : _106.scale) === null || _107 === void 0 ? void 0 : _107[0]);
179
+ assert.equal((_110 = (_109 = (_108 = m2.textureTransforms) === null || _108 === void 0 ? void 0 : _108[3]) === null || _109 === void 0 ? void 0 : _109.scale) === null || _110 === void 0 ? void 0 : _110[1], (_113 = (_112 = (_111 = m.textureTransforms) === null || _111 === void 0 ? void 0 : _111[3]) === null || _112 === void 0 ? void 0 : _112.scale) === null || _113 === void 0 ? void 0 : _113[1]);
180
+ assert.equal((_115 = (_114 = m2.textureTransforms) === null || _114 === void 0 ? void 0 : _114[3]) === null || _115 === void 0 ? void 0 : _115.rotation, (_117 = (_116 = m.textureTransforms) === null || _116 === void 0 ? void 0 : _116[3]) === null || _117 === void 0 ? void 0 : _117.rotation);
181
+ json = m3.getFullMaterialJSON();
182
+ const m4 = LLGLTFMaterialOverride_1.LLGLTFMaterialOverride.fromFullMaterialJSON(json);
183
+ assert.equal(m4.roughnessFactor, m3.roughnessFactor);
184
+ assert.equal(m4.doubleSided, m3.doubleSided);
185
+ assert.equal(m4.alphaCutoff, m3.alphaCutoff);
186
+ assert.equal(m4.alphaMode, m3.alphaMode);
187
+ assert.equal(m4.metallicFactor, m3.metallicFactor);
188
+ assert.equal((_118 = m4.baseColor) === null || _118 === void 0 ? void 0 : _118.length, (_119 = m3.baseColor) === null || _119 === void 0 ? void 0 : _119.length);
189
+ assert.equal((_120 = m4.baseColor) === null || _120 === void 0 ? void 0 : _120[0], (_121 = m3.baseColor) === null || _121 === void 0 ? void 0 : _121[0]);
190
+ assert.equal((_122 = m4.baseColor) === null || _122 === void 0 ? void 0 : _122[1], (_123 = m3.baseColor) === null || _123 === void 0 ? void 0 : _123[1]);
191
+ assert.equal((_124 = m4.baseColor) === null || _124 === void 0 ? void 0 : _124[2], (_125 = m3.baseColor) === null || _125 === void 0 ? void 0 : _125[2]);
192
+ assert.equal((_126 = m4.baseColor) === null || _126 === void 0 ? void 0 : _126[3], (_127 = m3.baseColor) === null || _127 === void 0 ? void 0 : _127[3]);
193
+ assert.equal((_128 = m4.emissiveFactor) === null || _128 === void 0 ? void 0 : _128.length, (_129 = m3.emissiveFactor) === null || _129 === void 0 ? void 0 : _129.length);
194
+ assert.equal((_130 = m4.emissiveFactor) === null || _130 === void 0 ? void 0 : _130[0], (_131 = m3.emissiveFactor) === null || _131 === void 0 ? void 0 : _131[0]);
195
+ assert.equal((_132 = m4.emissiveFactor) === null || _132 === void 0 ? void 0 : _132[1], (_133 = m3.emissiveFactor) === null || _133 === void 0 ? void 0 : _133[1]);
196
+ assert.equal((_134 = m4.emissiveFactor) === null || _134 === void 0 ? void 0 : _134[2], (_135 = m3.emissiveFactor) === null || _135 === void 0 ? void 0 : _135[2]);
197
+ assert.equal((_136 = m4.textures) === null || _136 === void 0 ? void 0 : _136.length, (_137 = m3.textures) === null || _137 === void 0 ? void 0 : _137.length);
198
+ assert.equal((_138 = m4.textures) === null || _138 === void 0 ? void 0 : _138[0], (_139 = m3.textures) === null || _139 === void 0 ? void 0 : _139[0]);
199
+ assert.equal((_140 = m4.textures) === null || _140 === void 0 ? void 0 : _140[1], (_141 = m3.textures) === null || _141 === void 0 ? void 0 : _141[1]);
200
+ assert.equal((_142 = m4.textures) === null || _142 === void 0 ? void 0 : _142[2], (_143 = m3.textures) === null || _143 === void 0 ? void 0 : _143[2]);
201
+ assert.equal((_144 = m4.textures) === null || _144 === void 0 ? void 0 : _144[3], (_145 = m3.textures) === null || _145 === void 0 ? void 0 : _145[3]);
202
+ assert.equal((_146 = m4.textureTransforms) === null || _146 === void 0 ? void 0 : _146.length, (_147 = m3.textureTransforms) === null || _147 === void 0 ? void 0 : _147.length);
203
+ assert.equal((_150 = (_149 = (_148 = m4.textureTransforms) === null || _148 === void 0 ? void 0 : _148[0]) === null || _149 === void 0 ? void 0 : _149.offset) === null || _150 === void 0 ? void 0 : _150[0], (_153 = (_152 = (_151 = m3.textureTransforms) === null || _151 === void 0 ? void 0 : _151[0]) === null || _152 === void 0 ? void 0 : _152.offset) === null || _153 === void 0 ? void 0 : _153[0]);
204
+ assert.equal((_156 = (_155 = (_154 = m4.textureTransforms) === null || _154 === void 0 ? void 0 : _154[0]) === null || _155 === void 0 ? void 0 : _155.offset) === null || _156 === void 0 ? void 0 : _156[1], (_159 = (_158 = (_157 = m3.textureTransforms) === null || _157 === void 0 ? void 0 : _157[0]) === null || _158 === void 0 ? void 0 : _158.offset) === null || _159 === void 0 ? void 0 : _159[1]);
205
+ assert.equal((_162 = (_161 = (_160 = m4.textureTransforms) === null || _160 === void 0 ? void 0 : _160[0]) === null || _161 === void 0 ? void 0 : _161.scale) === null || _162 === void 0 ? void 0 : _162[0], (_165 = (_164 = (_163 = m3.textureTransforms) === null || _163 === void 0 ? void 0 : _163[0]) === null || _164 === void 0 ? void 0 : _164.scale) === null || _165 === void 0 ? void 0 : _165[0]);
206
+ assert.equal((_168 = (_167 = (_166 = m4.textureTransforms) === null || _166 === void 0 ? void 0 : _166[0]) === null || _167 === void 0 ? void 0 : _167.scale) === null || _168 === void 0 ? void 0 : _168[1], (_171 = (_170 = (_169 = m3.textureTransforms) === null || _169 === void 0 ? void 0 : _169[0]) === null || _170 === void 0 ? void 0 : _170.scale) === null || _171 === void 0 ? void 0 : _171[1]);
207
+ assert.equal((_173 = (_172 = m4.textureTransforms) === null || _172 === void 0 ? void 0 : _172[0]) === null || _173 === void 0 ? void 0 : _173.rotation, (_175 = (_174 = m3.textureTransforms) === null || _174 === void 0 ? void 0 : _174[0]) === null || _175 === void 0 ? void 0 : _175.rotation);
208
+ assert.equal((_178 = (_177 = (_176 = m4.textureTransforms) === null || _176 === void 0 ? void 0 : _176[1]) === null || _177 === void 0 ? void 0 : _177.offset) === null || _178 === void 0 ? void 0 : _178[0], (_181 = (_180 = (_179 = m3.textureTransforms) === null || _179 === void 0 ? void 0 : _179[1]) === null || _180 === void 0 ? void 0 : _180.offset) === null || _181 === void 0 ? void 0 : _181[0]);
209
+ assert.equal((_184 = (_183 = (_182 = m4.textureTransforms) === null || _182 === void 0 ? void 0 : _182[1]) === null || _183 === void 0 ? void 0 : _183.offset) === null || _184 === void 0 ? void 0 : _184[1], (_187 = (_186 = (_185 = m3.textureTransforms) === null || _185 === void 0 ? void 0 : _185[1]) === null || _186 === void 0 ? void 0 : _186.offset) === null || _187 === void 0 ? void 0 : _187[1]);
210
+ assert.equal((_190 = (_189 = (_188 = m4.textureTransforms) === null || _188 === void 0 ? void 0 : _188[1]) === null || _189 === void 0 ? void 0 : _189.scale) === null || _190 === void 0 ? void 0 : _190[0], (_193 = (_192 = (_191 = m3.textureTransforms) === null || _191 === void 0 ? void 0 : _191[1]) === null || _192 === void 0 ? void 0 : _192.scale) === null || _193 === void 0 ? void 0 : _193[0]);
211
+ assert.equal((_196 = (_195 = (_194 = m4.textureTransforms) === null || _194 === void 0 ? void 0 : _194[1]) === null || _195 === void 0 ? void 0 : _195.scale) === null || _196 === void 0 ? void 0 : _196[1], (_199 = (_198 = (_197 = m3.textureTransforms) === null || _197 === void 0 ? void 0 : _197[1]) === null || _198 === void 0 ? void 0 : _198.scale) === null || _199 === void 0 ? void 0 : _199[1]);
212
+ assert.equal((_201 = (_200 = m4.textureTransforms) === null || _200 === void 0 ? void 0 : _200[1]) === null || _201 === void 0 ? void 0 : _201.rotation, (_203 = (_202 = m3.textureTransforms) === null || _202 === void 0 ? void 0 : _202[1]) === null || _203 === void 0 ? void 0 : _203.rotation);
213
+ assert.equal((_206 = (_205 = (_204 = m4.textureTransforms) === null || _204 === void 0 ? void 0 : _204[2]) === null || _205 === void 0 ? void 0 : _205.offset) === null || _206 === void 0 ? void 0 : _206[0], (_209 = (_208 = (_207 = m3.textureTransforms) === null || _207 === void 0 ? void 0 : _207[2]) === null || _208 === void 0 ? void 0 : _208.offset) === null || _209 === void 0 ? void 0 : _209[0]);
214
+ assert.equal((_212 = (_211 = (_210 = m4.textureTransforms) === null || _210 === void 0 ? void 0 : _210[2]) === null || _211 === void 0 ? void 0 : _211.offset) === null || _212 === void 0 ? void 0 : _212[1], (_215 = (_214 = (_213 = m3.textureTransforms) === null || _213 === void 0 ? void 0 : _213[2]) === null || _214 === void 0 ? void 0 : _214.offset) === null || _215 === void 0 ? void 0 : _215[1]);
215
+ assert.equal((_218 = (_217 = (_216 = m4.textureTransforms) === null || _216 === void 0 ? void 0 : _216[2]) === null || _217 === void 0 ? void 0 : _217.scale) === null || _218 === void 0 ? void 0 : _218[0], (_221 = (_220 = (_219 = m3.textureTransforms) === null || _219 === void 0 ? void 0 : _219[2]) === null || _220 === void 0 ? void 0 : _220.scale) === null || _221 === void 0 ? void 0 : _221[0]);
216
+ assert.equal((_224 = (_223 = (_222 = m4.textureTransforms) === null || _222 === void 0 ? void 0 : _222[2]) === null || _223 === void 0 ? void 0 : _223.scale) === null || _224 === void 0 ? void 0 : _224[1], (_227 = (_226 = (_225 = m3.textureTransforms) === null || _225 === void 0 ? void 0 : _225[2]) === null || _226 === void 0 ? void 0 : _226.scale) === null || _227 === void 0 ? void 0 : _227[1]);
217
+ assert.equal((_229 = (_228 = m4.textureTransforms) === null || _228 === void 0 ? void 0 : _228[2]) === null || _229 === void 0 ? void 0 : _229.rotation, (_231 = (_230 = m3.textureTransforms) === null || _230 === void 0 ? void 0 : _230[2]) === null || _231 === void 0 ? void 0 : _231.rotation);
218
+ assert.equal((_234 = (_233 = (_232 = m4.textureTransforms) === null || _232 === void 0 ? void 0 : _232[3]) === null || _233 === void 0 ? void 0 : _233.offset) === null || _234 === void 0 ? void 0 : _234[0], (_237 = (_236 = (_235 = m3.textureTransforms) === null || _235 === void 0 ? void 0 : _235[3]) === null || _236 === void 0 ? void 0 : _236.offset) === null || _237 === void 0 ? void 0 : _237[0]);
219
+ assert.equal((_240 = (_239 = (_238 = m4.textureTransforms) === null || _238 === void 0 ? void 0 : _238[3]) === null || _239 === void 0 ? void 0 : _239.offset) === null || _240 === void 0 ? void 0 : _240[1], (_243 = (_242 = (_241 = m3.textureTransforms) === null || _241 === void 0 ? void 0 : _241[3]) === null || _242 === void 0 ? void 0 : _242.offset) === null || _243 === void 0 ? void 0 : _243[1]);
220
+ assert.equal((_246 = (_245 = (_244 = m4.textureTransforms) === null || _244 === void 0 ? void 0 : _244[3]) === null || _245 === void 0 ? void 0 : _245.scale) === null || _246 === void 0 ? void 0 : _246[0], (_249 = (_248 = (_247 = m3.textureTransforms) === null || _247 === void 0 ? void 0 : _247[3]) === null || _248 === void 0 ? void 0 : _248.scale) === null || _249 === void 0 ? void 0 : _249[0]);
221
+ assert.equal((_252 = (_251 = (_250 = m4.textureTransforms) === null || _250 === void 0 ? void 0 : _250[3]) === null || _251 === void 0 ? void 0 : _251.scale) === null || _252 === void 0 ? void 0 : _252[1], (_255 = (_254 = (_253 = m3.textureTransforms) === null || _253 === void 0 ? void 0 : _253[3]) === null || _254 === void 0 ? void 0 : _254.scale) === null || _255 === void 0 ? void 0 : _255[1]);
222
+ assert.equal((_257 = (_256 = m4.textureTransforms) === null || _256 === void 0 ? void 0 : _256[3]) === null || _257 === void 0 ? void 0 : _257.rotation, (_259 = (_258 = m3.textureTransforms) === null || _258 === void 0 ? void 0 : _258[3]) === null || _259 === void 0 ? void 0 : _259.rotation);
223
+ });
224
+ });
225
+ //# sourceMappingURL=LLGLTFMaterialOverride.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LLGLTFMaterialOverride.spec.js","sourceRoot":"","sources":["../../../lib/classes/LLGLTFMaterialOverride.spec.ts"],"names":[],"mappings":"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"}
@@ -119,7 +119,7 @@ class ObjectStoreLite {
119
119
  override.baseColor = baseColor;
120
120
  }
121
121
  if (emissiveColor !== undefined && Array.isArray(emissiveColor) && emissiveColor.length === 3 && isNumberArray(emissiveColor)) {
122
- override.emissiveColor = emissiveColor;
122
+ override.emissiveFactor = emissiveColor;
123
123
  }
124
124
  if (metallicFactor !== undefined && typeof metallicFactor === 'number') {
125
125
  override.metallicFactor = metallicFactor;
@@ -149,8 +149,15 @@ class ObjectStoreLite {
149
149
  if (textureTransforms !== undefined && Array.isArray(textureTransforms) && textureTransforms.length === 4) {
150
150
  override.textureTransforms = [];
151
151
  for (const transform of textureTransforms) {
152
- if (isLLGLTFTextureTransformOverride(transform)) {
153
- override.textureTransforms.push(transform);
152
+ if (transform instanceof LLSDMap_1.LLSDMap) {
153
+ const tObj = {
154
+ offset: transform.get('o'),
155
+ scale: transform.get('s'),
156
+ rotation: transform.get('r')
157
+ };
158
+ if (isLLGLTFTextureTransformOverride(tObj)) {
159
+ override.textureTransforms.push(tObj);
160
+ }
154
161
  }
155
162
  }
156
163
  }