three-stdlib 2.13.0 → 2.14.1
Sign up to get free protection for your applications and to get access to all the features.
- package/{Nodes-607e9ed8.js → Nodes-4f766d71.js} +0 -0
- package/{Nodes-627a8bdf.js → Nodes-9aa16d74.js} +0 -0
- package/geometries/ConvexGeometry.cjs.js +1 -1
- package/geometries/ConvexGeometry.js +1 -1
- package/geometries/TextGeometry.cjs.js +1 -1
- package/geometries/TextGeometry.d.ts +2 -0
- package/geometries/TextGeometry.js +6 -1
- package/index.cjs.js +1 -1
- package/loaders/FontLoader.cjs.js +1 -1
- package/loaders/FontLoader.d.ts +5 -1
- package/loaders/FontLoader.js +10 -5
- package/loaders/KTX2Loader.cjs.js +1 -1
- package/loaders/KTX2Loader.js +493 -102
- package/loaders/NodeMaterialLoader.cjs.js +1 -1
- package/loaders/RGBMLoader.js +248 -177
- package/misc/ProgressiveLightmap.cjs.js +1 -1
- package/misc/ProgressiveLightmap.js +2 -2
- package/nodes/Nodes.cjs.js +1 -1
- package/nodes/core/NodeBuilder.js +5 -1
- package/nodes/loaders/NodeLoader.cjs.js +1 -1
- package/nodes/loaders/NodeObjectLoader.cjs.js +1 -1
- package/package.json +2 -2
- package/utils/WorkerPool.cjs.js +1 -0
- package/utils/WorkerPool.js +82 -0
@@ -1 +1 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),s=require("../Nodes-
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),s=require("../Nodes-9aa16d74.js");require("../nodes/core/ArrayUniformNode.cjs.js"),require("../nodes/core/UniformNode.cjs.js"),require("../nodes/core/InputNode.cjs.js"),require("../nodes/core/Node.cjs.js"),require("../nodes/core/constants.cjs.js"),require("../nodes/core/NodeUtils.cjs.js"),require("../nodes/core/AttributeNode.cjs.js"),require("../nodes/core/VaryNode.cjs.js"),require("../nodes/core/BypassNode.cjs.js"),require("../nodes/core/CodeNode.cjs.js"),require("../nodes/core/ConstNode.cjs.js"),require("../nodes/core/ContextNode.cjs.js"),require("../nodes/core/ExpressionNode.cjs.js"),require("../nodes/core/TempNode.cjs.js"),require("../nodes/core/FunctionCallNode.cjs.js"),require("../nodes/core/FunctionNode.cjs.js"),require("../nodes/core/NodeAttribute.cjs.js"),require("../nodes/core/NodeBuilder.cjs.js"),require("../nodes/core/NodeUniform.cjs.js"),require("../nodes/core/NodeVary.cjs.js"),require("../nodes/core/NodeVar.cjs.js"),require("../nodes/core/NodeCode.cjs.js"),require("../nodes/core/NodeKeywords.cjs.js"),require("../nodes/core/NodeFrame.cjs.js"),require("../nodes/core/NodeFunctionInput.cjs.js"),require("../nodes/core/PropertyNode.cjs.js"),require("../nodes/core/VarNode.cjs.js"),require("../nodes/accessors/BufferNode.cjs.js"),require("../nodes/accessors/CameraNode.cjs.js"),require("@babel/runtime/helpers/defineProperty"),require("../nodes/accessors/Object3DNode.cjs.js"),require("../nodes/accessors/CubeTextureNode.cjs.js"),require("../nodes/accessors/TextureNode.cjs.js"),require("../nodes/accessors/UVNode.cjs.js"),require("../nodes/accessors/ReflectNode.cjs.js"),require("../nodes/ShaderNode.cjs.js"),require("../nodes/accessors/PositionNode.cjs.js"),require("../nodes/accessors/ModelNode.cjs.js"),require("../nodes/math/MathNode.cjs.js"),require("../nodes/utils/JoinNode.cjs.js"),require("../nodes/utils/SplitNode.cjs.js"),require("../nodes/math/OperatorNode.cjs.js"),require("../nodes/accessors/NormalNode.cjs.js"),require("../nodes/math/CondNode.cjs.js"),require("../nodes/utils/ArrayElementNode.cjs.js"),require("../nodes/utils/ConvertNode.cjs.js"),require("../nodes/accessors/MaterialNode.cjs.js"),require("../nodes/accessors/MaterialReferenceNode.cjs.js"),require("../nodes/accessors/ReferenceNode.cjs.js"),require("../nodes/accessors/ModelViewProjectionNode.cjs.js"),require("../nodes/accessors/PointUVNode.cjs.js"),require("../nodes/accessors/SkinningNode.cjs.js"),require("../nodes/display/ColorSpaceNode.cjs.js"),require("../nodes/display/NormalMapNode.cjs.js"),require("../nodes/lights/LightContextNode.cjs.js"),require("../nodes/functions/BSDFs.cjs.js"),require("../nodes/lights/LightNode.cjs.js"),require("../nodes/lights/LightsNode.cjs.js"),require("../nodes/utils/SpriteSheetUVNode.cjs.js"),require("../nodes/utils/MatcapUVNode.cjs.js"),require("../nodes/utils/OscNode.cjs.js"),require("../nodes/utils/TimerNode.cjs.js"),require("../nodes/loaders/NodeMaterialLoader.cjs.js"),require("../nodes/procedural/CheckerNode.cjs.js"),require("../nodes/fog/FogNode.cjs.js"),require("../nodes/fog/FogRangeNode.cjs.js"),require("../nodes/materials/LineBasicNodeMaterial.cjs.js"),require("../nodes/materials/NodeMaterial.cjs.js"),require("../nodes/materials/MeshBasicNodeMaterial.cjs.js"),require("../nodes/materials/MeshStandardNodeMaterial.cjs.js"),require("../nodes/materials/PointsNodeMaterial.cjs.js");class r extends e.Loader{constructor(e,s={}){super(e),this.nodes={},this.materials={},this.passes={},this.names={},this.library=s}load(s,r,o,i){const t=this,d=new e.FileLoader(t.manager);return d.setPath(t.path),d.load(s,(function(e){r(t.parse(JSON.parse(e)))}),o,i),this}getObjectByName(e){return this.names[e]}getObjectById(e){return this.library[e]||this.nodes[e]||this.materials[e]||this.passes[e]||this.names[e]}getNode(e){const s=this.getObjectById(e);return s||console.warn('Node "'+e+'" not found.'),s}resolve(e){switch(typeof e){case"boolean":case"number":return e;case"string":return/^\w{8}-\w{4}-\w{4}-\w{4}-\w{12}$/i.test(e)||this.library[e]?this.getNode(e):e;default:if(Array.isArray(e))for(let s=0;s<e.length;s++)e[s]=this.resolve(e[s]);else for(const s in e)"uuid"!==s&&(e[s]=this.resolve(e[s]))}return e}declare(e){let r,o,i;for(r in e.nodes)o=e.nodes[r],i=new s.Nodes[o.nodeType+"Node"],o.name&&(i.name=o.name,this.names[i.name]=i),this.nodes[r]=i;for(r in e.materials)o=e.materials[r],i=new s.Nodes[o.type],o.name&&(i.name=o.name,this.names[i.name]=i),this.materials[r]=i;for(r in e.passes)o=e.passes[r],i=new s.Nodes[o.type],o.name&&(i.name=o.name,this.names[i.name]=i),this.passes[r]=i;return e.material&&(this.material=this.materials[e.material]),e.pass&&(this.pass=this.passes[e.pass]),e}parse(e){let s;for(s in(e=this.resolve(this.declare(e))).nodes)this.nodes[s].copy(e.nodes[s]);for(s in e.materials)this.materials[s].copy(e.materials[s]);for(s in e.passes)this.passes[s].copy(e.passes[s]);return this.material||this.pass||this}}exports.NodeMaterialLoader=r,exports.NodeMaterialLoaderUtils=class{static replaceUUIDObject(e,s,r,o){if(o=void 0===o||o,"object"==typeof s&&(s=s.uuid),"object"==typeof e){const i=Object.keys(e);for(let t=0;t<i.length;t++){const d=i[t];o&&(e[d]=this.replaceUUIDObject(e[d],s,r)),d===s&&(e[s]=e[d],delete e[d])}}return e===s?r:e}static replaceUUID(e,s,r){return this.replaceUUIDObject(e,s,r,!1),this.replaceUUIDObject(e.nodes,s,r),this.replaceUUIDObject(e.materials,s,r),this.replaceUUIDObject(e.passes,s,r),this.replaceUUIDObject(e.library,s,r,!1),e}};
|
package/loaders/RGBMLoader.js
CHANGED
@@ -128,43 +128,60 @@ UPNG.toRGBA8.decodeImage = function (data, w, h, out) {
|
|
128
128
|
if (ctype == 6) {
|
129
129
|
// RGB + alpha
|
130
130
|
var qarea = area << 2;
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
131
|
+
|
132
|
+
if (depth == 8) {
|
133
|
+
for (var i = 0; i < qarea; i += 4) {
|
134
|
+
bf[i] = data[i];
|
135
|
+
bf[i + 1] = data[i + 1];
|
136
|
+
bf[i + 2] = data[i + 2];
|
137
|
+
bf[i + 3] = data[i + 3];
|
138
|
+
}
|
136
139
|
}
|
137
|
-
|
138
|
-
|
140
|
+
|
141
|
+
if (depth == 16) {
|
142
|
+
for (var i = 0; i < qarea; i++) {
|
143
|
+
bf[i] = data[i << 1];
|
144
|
+
}
|
139
145
|
}
|
140
146
|
} else if (ctype == 2) {
|
141
147
|
// RGB
|
142
148
|
var ts = out.tabs['tRNS'];
|
143
149
|
|
144
150
|
if (ts == null) {
|
145
|
-
if (depth == 8)
|
146
|
-
var
|
147
|
-
|
151
|
+
if (depth == 8) {
|
152
|
+
for (var i = 0; i < area; i++) {
|
153
|
+
var ti = i * 3;
|
154
|
+
bf32[i] = 255 << 24 | data[ti + 2] << 16 | data[ti + 1] << 8 | data[ti];
|
155
|
+
}
|
148
156
|
}
|
149
|
-
|
150
|
-
|
151
|
-
|
157
|
+
|
158
|
+
if (depth == 16) {
|
159
|
+
for (var i = 0; i < area; i++) {
|
160
|
+
var ti = i * 6;
|
161
|
+
bf32[i] = 255 << 24 | data[ti + 4] << 16 | data[ti + 2] << 8 | data[ti];
|
162
|
+
}
|
152
163
|
}
|
153
164
|
} else {
|
154
165
|
var tr = ts[0],
|
155
166
|
tg = ts[1],
|
156
167
|
tb = ts[2];
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
168
|
+
|
169
|
+
if (depth == 8) {
|
170
|
+
for (var i = 0; i < area; i++) {
|
171
|
+
var qi = i << 2,
|
172
|
+
ti = i * 3;
|
173
|
+
bf32[i] = 255 << 24 | data[ti + 2] << 16 | data[ti + 1] << 8 | data[ti];
|
174
|
+
if (data[ti] == tr && data[ti + 1] == tg && data[ti + 2] == tb) bf[qi + 3] = 0;
|
175
|
+
}
|
162
176
|
}
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
177
|
+
|
178
|
+
if (depth == 16) {
|
179
|
+
for (var i = 0; i < area; i++) {
|
180
|
+
var qi = i << 2,
|
181
|
+
ti = i * 6;
|
182
|
+
bf32[i] = 255 << 24 | data[ti + 4] << 16 | data[ti + 2] << 8 | data[ti];
|
183
|
+
if (rs(data, ti) == tr && rs(data, ti + 2) == tg && rs(data, ti + 4) == tb) bf[qi + 3] = 0;
|
184
|
+
}
|
168
185
|
}
|
169
186
|
}
|
170
187
|
} else if (ctype == 3) {
|
@@ -173,41 +190,61 @@ UPNG.toRGBA8.decodeImage = function (data, w, h, out) {
|
|
173
190
|
ap = out.tabs['tRNS'],
|
174
191
|
tl = ap ? ap.length : 0; //console.log(p, ap);
|
175
192
|
|
176
|
-
if (depth == 1)
|
177
|
-
var
|
178
|
-
|
193
|
+
if (depth == 1) {
|
194
|
+
for (var y = 0; y < h; y++) {
|
195
|
+
var s0 = y * bpl,
|
196
|
+
t0 = y * w;
|
197
|
+
|
198
|
+
for (var i = 0; i < w; i++) {
|
199
|
+
var qi = t0 + i << 2,
|
200
|
+
j = data[s0 + (i >> 3)] >> 7 - ((i & 7) << 0) & 1,
|
201
|
+
cj = 3 * j;
|
202
|
+
bf[qi] = p[cj];
|
203
|
+
bf[qi + 1] = p[cj + 1];
|
204
|
+
bf[qi + 2] = p[cj + 2];
|
205
|
+
bf[qi + 3] = j < tl ? ap[j] : 255;
|
206
|
+
}
|
207
|
+
}
|
208
|
+
}
|
179
209
|
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
210
|
+
if (depth == 2) {
|
211
|
+
for (var y = 0; y < h; y++) {
|
212
|
+
var s0 = y * bpl,
|
213
|
+
t0 = y * w;
|
214
|
+
|
215
|
+
for (var i = 0; i < w; i++) {
|
216
|
+
var qi = t0 + i << 2,
|
217
|
+
j = data[s0 + (i >> 2)] >> 6 - ((i & 3) << 1) & 3,
|
218
|
+
cj = 3 * j;
|
219
|
+
bf[qi] = p[cj];
|
220
|
+
bf[qi + 1] = p[cj + 1];
|
221
|
+
bf[qi + 2] = p[cj + 2];
|
222
|
+
bf[qi + 3] = j < tl ? ap[j] : 255;
|
223
|
+
}
|
188
224
|
}
|
189
225
|
}
|
190
|
-
if (depth == 2) for (var y = 0; y < h; y++) {
|
191
|
-
var s0 = y * bpl,
|
192
|
-
t0 = y * w;
|
193
226
|
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
227
|
+
if (depth == 4) {
|
228
|
+
for (var y = 0; y < h; y++) {
|
229
|
+
var s0 = y * bpl,
|
230
|
+
t0 = y * w;
|
231
|
+
|
232
|
+
for (var i = 0; i < w; i++) {
|
233
|
+
var qi = t0 + i << 2,
|
234
|
+
j = data[s0 + (i >> 1)] >> 4 - ((i & 1) << 2) & 15,
|
235
|
+
cj = 3 * j;
|
236
|
+
bf[qi] = p[cj];
|
237
|
+
bf[qi + 1] = p[cj + 1];
|
238
|
+
bf[qi + 2] = p[cj + 2];
|
239
|
+
bf[qi + 3] = j < tl ? ap[j] : 255;
|
240
|
+
}
|
202
241
|
}
|
203
242
|
}
|
204
|
-
if (depth == 4) for (var y = 0; y < h; y++) {
|
205
|
-
var s0 = y * bpl,
|
206
|
-
t0 = y * w;
|
207
243
|
|
208
|
-
|
209
|
-
|
210
|
-
|
244
|
+
if (depth == 8) {
|
245
|
+
for (var i = 0; i < area; i++) {
|
246
|
+
var qi = i << 2,
|
247
|
+
j = data[i],
|
211
248
|
cj = 3 * j;
|
212
249
|
bf[qi] = p[cj];
|
213
250
|
bf[qi + 1] = p[cj + 1];
|
@@ -215,34 +252,30 @@ UPNG.toRGBA8.decodeImage = function (data, w, h, out) {
|
|
215
252
|
bf[qi + 3] = j < tl ? ap[j] : 255;
|
216
253
|
}
|
217
254
|
}
|
218
|
-
if (depth == 8) for (var i = 0; i < area; i++) {
|
219
|
-
var qi = i << 2,
|
220
|
-
j = data[i],
|
221
|
-
cj = 3 * j;
|
222
|
-
bf[qi] = p[cj];
|
223
|
-
bf[qi + 1] = p[cj + 1];
|
224
|
-
bf[qi + 2] = p[cj + 2];
|
225
|
-
bf[qi + 3] = j < tl ? ap[j] : 255;
|
226
|
-
}
|
227
255
|
} else if (ctype == 4) {
|
228
256
|
// gray + alpha
|
229
|
-
if (depth == 8)
|
230
|
-
var
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
257
|
+
if (depth == 8) {
|
258
|
+
for (var i = 0; i < area; i++) {
|
259
|
+
var qi = i << 2,
|
260
|
+
di = i << 1,
|
261
|
+
gr = data[di];
|
262
|
+
bf[qi] = gr;
|
263
|
+
bf[qi + 1] = gr;
|
264
|
+
bf[qi + 2] = gr;
|
265
|
+
bf[qi + 3] = data[di + 1];
|
266
|
+
}
|
237
267
|
}
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
268
|
+
|
269
|
+
if (depth == 16) {
|
270
|
+
for (var i = 0; i < area; i++) {
|
271
|
+
var qi = i << 2,
|
272
|
+
di = i << 2,
|
273
|
+
gr = data[di];
|
274
|
+
bf[qi] = gr;
|
275
|
+
bf[qi + 1] = gr;
|
276
|
+
bf[qi + 2] = gr;
|
277
|
+
bf[qi + 3] = data[di + 2];
|
278
|
+
}
|
246
279
|
}
|
247
280
|
} else if (ctype == 0) {
|
248
281
|
// gray
|
@@ -251,26 +284,37 @@ UPNG.toRGBA8.decodeImage = function (data, w, h, out) {
|
|
251
284
|
for (var y = 0; y < h; y++) {
|
252
285
|
var off = y * bpl,
|
253
286
|
to = y * w;
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
287
|
+
|
288
|
+
if (depth == 1) {
|
289
|
+
for (var x = 0; x < w; x++) {
|
290
|
+
var gr = 255 * (data[off + (x >>> 3)] >>> 7 - (x & 7) & 1),
|
291
|
+
al = gr == tr * 255 ? 0 : 255;
|
292
|
+
bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
|
293
|
+
}
|
294
|
+
} else if (depth == 2) {
|
295
|
+
for (var x = 0; x < w; x++) {
|
296
|
+
var gr = 85 * (data[off + (x >>> 2)] >>> 6 - ((x & 3) << 1) & 3),
|
297
|
+
al = gr == tr * 85 ? 0 : 255;
|
298
|
+
bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
|
299
|
+
}
|
300
|
+
} else if (depth == 4) {
|
301
|
+
for (var x = 0; x < w; x++) {
|
302
|
+
var gr = 17 * (data[off + (x >>> 1)] >>> 4 - ((x & 1) << 2) & 15),
|
303
|
+
al = gr == tr * 17 ? 0 : 255;
|
304
|
+
bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
|
305
|
+
}
|
306
|
+
} else if (depth == 8) {
|
307
|
+
for (var x = 0; x < w; x++) {
|
308
|
+
var gr = data[off + x],
|
309
|
+
al = gr == tr ? 0 : 255;
|
310
|
+
bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
|
311
|
+
}
|
312
|
+
} else if (depth == 16) {
|
313
|
+
for (var x = 0; x < w; x++) {
|
314
|
+
var gr = data[off + (x << 1)],
|
315
|
+
al = rs(data, off + (x << 1)) == tr ? 0 : 255;
|
316
|
+
bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
|
317
|
+
}
|
274
318
|
}
|
275
319
|
}
|
276
320
|
} //console.log(Date.now()-time);
|
@@ -358,10 +402,14 @@ UPNG.decode = function (buff) {
|
|
358
402
|
var nz = bin.nextZero(data, offset);
|
359
403
|
keyw = bin.readASCII(data, offset, nz - offset);
|
360
404
|
var tl = offset + len - nz - 1;
|
361
|
-
|
405
|
+
|
406
|
+
if (type == 'tEXt') {
|
407
|
+
text = bin.readASCII(data, nz + 1, tl);
|
408
|
+
} else {
|
362
409
|
bfr = UPNG.decode._inflate(data.slice(nz + 2, nz + 2 + tl));
|
363
410
|
text = bin.readUTF8(bfr, 0, bfr.length);
|
364
411
|
}
|
412
|
+
|
365
413
|
out.tabs[type][keyw] = text;
|
366
414
|
} else if (type == 'iTXt') {
|
367
415
|
if (out.tabs[type] == null) out.tabs[type] = {};
|
@@ -379,10 +427,14 @@ UPNG.decode = function (buff) {
|
|
379
427
|
bin.readUTF8(data, off, nz - off);
|
380
428
|
off = nz + 1;
|
381
429
|
var tl = len - (off - offset);
|
382
|
-
|
430
|
+
|
431
|
+
if (cflag == 0) {
|
432
|
+
text = bin.readUTF8(data, off, tl);
|
433
|
+
} else {
|
383
434
|
bfr = UPNG.decode._inflate(data.slice(off, off + tl));
|
384
435
|
text = bin.readUTF8(bfr, 0, bfr.length);
|
385
436
|
}
|
437
|
+
|
386
438
|
out.tabs[type][keyw] = text;
|
387
439
|
} else if (type == 'PLTE') {
|
388
440
|
out.tabs[type] = bin.readBytes(data, offset, len);
|
@@ -393,8 +445,18 @@ UPNG.decode = function (buff) {
|
|
393
445
|
for (var i = 0; i < pl; i++) out.tabs[type].push(rUs(data, offset + i * 2));
|
394
446
|
} else if (type == 'tRNS') {
|
395
447
|
if (out.ctype == 3) out.tabs[type] = bin.readBytes(data, offset, len);else if (out.ctype == 0) out.tabs[type] = rUs(data, offset);else if (out.ctype == 2) out.tabs[type] = [rUs(data, offset), rUs(data, offset + 2), rUs(data, offset + 4)]; //else console.log("tRNS for unsupported color type",out.ctype, len);
|
396
|
-
} else if (type == 'gAMA')
|
397
|
-
|
448
|
+
} else if (type == 'gAMA') {
|
449
|
+
out.tabs[type] = bin.readUint(data, offset) / 100000;
|
450
|
+
} else if (type == 'sRGB') {
|
451
|
+
out.tabs[type] = data[offset];
|
452
|
+
} else if (type == 'bKGD') {
|
453
|
+
if (out.ctype == 0 || out.ctype == 4) {
|
454
|
+
out.tabs[type] = [rUs(data, offset)];
|
455
|
+
} else if (out.ctype == 2 || out.ctype == 6) {
|
456
|
+
out.tabs[type] = [rUs(data, offset), rUs(data, offset + 2), rUs(data, offset + 4)];
|
457
|
+
} else if (out.ctype == 3) {
|
458
|
+
out.tabs[type] = data[offset];
|
459
|
+
}
|
398
460
|
} else if (type == 'IEND') {
|
399
461
|
break;
|
400
462
|
} //else { console.log("unknown chunk type", type, len); out.tabs[type]=data.slice(offset,offset+len); }
|
@@ -669,18 +731,20 @@ UPNG.inflateRaw = function () {
|
|
669
731
|
n = H.H.m,
|
670
732
|
A = n.r;
|
671
733
|
|
672
|
-
for (var l = 0; l < V; l += 2)
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
734
|
+
for (var l = 0; l < V; l += 2) {
|
735
|
+
if (N[l + 1] != 0) {
|
736
|
+
var M = l >> 1,
|
737
|
+
I = N[l + 1],
|
738
|
+
e = M << 4 | I,
|
739
|
+
b = W - I,
|
740
|
+
Z = N[l] << b,
|
741
|
+
m = Z + (1 << b);
|
742
|
+
|
743
|
+
while (Z != m) {
|
744
|
+
var J = A[Z] >>> 15 - W;
|
745
|
+
R[J] = e;
|
746
|
+
Z++;
|
747
|
+
}
|
684
748
|
}
|
685
749
|
}
|
686
750
|
};
|
@@ -912,7 +976,10 @@ UPNG.decode._filterZero = function (data, out, off, w, h) {
|
|
912
976
|
di = i + y + 1;
|
913
977
|
type = data[di - 1];
|
914
978
|
x = 0;
|
915
|
-
|
979
|
+
|
980
|
+
if (type == 0) {
|
981
|
+
for (; x < bpl; x++) data[i + x] = data[di + x];
|
982
|
+
} else if (type == 1) {
|
916
983
|
for (; x < bpp; x++) data[i + x] = data[di + x];
|
917
984
|
|
918
985
|
for (; x < bpl; x++) data[i + x] = data[di + x] + data[i + x - bpp];
|
@@ -925,7 +992,9 @@ UPNG.decode._filterZero = function (data, out, off, w, h) {
|
|
925
992
|
} else {
|
926
993
|
for (; x < bpp; x++) data[i + x] = data[di + x] + paeth(0, data[i + x - bpl], 0);
|
927
994
|
|
928
|
-
for (; x < bpl; x++)
|
995
|
+
for (; x < bpl; x++) {
|
996
|
+
data[i + x] = data[di + x] + paeth(data[i + x - bpp], data[i + x - bpl], data[i + x - bpp - bpl]);
|
997
|
+
}
|
929
998
|
}
|
930
999
|
}
|
931
1000
|
|
@@ -1023,71 +1092,73 @@ UPNG._copyTile = function (sb, sw, sh, tb, tw, th, xoff, yoff, mode) {
|
|
1023
1092
|
var si = 0,
|
1024
1093
|
ti = 0;
|
1025
1094
|
|
1026
|
-
for (var y = 0; y < h; y++)
|
1027
|
-
|
1028
|
-
|
1029
|
-
|
1030
|
-
|
1031
|
-
si = (-yoff + y) * sw - xoff + x << 2;
|
1032
|
-
ti = y * tw + x << 2;
|
1033
|
-
}
|
1034
|
-
|
1035
|
-
if (mode == 0) {
|
1036
|
-
tb[ti] = sb[si];
|
1037
|
-
tb[ti + 1] = sb[si + 1];
|
1038
|
-
tb[ti + 2] = sb[si + 2];
|
1039
|
-
tb[ti + 3] = sb[si + 3];
|
1040
|
-
} else if (mode == 1) {
|
1041
|
-
var fa = sb[si + 3] * (1 / 255),
|
1042
|
-
fr = sb[si] * fa,
|
1043
|
-
fg = sb[si + 1] * fa,
|
1044
|
-
fb = sb[si + 2] * fa;
|
1045
|
-
var ba = tb[ti + 3] * (1 / 255),
|
1046
|
-
br = tb[ti] * ba,
|
1047
|
-
bg = tb[ti + 1] * ba,
|
1048
|
-
bb = tb[ti + 2] * ba;
|
1049
|
-
var ifa = 1 - fa,
|
1050
|
-
oa = fa + ba * ifa,
|
1051
|
-
ioa = oa == 0 ? 0 : 1 / oa;
|
1052
|
-
tb[ti + 3] = 255 * oa;
|
1053
|
-
tb[ti + 0] = (fr + br * ifa) * ioa;
|
1054
|
-
tb[ti + 1] = (fg + bg * ifa) * ioa;
|
1055
|
-
tb[ti + 2] = (fb + bb * ifa) * ioa;
|
1056
|
-
} else if (mode == 2) {
|
1057
|
-
// copy only differences, otherwise zero
|
1058
|
-
var fa = sb[si + 3],
|
1059
|
-
fr = sb[si],
|
1060
|
-
fg = sb[si + 1],
|
1061
|
-
fb = sb[si + 2];
|
1062
|
-
var ba = tb[ti + 3],
|
1063
|
-
br = tb[ti],
|
1064
|
-
bg = tb[ti + 1],
|
1065
|
-
bb = tb[ti + 2];
|
1066
|
-
|
1067
|
-
if (fa == ba && fr == br && fg == bg && fb == bb) {
|
1068
|
-
tb[ti] = 0;
|
1069
|
-
tb[ti + 1] = 0;
|
1070
|
-
tb[ti + 2] = 0;
|
1071
|
-
tb[ti + 3] = 0;
|
1095
|
+
for (var y = 0; y < h; y++) {
|
1096
|
+
for (var x = 0; x < w; x++) {
|
1097
|
+
if (xoff >= 0 && yoff >= 0) {
|
1098
|
+
si = y * sw + x << 2;
|
1099
|
+
ti = (yoff + y) * tw + xoff + x << 2;
|
1072
1100
|
} else {
|
1073
|
-
|
1074
|
-
|
1075
|
-
|
1076
|
-
|
1101
|
+
si = (-yoff + y) * sw - xoff + x << 2;
|
1102
|
+
ti = y * tw + x << 2;
|
1103
|
+
}
|
1104
|
+
|
1105
|
+
if (mode == 0) {
|
1106
|
+
tb[ti] = sb[si];
|
1107
|
+
tb[ti + 1] = sb[si + 1];
|
1108
|
+
tb[ti + 2] = sb[si + 2];
|
1109
|
+
tb[ti + 3] = sb[si + 3];
|
1110
|
+
} else if (mode == 1) {
|
1111
|
+
var fa = sb[si + 3] * (1 / 255),
|
1112
|
+
fr = sb[si] * fa,
|
1113
|
+
fg = sb[si + 1] * fa,
|
1114
|
+
fb = sb[si + 2] * fa;
|
1115
|
+
var ba = tb[ti + 3] * (1 / 255),
|
1116
|
+
br = tb[ti] * ba,
|
1117
|
+
bg = tb[ti + 1] * ba,
|
1118
|
+
bb = tb[ti + 2] * ba;
|
1119
|
+
var ifa = 1 - fa,
|
1120
|
+
oa = fa + ba * ifa,
|
1121
|
+
ioa = oa == 0 ? 0 : 1 / oa;
|
1122
|
+
tb[ti + 3] = 255 * oa;
|
1123
|
+
tb[ti + 0] = (fr + br * ifa) * ioa;
|
1124
|
+
tb[ti + 1] = (fg + bg * ifa) * ioa;
|
1125
|
+
tb[ti + 2] = (fb + bb * ifa) * ioa;
|
1126
|
+
} else if (mode == 2) {
|
1127
|
+
// copy only differences, otherwise zero
|
1128
|
+
var fa = sb[si + 3],
|
1129
|
+
fr = sb[si],
|
1130
|
+
fg = sb[si + 1],
|
1131
|
+
fb = sb[si + 2];
|
1132
|
+
var ba = tb[ti + 3],
|
1133
|
+
br = tb[ti],
|
1134
|
+
bg = tb[ti + 1],
|
1135
|
+
bb = tb[ti + 2];
|
1136
|
+
|
1137
|
+
if (fa == ba && fr == br && fg == bg && fb == bb) {
|
1138
|
+
tb[ti] = 0;
|
1139
|
+
tb[ti + 1] = 0;
|
1140
|
+
tb[ti + 2] = 0;
|
1141
|
+
tb[ti + 3] = 0;
|
1142
|
+
} else {
|
1143
|
+
tb[ti] = fr;
|
1144
|
+
tb[ti + 1] = fg;
|
1145
|
+
tb[ti + 2] = fb;
|
1146
|
+
tb[ti + 3] = fa;
|
1147
|
+
}
|
1148
|
+
} else if (mode == 3) {
|
1149
|
+
// check if can be blended
|
1150
|
+
var fa = sb[si + 3],
|
1151
|
+
fr = sb[si],
|
1152
|
+
fg = sb[si + 1],
|
1153
|
+
fb = sb[si + 2];
|
1154
|
+
var ba = tb[ti + 3],
|
1155
|
+
br = tb[ti],
|
1156
|
+
bg = tb[ti + 1],
|
1157
|
+
bb = tb[ti + 2];
|
1158
|
+
if (fa == ba && fr == br && fg == bg && fb == bb) continue; //if(fa!=255 && ba!=0) return false;
|
1159
|
+
|
1160
|
+
if (fa < 220 && ba > 20) return false;
|
1077
1161
|
}
|
1078
|
-
} else if (mode == 3) {
|
1079
|
-
// check if can be blended
|
1080
|
-
var fa = sb[si + 3],
|
1081
|
-
fr = sb[si],
|
1082
|
-
fg = sb[si + 1],
|
1083
|
-
fb = sb[si + 2];
|
1084
|
-
var ba = tb[ti + 3],
|
1085
|
-
br = tb[ti],
|
1086
|
-
bg = tb[ti + 1],
|
1087
|
-
bb = tb[ti + 2];
|
1088
|
-
if (fa == ba && fr == br && fg == bg && fb == bb) continue; //if(fa!=255 && ba!=0) return false;
|
1089
|
-
|
1090
|
-
if (fa < 220 && ba > 20) return false;
|
1091
1162
|
}
|
1092
1163
|
}
|
1093
1164
|
|
@@ -1 +1 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i=t(require("potpack"));exports.ProgressiveLightMap=class{constructor(t,i=1024){this.renderer=t,this.res=i,this.lightMapContainers=[],this.compiled=!1,this.scene=new e.Scene,this.scene.background=null,this.tinyTarget=new e.WebGLRenderTarget(1,1),this.buffer1Active=!1,this.firstUpdate=!0,this.warned=!1;const r=/(Android|iPad|iPhone|iPod)/g.test(navigator.userAgent)?alfFloatType:e.FloatType;this.progressiveLightMap1=new e.WebGLRenderTarget(this.res,this.res,{type:r}),this.progressiveLightMap2=new e.WebGLRenderTarget(this.res,this.res,{type:r}),this.uvMat=new e.MeshPhongMaterial,this.uvMat.uniforms={},this.uvMat.onBeforeCompile=e=>{e.vertexShader="#define USE_LIGHTMAP\n"+e.vertexShader.slice(0,-1)+"\tgl_Position = vec4((uv2 - 0.5) * 2.0, 1.0, 1.0); }";const t=e.fragmentShader.indexOf("void main() {");e.fragmentShader="varying vec2 vUv2;\n"+e.fragmentShader.slice(0,t)+"\tuniform sampler2D previousShadowMap;\n\tuniform float averagingWindow;\n"+e.fragmentShader.slice(t-1,-1)+"\nvec3 texelOld = texture2D(previousShadowMap, vUv2).rgb;\n\t\t\t\tgl_FragColor.rgb = mix(texelOld, gl_FragColor.rgb, 1.0/averagingWindow);\n\t\t\t}",e.uniforms.previousShadowMap={value:this.progressiveLightMap1.texture},e.uniforms.averagingWindow={value:100},this.uvMat.uniforms=e.uniforms,this.uvMat.userData.shader=e,this.compiled=!0}}addObjectsToLightMap(e){this.uv_boxes=[];const t=3/this.res;for(let i=0;i<e.length;i++){const r=e[i];r.isLight?this.scene.attach(r):r.geometry.hasAttribute("uv")?(null==this.blurringPlane&&this._initializeBlurPlane(this.res,this.progressiveLightMap1),r.material.lightMap=this.progressiveLightMap2.texture,r.material.dithering=!0,r.castShadow=!0,r.receiveShadow=!0,r.renderOrder=1e3+i,this.uv_boxes.push({w:1+2*t,h:1+2*t,index:i}),this.lightMapContainers.push({basicMat:r.material,object:r}),this.compiled=!1):console.warn("All lightmap objects need UVs!")}const r=i.default(this.uv_boxes);this.uv_boxes.forEach((i=>{const s=e[i.index].geometry.getAttribute("uv").clone();for(let e=0;e<s.array.length;e+=s.itemSize)s.array[e]=(s.array[e]+i.x+t)/r.w,s.array[e+1]=(s.array[e+1]+i.y+t)/r.h;e[i.index].geometry.setAttribute("uv2",s),e[i.index].geometry.getAttribute("uv2").needsUpdate=!0}))}update(e,t=100,i=!0){if(null==this.blurringPlane)return;const r=this.renderer.getRenderTarget();this.blurringPlane.visible=i;for(let e=0;e<this.lightMapContainers.length;e++)this.lightMapContainers[e].object.oldScene=this.lightMapContainers[e].object.parent,this.scene.attach(this.lightMapContainers[e].object);this.firstUpdate&&(this.renderer.setRenderTarget(this.tinyTarget),this.renderer.render(this.scene,e),this.firstUpdate=!1);for(let e=0;e<this.lightMapContainers.length;e++)this.uvMat.uniforms.averagingWindow={value:t},this.lightMapContainers[e].object.material=this.uvMat,this.lightMapContainers[e].object.oldFrustumCulled=this.lightMapContainers[e].object.frustumCulled,this.lightMapContainers[e].object.frustumCulled=!1;const s=this.buffer1Active?this.progressiveLightMap1:this.progressiveLightMap2,a=this.buffer1Active?this.progressiveLightMap2:this.progressiveLightMap1;this.renderer.setRenderTarget(s),this.uvMat.uniforms.previousShadowMap={value:a.texture},this.blurringPlane.material.uniforms.previousShadowMap={value:a.texture},this.buffer1Active=!this.buffer1Active,this.renderer.render(this.scene,e);for(let e=0;e<this.lightMapContainers.length;e++)this.lightMapContainers[e].object.frustumCulled=this.lightMapContainers[e].object.oldFrustumCulled,this.lightMapContainers[e].object.material=this.lightMapContainers[e].basicMat,this.lightMapContainers[e].object.oldScene.attach(this.lightMapContainers[e].object);this.renderer.setRenderTarget(r)}showDebugLightmap(t,i){0!=this.lightMapContainers.length?(null==this.labelMesh&&(this.labelMaterial=new e.MeshBasicMaterial({map:this.progressiveLightMap1.texture,side:e.DoubleSide}),this.labelPlane=new e.PlaneGeometry(100,100),this.labelMesh=new e.Mesh(this.labelPlane,this.labelMaterial),this.labelMesh.position.y=250,this.lightMapContainers[0].object.parent.add(this.labelMesh)),null!=i&&this.labelMesh.position.copy(i),this.labelMesh.visible=t):this.warned||(console.warn("Call this after adding the objects!"),this.warned=!0)}_initializeBlurPlane(t,i=null){const r=new e.MeshBasicMaterial;r.uniforms={previousShadowMap:{value:null},pixelOffset:{value:1/t},polygonOffset:!0,polygonOffsetFactor:-1,polygonOffsetUnits:3},r.onBeforeCompile=e=>{e.vertexShader="#define USE_UV\n"+e.vertexShader.slice(0,-1)+"\tgl_Position = vec4((uv - 0.5) * 2.0, 1.0, 1.0); }";const s=e.fragmentShader.indexOf("void main() {");e.fragmentShader="#define USE_UV\n"+e.fragmentShader.slice(0,s)+"\tuniform sampler2D previousShadowMap;\n\tuniform float pixelOffset;\n"+e.fragmentShader.slice(s-1,-1)+"\tgl_FragColor.rgb = (\n\t\t\t texture2D(previousShadowMap, vUv + vec2( pixelOffset, 0.0 )).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( 0.0 , pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( 0.0 , -pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2(-pixelOffset, 0.0 )).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( pixelOffset, pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2(-pixelOffset, pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( pixelOffset, -pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2(-pixelOffset, -pixelOffset)).rgb)/8.0;\n\t\t}",e.uniforms.previousShadowMap={value:i.texture},e.uniforms.pixelOffset={value:.5/t},r.uniforms=e.uniforms,r.userData.shader=e,this.compiled=!0},this.blurringPlane=new e.Mesh(new e.
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i=t(require("potpack"));exports.ProgressiveLightMap=class{constructor(t,i=1024){this.renderer=t,this.res=i,this.lightMapContainers=[],this.compiled=!1,this.scene=new e.Scene,this.scene.background=null,this.tinyTarget=new e.WebGLRenderTarget(1,1),this.buffer1Active=!1,this.firstUpdate=!0,this.warned=!1;const r=/(Android|iPad|iPhone|iPod)/g.test(navigator.userAgent)?alfFloatType:e.FloatType;this.progressiveLightMap1=new e.WebGLRenderTarget(this.res,this.res,{type:r}),this.progressiveLightMap2=new e.WebGLRenderTarget(this.res,this.res,{type:r}),this.uvMat=new e.MeshPhongMaterial,this.uvMat.uniforms={},this.uvMat.onBeforeCompile=e=>{e.vertexShader="#define USE_LIGHTMAP\n"+e.vertexShader.slice(0,-1)+"\tgl_Position = vec4((uv2 - 0.5) * 2.0, 1.0, 1.0); }";const t=e.fragmentShader.indexOf("void main() {");e.fragmentShader="varying vec2 vUv2;\n"+e.fragmentShader.slice(0,t)+"\tuniform sampler2D previousShadowMap;\n\tuniform float averagingWindow;\n"+e.fragmentShader.slice(t-1,-1)+"\nvec3 texelOld = texture2D(previousShadowMap, vUv2).rgb;\n\t\t\t\tgl_FragColor.rgb = mix(texelOld, gl_FragColor.rgb, 1.0/averagingWindow);\n\t\t\t}",e.uniforms.previousShadowMap={value:this.progressiveLightMap1.texture},e.uniforms.averagingWindow={value:100},this.uvMat.uniforms=e.uniforms,this.uvMat.userData.shader=e,this.compiled=!0}}addObjectsToLightMap(e){this.uv_boxes=[];const t=3/this.res;for(let i=0;i<e.length;i++){const r=e[i];r.isLight?this.scene.attach(r):r.geometry.hasAttribute("uv")?(null==this.blurringPlane&&this._initializeBlurPlane(this.res,this.progressiveLightMap1),r.material.lightMap=this.progressiveLightMap2.texture,r.material.dithering=!0,r.castShadow=!0,r.receiveShadow=!0,r.renderOrder=1e3+i,this.uv_boxes.push({w:1+2*t,h:1+2*t,index:i}),this.lightMapContainers.push({basicMat:r.material,object:r}),this.compiled=!1):console.warn("All lightmap objects need UVs!")}const r=i.default(this.uv_boxes);this.uv_boxes.forEach((i=>{const s=e[i.index].geometry.getAttribute("uv").clone();for(let e=0;e<s.array.length;e+=s.itemSize)s.array[e]=(s.array[e]+i.x+t)/r.w,s.array[e+1]=(s.array[e+1]+i.y+t)/r.h;e[i.index].geometry.setAttribute("uv2",s),e[i.index].geometry.getAttribute("uv2").needsUpdate=!0}))}update(e,t=100,i=!0){if(null==this.blurringPlane)return;const r=this.renderer.getRenderTarget();this.blurringPlane.visible=i;for(let e=0;e<this.lightMapContainers.length;e++)this.lightMapContainers[e].object.oldScene=this.lightMapContainers[e].object.parent,this.scene.attach(this.lightMapContainers[e].object);this.firstUpdate&&(this.renderer.setRenderTarget(this.tinyTarget),this.renderer.render(this.scene,e),this.firstUpdate=!1);for(let e=0;e<this.lightMapContainers.length;e++)this.uvMat.uniforms.averagingWindow={value:t},this.lightMapContainers[e].object.material=this.uvMat,this.lightMapContainers[e].object.oldFrustumCulled=this.lightMapContainers[e].object.frustumCulled,this.lightMapContainers[e].object.frustumCulled=!1;const s=this.buffer1Active?this.progressiveLightMap1:this.progressiveLightMap2,a=this.buffer1Active?this.progressiveLightMap2:this.progressiveLightMap1;this.renderer.setRenderTarget(s),this.uvMat.uniforms.previousShadowMap={value:a.texture},this.blurringPlane.material.uniforms.previousShadowMap={value:a.texture},this.buffer1Active=!this.buffer1Active,this.renderer.render(this.scene,e);for(let e=0;e<this.lightMapContainers.length;e++)this.lightMapContainers[e].object.frustumCulled=this.lightMapContainers[e].object.oldFrustumCulled,this.lightMapContainers[e].object.material=this.lightMapContainers[e].basicMat,this.lightMapContainers[e].object.oldScene.attach(this.lightMapContainers[e].object);this.renderer.setRenderTarget(r)}showDebugLightmap(t,i){0!=this.lightMapContainers.length?(null==this.labelMesh&&(this.labelMaterial=new e.MeshBasicMaterial({map:this.progressiveLightMap1.texture,side:e.DoubleSide}),this.labelPlane=new e.PlaneGeometry(100,100),this.labelMesh=new e.Mesh(this.labelPlane,this.labelMaterial),this.labelMesh.position.y=250,this.lightMapContainers[0].object.parent.add(this.labelMesh)),null!=i&&this.labelMesh.position.copy(i),this.labelMesh.visible=t):this.warned||(console.warn("Call this after adding the objects!"),this.warned=!0)}_initializeBlurPlane(t,i=null){const r=new e.MeshBasicMaterial;r.uniforms={previousShadowMap:{value:null},pixelOffset:{value:1/t},polygonOffset:!0,polygonOffsetFactor:-1,polygonOffsetUnits:3},r.onBeforeCompile=e=>{e.vertexShader="#define USE_UV\n"+e.vertexShader.slice(0,-1)+"\tgl_Position = vec4((uv - 0.5) * 2.0, 1.0, 1.0); }";const s=e.fragmentShader.indexOf("void main() {");e.fragmentShader="#define USE_UV\n"+e.fragmentShader.slice(0,s)+"\tuniform sampler2D previousShadowMap;\n\tuniform float pixelOffset;\n"+e.fragmentShader.slice(s-1,-1)+"\tgl_FragColor.rgb = (\n\t\t\t texture2D(previousShadowMap, vUv + vec2( pixelOffset, 0.0 )).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( 0.0 , pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( 0.0 , -pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2(-pixelOffset, 0.0 )).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( pixelOffset, pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2(-pixelOffset, pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2( pixelOffset, -pixelOffset)).rgb +\n\t\t\t texture2D(previousShadowMap, vUv + vec2(-pixelOffset, -pixelOffset)).rgb)/8.0;\n\t\t}",e.uniforms.previousShadowMap={value:i.texture},e.uniforms.pixelOffset={value:.5/t},r.uniforms=e.uniforms,r.userData.shader=e,this.compiled=!0},this.blurringPlane=new e.Mesh(new e.PlaneGeometry(1,1),r),this.blurringPlane.name="Blurring Plane",this.blurringPlane.frustumCulled=!1,this.blurringPlane.renderOrder=0,this.blurringPlane.material.depthWrite=!1,this.scene.add(this.blurringPlane)}};
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Scene, WebGLRenderTarget, FloatType, MeshPhongMaterial, MeshBasicMaterial, DoubleSide, PlaneGeometry, Mesh
|
1
|
+
import { Scene, WebGLRenderTarget, FloatType, MeshPhongMaterial, MeshBasicMaterial, DoubleSide, PlaneGeometry, Mesh } from 'three';
|
2
2
|
import potpack from 'potpack';
|
3
3
|
|
4
4
|
/**
|
@@ -272,7 +272,7 @@ class ProgressiveLightMap {
|
|
272
272
|
this.compiled = true;
|
273
273
|
};
|
274
274
|
|
275
|
-
this.blurringPlane = new Mesh(new
|
275
|
+
this.blurringPlane = new Mesh(new PlaneGeometry(1, 1), blurMaterial);
|
276
276
|
this.blurringPlane.name = 'Blurring Plane';
|
277
277
|
this.blurringPlane.frustumCulled = false;
|
278
278
|
this.blurringPlane.renderOrder = 0;
|