@needle-tools/engine 5.1.0-next.1780579670.dramatic-pierogi.b8fa941 → 5.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +119 -0
- package/components.needle.json +1 -1
- package/dist/gltf-progressive-BGQ-cjly.umd.cjs +10 -0
- package/dist/gltf-progressive-BvQHrERj.min.js +10 -0
- package/dist/{gltf-progressive-CH7aqHHr.js → gltf-progressive-CtYnVfLc.js} +420 -351
- package/dist/{materialx-B85WjP7E.min.js → materialx-B5gKeM65.min.js} +1 -1
- package/dist/{materialx-B47Bz-xs.umd.cjs → materialx-CFRcCYWy.umd.cjs} +1 -1
- package/dist/{materialx-jkHmVPez.js → materialx-DqGmteNO.js} +1 -1
- package/dist/{needle-engine.bundle-WQeWxmZD.js → needle-engine.bundle-5oIL49YP.js} +6826 -6685
- package/dist/{needle-engine.bundle-BSPk6RkD.min.js → needle-engine.bundle-DAAfj8Cs.min.js} +161 -149
- package/dist/{needle-engine.bundle-DCPHDPAd.umd.cjs → needle-engine.bundle-DvOrfXws.umd.cjs} +159 -147
- package/dist/needle-engine.d.ts +106 -44
- package/dist/needle-engine.js +610 -608
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/three.js +3 -0
- package/dist/three.min.js +22 -22
- package/dist/three.umd.cjs +24 -24
- package/dist/{vendor-BQ2Vuntm.min.js → vendor-2--bD1c9.min.js} +19 -19
- package/dist/{vendor-BslSKZPo.js → vendor-BNtcIZkv.js} +1141 -1138
- package/dist/{vendor-1UvpPPSB.umd.cjs → vendor-vbe9sv1t.umd.cjs} +20 -20
- package/lib/engine/api.d.ts +1 -1
- package/lib/engine/api.js +1 -1
- package/lib/engine/api.js.map +1 -1
- package/lib/engine/engine_context.js +16 -3
- package/lib/engine/engine_context.js.map +1 -1
- package/lib/engine/engine_init.js +2 -2
- package/lib/engine/engine_init.js.map +1 -1
- package/lib/engine/engine_license.d.ts +7 -7
- package/lib/engine/engine_license.js +72 -72
- package/lib/engine/engine_license.js.map +1 -1
- package/lib/engine/engine_networking_blob.js +3 -3
- package/lib/engine/engine_networking_blob.js.map +1 -1
- package/lib/engine/engine_utils_qrcode.js +2 -2
- package/lib/engine/engine_utils_qrcode.js.map +1 -1
- package/lib/engine/postprocessing/postprocessing.d.ts +2 -1
- package/lib/engine/postprocessing/postprocessing.js +3 -2
- package/lib/engine/postprocessing/postprocessing.js.map +1 -1
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -2
- package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +2 -2
- package/lib/engine/webcomponents/needle menu/needle-menu.js +9 -9
- package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
- package/lib/engine/webcomponents/needle-engine.js +2 -2
- package/lib/engine/webcomponents/needle-engine.js.map +1 -1
- package/lib/engine/webcomponents/needle-engine.loading.js +2 -2
- package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -1
- package/lib/engine/xr/NeedleXRSession.d.ts +24 -0
- package/lib/engine/xr/NeedleXRSession.js +52 -7
- package/lib/engine/xr/NeedleXRSession.js.map +1 -1
- package/lib/engine/xr/TempXRContext.js +2 -2
- package/lib/engine/xr/TempXRContext.js.map +1 -1
- package/lib/engine/xr/init.js +2 -3
- package/lib/engine/xr/init.js.map +1 -1
- package/lib/engine-components/Component.js +14 -1
- package/lib/engine-components/Component.js.map +1 -1
- package/lib/engine-components/ContactShadows.d.ts +7 -2
- package/lib/engine-components/ContactShadows.js +65 -45
- package/lib/engine-components/ContactShadows.js.map +1 -1
- package/lib/engine-components/GroundProjection.d.ts +6 -0
- package/lib/engine-components/GroundProjection.js +69 -7
- package/lib/engine-components/GroundProjection.js.map +1 -1
- package/lib/engine-components/NeedleMenu.d.ts +1 -1
- package/lib/engine-components/NeedleMenu.js +5 -2
- package/lib/engine-components/NeedleMenu.js.map +1 -1
- package/lib/engine-components/SceneSwitcher.d.ts +2 -0
- package/lib/engine-components/SceneSwitcher.js +26 -14
- package/lib/engine-components/SceneSwitcher.js.map +1 -1
- package/lib/engine-components/SeeThrough.d.ts +39 -0
- package/lib/engine-components/SeeThrough.js +69 -1
- package/lib/engine-components/SeeThrough.js.map +1 -1
- package/lib/engine-components/Skybox.js +9 -0
- package/lib/engine-components/Skybox.js.map +1 -1
- package/lib/engine-components/api.d.ts +1 -0
- package/lib/engine-components/api.js +1 -0
- package/lib/engine-components/api.js.map +1 -1
- package/lib/engine-components/export/usdz/USDZExporter.js +4 -4
- package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
- package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.js +9 -5
- package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.js.map +1 -1
- package/lib/engine-components/particlesystem/ParticleSystem.js +4 -0
- package/lib/engine-components/particlesystem/ParticleSystem.js.map +1 -1
- package/lib/engine-components/postprocessing/Volume.d.ts +1 -9
- package/lib/engine-components/postprocessing/Volume.js +2 -14
- package/lib/engine-components/postprocessing/Volume.js.map +1 -1
- package/lib/engine-components/webxr/WebXRImageTracking.js +3 -0
- package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
- package/package.json +4 -4
- package/plugins/common/license.js +4 -4
- package/plugins/types/userconfig.d.ts +10 -0
- package/plugins/vite/build-pipeline.d.ts +19 -0
- package/plugins/vite/build-pipeline.js +67 -5
- package/plugins/vite/license.js +4 -4
- package/src/engine/api.ts +1 -1
- package/src/engine/engine_context.ts +15 -2
- package/src/engine/engine_gameobject.ts +1 -1
- package/src/engine/engine_init.ts +2 -2
- package/src/engine/engine_license.ts +69 -69
- package/src/engine/engine_networking_blob.ts +3 -3
- package/src/engine/engine_utils_qrcode.ts +2 -2
- package/src/engine/postprocessing/postprocessing.ts +3 -2
- package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -2
- package/src/engine/webcomponents/needle menu/needle-menu.ts +10 -10
- package/src/engine/webcomponents/needle-engine.loading.ts +6 -6
- package/src/engine/webcomponents/needle-engine.ts +2 -2
- package/src/engine/xr/NeedleXRSession.ts +53 -7
- package/src/engine/xr/TempXRContext.ts +2 -2
- package/src/engine/xr/init.ts +2 -3
- package/src/engine-components/Component.ts +13 -1
- package/src/engine-components/ContactShadows.ts +75 -49
- package/src/engine-components/GroundProjection.ts +71 -7
- package/src/engine-components/NeedleMenu.ts +6 -3
- package/src/engine-components/SceneSwitcher.ts +23 -13
- package/src/engine-components/SeeThrough.ts +75 -1
- package/src/engine-components/Skybox.ts +8 -0
- package/src/engine-components/api.ts +1 -0
- package/src/engine-components/export/usdz/USDZExporter.ts +4 -4
- package/src/engine-components/export/usdz/extensions/behavior/BehaviourComponents.ts +12 -5
- package/src/engine-components/particlesystem/ParticleSystem.ts +4 -0
- package/src/engine-components/postprocessing/Volume.ts +2 -13
- package/src/engine-components/webxr/WebXRImageTracking.ts +1 -0
- package/dist/gltf-progressive-9tlS5iCx.umd.cjs +0 -10
- package/dist/gltf-progressive-CVg80COO.min.js +0 -10
|
@@ -72,7 +72,7 @@ onStart(ctx => {
|
|
|
72
72
|
* @link https://engine.needle.tools/samples/contact-shadows for a demo of contact shadows
|
|
73
73
|
*/
|
|
74
74
|
export class ContactShadows extends Behaviour {
|
|
75
|
-
static _instances = new
|
|
75
|
+
static _instances = new WeakMap();
|
|
76
76
|
/**
|
|
77
77
|
* Create contact shadows for the scene. Automatically fits the shadows to the scene.
|
|
78
78
|
* The instance of contact shadows will be created only once.
|
|
@@ -158,8 +158,8 @@ export class ContactShadows extends Behaviour {
|
|
|
158
158
|
* in which case ContactShadows scale would affect the projection
|
|
159
159
|
**/
|
|
160
160
|
shadowsRoot = new Object3D();
|
|
161
|
-
shadowCamera;
|
|
162
161
|
shadowGroup = new Group();
|
|
162
|
+
shadowCamera;
|
|
163
163
|
renderTarget;
|
|
164
164
|
renderTargetBlur;
|
|
165
165
|
plane;
|
|
@@ -222,15 +222,75 @@ export class ContactShadows extends Behaviour {
|
|
|
222
222
|
if (debug)
|
|
223
223
|
console.log("Fitted shadows to scene", this.shadowsRoot.scale.clone());
|
|
224
224
|
}
|
|
225
|
+
/**
|
|
226
|
+
* Call to update the shadows immediately. Only needed if `manualUpdate` is enabled, usually the shadows will update automatically when the scene changes or when the component is enabled.
|
|
227
|
+
*/
|
|
228
|
+
renderShadowsNow() {
|
|
229
|
+
this._renderShadows();
|
|
230
|
+
}
|
|
225
231
|
/** @internal */
|
|
226
232
|
awake() {
|
|
227
233
|
ContactShadows._instances.set(this.context, this);
|
|
234
|
+
}
|
|
235
|
+
/** @internal */
|
|
236
|
+
onEnable() {
|
|
228
237
|
this.shadowsRoot.hideFlags = HideFlags.DontExport;
|
|
229
238
|
// ignore self for autofitting
|
|
230
239
|
setAutoFitEnabled(this.shadowsRoot, false);
|
|
240
|
+
this._needsUpdate = true;
|
|
241
|
+
this.autoCleanup(this.context.events.on("scene-content-changed", () => {
|
|
242
|
+
if (!this.autoFit)
|
|
243
|
+
return;
|
|
244
|
+
this._needsFit = true;
|
|
245
|
+
this._needsUpdate = true;
|
|
246
|
+
}));
|
|
247
|
+
if (this.autoFit)
|
|
248
|
+
this.fitShadows();
|
|
249
|
+
else
|
|
250
|
+
this.applyMinSize();
|
|
231
251
|
}
|
|
232
252
|
/** @internal */
|
|
233
|
-
|
|
253
|
+
onDestroy() {
|
|
254
|
+
if (debug)
|
|
255
|
+
console.warn("Destroying ContactShadows on " + this.gameObject.name);
|
|
256
|
+
const instance = ContactShadows._instances.get(this.context);
|
|
257
|
+
if (instance === this) {
|
|
258
|
+
ContactShadows._instances.delete(this.context);
|
|
259
|
+
}
|
|
260
|
+
// dispose the render targets
|
|
261
|
+
this.renderTarget?.dispose();
|
|
262
|
+
this.renderTargetBlur?.dispose();
|
|
263
|
+
// dispose the materials
|
|
264
|
+
this.depthMaterial?.dispose();
|
|
265
|
+
this.horizontalBlurMaterial?.dispose();
|
|
266
|
+
this.verticalBlurMaterial?.dispose();
|
|
267
|
+
// dispose the geometries
|
|
268
|
+
this.blurPlane?.geometry.dispose();
|
|
269
|
+
this.plane?.geometry.dispose();
|
|
270
|
+
this.occluderMesh?.geometry.dispose();
|
|
271
|
+
}
|
|
272
|
+
/** @internal */
|
|
273
|
+
onBeforeRender(_frame) {
|
|
274
|
+
if (this._needsFit && this.autoFit) {
|
|
275
|
+
this._needsFit = false;
|
|
276
|
+
this.fitShadows();
|
|
277
|
+
}
|
|
278
|
+
if (this.manualUpdate) {
|
|
279
|
+
if (!this._needsUpdate)
|
|
280
|
+
return;
|
|
281
|
+
}
|
|
282
|
+
this._needsUpdate = false;
|
|
283
|
+
this._renderShadows();
|
|
284
|
+
}
|
|
285
|
+
_ensureSetup() {
|
|
286
|
+
// Make sure the shadows root is parented to the game object. This is needed for the shadows to be in the correct position and scale relative to the game object. We need to do this before checking if the materials are set up because some properties (e.g. darkness) can be changed in the editor before the component is enabled, so we want to avoid re-creating everything in that case.
|
|
287
|
+
if (this.shadowsRoot.parent !== this.gameObject) {
|
|
288
|
+
this.gameObject.add(this.shadowsRoot);
|
|
289
|
+
}
|
|
290
|
+
// Check if everything is already set up. We need to do this because some properties (e.g. darkness) can be changed in the editor before the component is enabled, so we want to avoid re-creating everything in that case.
|
|
291
|
+
if (this.depthMaterial && this.horizontalBlurMaterial && this.verticalBlurMaterial && this.planeMaterial) {
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
234
294
|
if (debug)
|
|
235
295
|
console.log("Create ContactShadows on " + this.gameObject.name, this);
|
|
236
296
|
this.gameObject.add(this.shadowsRoot);
|
|
@@ -326,49 +386,9 @@ export class ContactShadows extends Behaviour {
|
|
|
326
386
|
this.verticalBlurMaterial = new ShaderMaterial(VerticalBlurShader);
|
|
327
387
|
this.verticalBlurMaterial.depthTest = false;
|
|
328
388
|
this.shadowGroup.visible = false;
|
|
329
|
-
if (this.autoFit)
|
|
330
|
-
this.fitShadows();
|
|
331
|
-
else
|
|
332
|
-
this.applyMinSize();
|
|
333
|
-
}
|
|
334
|
-
onEnable() {
|
|
335
|
-
this._needsUpdate = true;
|
|
336
|
-
this.autoCleanup(this.context.events.on("scene-content-changed", () => {
|
|
337
|
-
if (!this.autoFit)
|
|
338
|
-
return;
|
|
339
|
-
this._needsFit = true;
|
|
340
|
-
this._needsUpdate = true;
|
|
341
|
-
}));
|
|
342
389
|
}
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
const instance = ContactShadows._instances.get(this.context);
|
|
346
|
-
if (instance === this) {
|
|
347
|
-
ContactShadows._instances.delete(this.context);
|
|
348
|
-
}
|
|
349
|
-
// dispose the render targets
|
|
350
|
-
this.renderTarget?.dispose();
|
|
351
|
-
this.renderTargetBlur?.dispose();
|
|
352
|
-
// dispose the materials
|
|
353
|
-
this.depthMaterial?.dispose();
|
|
354
|
-
this.horizontalBlurMaterial?.dispose();
|
|
355
|
-
this.verticalBlurMaterial?.dispose();
|
|
356
|
-
// dispose the geometries
|
|
357
|
-
this.blurPlane?.geometry.dispose();
|
|
358
|
-
this.plane?.geometry.dispose();
|
|
359
|
-
this.occluderMesh?.geometry.dispose();
|
|
360
|
-
}
|
|
361
|
-
/** @internal */
|
|
362
|
-
onBeforeRender(_frame) {
|
|
363
|
-
if (this._needsFit && this.autoFit) {
|
|
364
|
-
this._needsFit = false;
|
|
365
|
-
this.fitShadows();
|
|
366
|
-
}
|
|
367
|
-
if (this.manualUpdate) {
|
|
368
|
-
if (!this._needsUpdate)
|
|
369
|
-
return;
|
|
370
|
-
}
|
|
371
|
-
this._needsUpdate = false;
|
|
390
|
+
_renderShadows() {
|
|
391
|
+
this._ensureSetup();
|
|
372
392
|
if (!this.renderTarget || !this.renderTargetBlur ||
|
|
373
393
|
!this.depthMaterial || !this.shadowCamera ||
|
|
374
394
|
!this.blurPlane || !this.shadowGroup || !this.plane ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContactShadows.js","sourceRoot":"","sources":["../../src/engine-components/ContactShadows.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContactShadows.js","sourceRoot":"","sources":["../../src/engine-components/ContactShadows.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,6 +69,12 @@ export declare class GroundProjectedEnv extends Behaviour {
|
|
|
69
69
|
private _lastHeight?;
|
|
70
70
|
private _projection?;
|
|
71
71
|
private _watcher?;
|
|
72
|
+
/** The scene's real backgroundBlurriness, stored while we temporarily override it for the render. */
|
|
73
|
+
private _savedBackgroundBlur;
|
|
74
|
+
/** pre_render_callback: force the skybox blur just before the render (after all component onBeforeRender). */
|
|
75
|
+
private readonly _forceBackgroundBlur;
|
|
76
|
+
/** post_render_callback: restore the scene's real blur right after the render. */
|
|
77
|
+
private readonly _restoreBackgroundBlur;
|
|
72
78
|
/** @internal */
|
|
73
79
|
awake(): void;
|
|
74
80
|
/** @internal */
|
|
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
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;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { CubeUVReflectionMapping, ShaderMaterial, Texture } from "three";
|
|
7
|
+
import { CubeUVReflectionMapping, Euler, Matrix3, Matrix4, ShaderMaterial, Texture } from "three";
|
|
8
8
|
import { GroundedSkybox as GroundProjection } from 'three/examples/jsm/objects/GroundedSkybox.js';
|
|
9
9
|
import { Gizmos } from "../engine/engine_gizmos.js";
|
|
10
10
|
import { serializable } from "../engine/engine_serialization_decorator.js";
|
|
@@ -12,6 +12,9 @@ import { getBoundingBox, getTempVector, getWorldScale, Graphics, setVisibleInCus
|
|
|
12
12
|
import { delayForFrames, getParam, Watch as Watch } from "../engine/engine_utils.js";
|
|
13
13
|
import { Behaviour } from "./Component.js";
|
|
14
14
|
const debug = getParam("debuggroundprojection");
|
|
15
|
+
// Reused per-frame to build the background-rotation matrix without allocating in onBeforeRender.
|
|
16
|
+
const _backgroundRotationEuler = new Euler();
|
|
17
|
+
const _backgroundRotationMatrix = new Matrix4();
|
|
15
18
|
const needleCubeUvMapVarying = /* glsl */ `
|
|
16
19
|
#ifdef NEEDLE_USE_CUBE_UV_MAP
|
|
17
20
|
varying vec3 vNeedleGroundProjectionWorldDirection;
|
|
@@ -66,7 +69,10 @@ const needleCubeUvMapFragment = /* glsl */ `
|
|
|
66
69
|
|
|
67
70
|
#endif
|
|
68
71
|
|
|
69
|
-
|
|
72
|
+
// Apply backgroundIntensity uniformly across the whole projection (center included), matching how the
|
|
73
|
+
// skybox applies it (backgroundCube.glsl: texColor.rgb *= backgroundIntensity). Only the blurriness
|
|
74
|
+
// ramps toward the horizon - the intensity must not.
|
|
75
|
+
sampledDiffuseColor.rgb *= needleGroundProjectionBackgroundIntensity;
|
|
70
76
|
diffuseColor *= sampledDiffuseColor;
|
|
71
77
|
|
|
72
78
|
#endif
|
|
@@ -103,7 +109,8 @@ function getGroundProjectionShaderUniforms(material) {
|
|
|
103
109
|
needleGroundProjectionBlurriness: { value: 0 },
|
|
104
110
|
needleGroundProjectionBlending: { value: 0 },
|
|
105
111
|
needleGroundProjectionAlphaFactor: { value: 1 },
|
|
106
|
-
needleGroundProjectionBackgroundIntensity: { value: 1 }
|
|
112
|
+
needleGroundProjectionBackgroundIntensity: { value: 1 },
|
|
113
|
+
needleGroundProjectionBackgroundRotation: { value: new Matrix3() }
|
|
107
114
|
};
|
|
108
115
|
}
|
|
109
116
|
function configureGroundProjectionMaterial(material, texture) {
|
|
@@ -113,12 +120,22 @@ function configureGroundProjectionMaterial(material, texture) {
|
|
|
113
120
|
shader.uniforms.needleGroundProjectionBlending = projectionUniforms.needleGroundProjectionBlending;
|
|
114
121
|
shader.uniforms.needleGroundProjectionAlphaFactor = projectionUniforms.needleGroundProjectionAlphaFactor;
|
|
115
122
|
shader.uniforms.needleGroundProjectionBackgroundIntensity = projectionUniforms.needleGroundProjectionBackgroundIntensity;
|
|
123
|
+
shader.uniforms.needleGroundProjectionBackgroundRotation = projectionUniforms.needleGroundProjectionBackgroundRotation;
|
|
116
124
|
shader.vertexShader = shader.vertexShader
|
|
117
|
-
.replace("#include <uv_pars_vertex>", `#include <uv_pars_vertex>\n${needleCubeUvMapVarying}
|
|
125
|
+
.replace("#include <uv_pars_vertex>", `#include <uv_pars_vertex>\n${needleCubeUvMapVarying}
|
|
126
|
+
#ifdef NEEDLE_USE_CUBE_UV_MAP
|
|
127
|
+
uniform mat3 needleGroundProjectionBackgroundRotation;
|
|
128
|
+
#endif`)
|
|
118
129
|
.replace("#include <worldpos_vertex>", `#include <worldpos_vertex>
|
|
119
130
|
#ifdef NEEDLE_USE_CUBE_UV_MAP
|
|
120
|
-
//
|
|
121
|
-
|
|
131
|
+
// Sample the environment in the fragment's actual world direction. GroundedSkybox mirrors the geometry
|
|
132
|
+
// on Z (geometry.scale(1,1,-1)) and that mirrored vertex IS the on-screen direction; the skybox and
|
|
133
|
+
// environment lighting are likewise sampled in true world directions. So we must NOT undo the mirror
|
|
134
|
+
// here - doing so reflects the sampling azimuth and flips the panorama left-right vs. the skybox.
|
|
135
|
+
// backgroundRotation is applied to the sampling direction (exactly like the skybox does in
|
|
136
|
+
// backgroundCube.glsl), NOT by rotating the mesh - that keeps the floor flat and matches the skybox at
|
|
137
|
+
// the horizon for any background rotation.
|
|
138
|
+
vNeedleGroundProjectionWorldDirection = needleGroundProjectionBackgroundRotation * transformDirection( position, modelMatrix );
|
|
122
139
|
#endif`);
|
|
123
140
|
shader.fragmentShader = shader.fragmentShader
|
|
124
141
|
.replace("#include <map_pars_fragment>", `#include <map_pars_fragment>
|
|
@@ -229,6 +246,25 @@ export class GroundProjectedEnv extends Behaviour {
|
|
|
229
246
|
_lastHeight;
|
|
230
247
|
_projection;
|
|
231
248
|
_watcher;
|
|
249
|
+
/** The scene's real backgroundBlurriness, stored while we temporarily override it for the render. */
|
|
250
|
+
_savedBackgroundBlur = null;
|
|
251
|
+
/** pre_render_callback: force the skybox blur just before the render (after all component onBeforeRender). */
|
|
252
|
+
_forceBackgroundBlur = (_frame) => {
|
|
253
|
+
if (this._savedBackgroundBlur !== null)
|
|
254
|
+
return; // already overriding (safety)
|
|
255
|
+
if (!(this.scene.background instanceof Texture))
|
|
256
|
+
return; // no skybox to blur
|
|
257
|
+
const current = this.scene.backgroundBlurriness ?? 0;
|
|
258
|
+
this._savedBackgroundBlur = current;
|
|
259
|
+
this.scene.backgroundBlurriness = 1;
|
|
260
|
+
};
|
|
261
|
+
/** post_render_callback: restore the scene's real blur right after the render. */
|
|
262
|
+
_restoreBackgroundBlur = () => {
|
|
263
|
+
if (this._savedBackgroundBlur === null)
|
|
264
|
+
return;
|
|
265
|
+
this.scene.backgroundBlurriness = this._savedBackgroundBlur;
|
|
266
|
+
this._savedBackgroundBlur = null;
|
|
267
|
+
};
|
|
232
268
|
/** @internal */
|
|
233
269
|
awake() {
|
|
234
270
|
if (this.applyOnAwake)
|
|
@@ -249,11 +285,25 @@ export class GroundProjectedEnv extends Behaviour {
|
|
|
249
285
|
this._needsTextureUpdate = true;
|
|
250
286
|
});
|
|
251
287
|
}
|
|
288
|
+
// Force the skybox blur via the render-bracketing callbacks (these run after every component's
|
|
289
|
+
// onBeforeRender, so the override can't be clobbered by e.g. Camera.applyClearFlags).
|
|
290
|
+
if (this.context.pre_render_callbacks.indexOf(this._forceBackgroundBlur) < 0)
|
|
291
|
+
this.context.pre_render_callbacks.push(this._forceBackgroundBlur);
|
|
292
|
+
if (this.context.post_render_callbacks.indexOf(this._restoreBackgroundBlur) < 0)
|
|
293
|
+
this.context.post_render_callbacks.push(this._restoreBackgroundBlur);
|
|
252
294
|
}
|
|
253
295
|
/** @internal */
|
|
254
296
|
onDisable() {
|
|
255
297
|
this._watcher?.revoke();
|
|
256
298
|
this._projection?.removeFromParent();
|
|
299
|
+
const pre = this.context.pre_render_callbacks.indexOf(this._forceBackgroundBlur);
|
|
300
|
+
if (pre >= 0)
|
|
301
|
+
this.context.pre_render_callbacks.splice(pre, 1);
|
|
302
|
+
const post = this.context.post_render_callbacks.indexOf(this._restoreBackgroundBlur);
|
|
303
|
+
if (post >= 0)
|
|
304
|
+
this.context.post_render_callbacks.splice(post, 1);
|
|
305
|
+
// If we were disabled mid-frame (after force, before restore), put the real value back.
|
|
306
|
+
this._restoreBackgroundBlur();
|
|
257
307
|
}
|
|
258
308
|
/** @internal */
|
|
259
309
|
onEnterXR() {
|
|
@@ -272,7 +322,19 @@ export class GroundProjectedEnv extends Behaviour {
|
|
|
272
322
|
/** @internal */
|
|
273
323
|
onBeforeRender() {
|
|
274
324
|
if (this._projection && this.scene.backgroundRotation) {
|
|
275
|
-
|
|
325
|
+
// Mirror three's WebGLBackground: build the same mat3 it applies to the skybox sampling
|
|
326
|
+
// direction and feed it to our shader. This rotates the sampled environment exactly like the
|
|
327
|
+
// skybox (backgroundCube.glsl) instead of rotating the mesh - keeping the floor flat and the
|
|
328
|
+
// horizon aligned with the skybox for any background rotation.
|
|
329
|
+
_backgroundRotationEuler.copy(this.scene.backgroundRotation);
|
|
330
|
+
// accommodate left-handed frame (same as WebGLBackground.js)
|
|
331
|
+
_backgroundRotationEuler.x *= -1;
|
|
332
|
+
_backgroundRotationEuler.y *= -1;
|
|
333
|
+
_backgroundRotationEuler.z *= -1;
|
|
334
|
+
// Note: the extra cube-texture flip in WebGLBackground only applies to raw CubeTextures, not the
|
|
335
|
+
// PMREM render-target env this shader path samples - so it is intentionally omitted here.
|
|
336
|
+
const uniforms = getGroundProjectionShaderUniforms(this._projection.material);
|
|
337
|
+
uniforms.needleGroundProjectionBackgroundRotation.value.setFromMatrix4(_backgroundRotationMatrix.makeRotationFromEuler(_backgroundRotationEuler));
|
|
276
338
|
}
|
|
277
339
|
if (this._projection && this.context.scene.background instanceof Texture) {
|
|
278
340
|
const blurriness = this.context.scene.backgroundBlurriness ?? 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroundProjection.js","sourceRoot":"","sources":["../../src/engine-components/GroundProjection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GroundProjection.js","sourceRoot":"","sources":["../../src/engine-components/GroundProjection.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,7 @@ export declare class NeedleMenu extends Behaviour {
|
|
|
40
40
|
*/
|
|
41
41
|
position: "top" | "bottom";
|
|
42
42
|
/**
|
|
43
|
-
* Controls the visibility of the Needle logo in the menu (requires
|
|
43
|
+
* Controls the visibility of the Needle logo in the menu (requires a commercial license)
|
|
44
44
|
*/
|
|
45
45
|
showNeedleLogo: boolean;
|
|
46
46
|
/**
|
|
@@ -48,7 +48,7 @@ export class NeedleMenu extends Behaviour {
|
|
|
48
48
|
*/
|
|
49
49
|
position = "bottom";
|
|
50
50
|
/**
|
|
51
|
-
* Controls the visibility of the Needle logo in the menu (requires
|
|
51
|
+
* Controls the visibility of the Needle logo in the menu (requires a commercial license)
|
|
52
52
|
*/
|
|
53
53
|
showNeedleLogo = false;
|
|
54
54
|
/**
|
|
@@ -89,7 +89,10 @@ export class NeedleMenu extends Behaviour {
|
|
|
89
89
|
this.context.menu.showFullscreenOption(true);
|
|
90
90
|
if (this.createMuteButton === true)
|
|
91
91
|
this.context.menu.showAudioPlaybackOption(true);
|
|
92
|
-
|
|
92
|
+
// Apply the value in BOTH directions: the spatial menu is enabled by
|
|
93
|
+
// default, so unchecking the option must explicitly disable it. Only skip
|
|
94
|
+
// when the field is unset (undefined) to keep the engine default.
|
|
95
|
+
if (this.showSpatialMenu !== undefined)
|
|
93
96
|
this.context.menu.showSpatialMenu(this.showSpatialMenu);
|
|
94
97
|
if (this.createQRCodeButton === true) {
|
|
95
98
|
if (!DeviceUtilities.isMobileDevice()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeedleMenu.js","sourceRoot":"","sources":["../../src/engine-components/NeedleMenu.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAK3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkCI;AACJ,MAAM,OAAO,UAAW,SAAQ,SAAS;IAErC;;OAEG;IAEH,QAAQ,GAAqB,QAAQ,CAAC;IAEtC;;OAEG;IAEH,cAAc,GAAY,KAAK,CAAC;IAEhC;;;OAGG;IAEH,eAAe,CAAW;IAE1B;;;OAGG;IAEH,sBAAsB,CAAW;IAEjC;;;OAGG;IAEH,gBAAgB,CAAW;IAE3B;;;;OAIG;IAEH,kBAAkB,CAAW;IAE7B;;;OAGG;IACH,QAAQ;QACJ,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,YAAY;QACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI;YACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI;YAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,eAAe,KAAK,
|
|
1
|
+
{"version":3,"file":"NeedleMenu.js","sourceRoot":"","sources":["../../src/engine-components/NeedleMenu.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAK3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkCI;AACJ,MAAM,OAAO,UAAW,SAAQ,SAAS;IAErC;;OAEG;IAEH,QAAQ,GAAqB,QAAQ,CAAC;IAEtC;;OAEG;IAEH,cAAc,GAAY,KAAK,CAAC;IAEhC;;;OAGG;IAEH,eAAe,CAAW;IAE1B;;;OAGG;IAEH,sBAAsB,CAAW;IAEjC;;;OAGG;IAEH,gBAAgB,CAAW;IAE3B;;;;OAIG;IAEH,kBAAkB,CAAW;IAE7B;;;OAGG;IACH,QAAQ;QACJ,IAAI,CAAC,YAAY,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,YAAY;QACR,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI;YACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI;YAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACpD,qEAAqE;QACrE,0EAA0E;QAC1E,kEAAkE;QAClE,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS;YAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAC7C,CAAC;QACL,CAAC;IACL,CAAC;CAEJ;AAnEG;IADC,YAAY,EAAE;4CACuB;AAMtC;IADC,YAAY,EAAE;kDACiB;AAOhC;IADC,YAAY,EAAE;mDACW;AAO1B;IADC,YAAY,EAAE;0DACkB;AAOjC;IADC,YAAY,EAAE;oDACY;AAQ3B;IADC,YAAY,EAAE;sDACc"}
|
|
@@ -261,6 +261,8 @@ export declare class SceneSwitcher extends Behaviour {
|
|
|
261
261
|
switchScene(scene: AssetReference): Promise<boolean>;
|
|
262
262
|
private __unloadCurrentScene;
|
|
263
263
|
private _currentlyLoadingScene?;
|
|
264
|
+
private _loadingRequestId;
|
|
265
|
+
private _activeLoadingRequestId;
|
|
264
266
|
/** @internal */
|
|
265
267
|
private __internalSwitchScene;
|
|
266
268
|
preload(index: number): Promise<boolean> | Promise<ArrayBufferLike | null>;
|
|
@@ -508,7 +508,8 @@ export class SceneSwitcher extends Behaviour {
|
|
|
508
508
|
if (current) {
|
|
509
509
|
if (debug)
|
|
510
510
|
console.log("[SceneSwitcher] UNLOAD", current.url, "HasURL?: " + current.hasUrl);
|
|
511
|
-
const
|
|
511
|
+
const activeSceneInstance = this._currentSceneAsset;
|
|
512
|
+
const sceneListener = this.tryGetSceneEventListener(activeSceneInstance);
|
|
512
513
|
if (sceneListener?.sceneClosing) {
|
|
513
514
|
const res = sceneListener.sceneClosing();
|
|
514
515
|
if (res instanceof Promise)
|
|
@@ -518,19 +519,23 @@ export class SceneSwitcher extends Behaviour {
|
|
|
518
519
|
// // then we unload it
|
|
519
520
|
if (current.hasUrl) {
|
|
520
521
|
current.unload();
|
|
521
|
-
if (
|
|
522
|
-
destroy(
|
|
522
|
+
if (activeSceneInstance)
|
|
523
|
+
destroy(activeSceneInstance, true, false);
|
|
523
524
|
}
|
|
524
525
|
else {
|
|
525
|
-
GameObject.remove(
|
|
526
|
+
GameObject.remove(activeSceneInstance);
|
|
526
527
|
}
|
|
528
|
+
this._currentSceneAsset = undefined;
|
|
527
529
|
}
|
|
528
530
|
}
|
|
529
531
|
_currentlyLoadingScene;
|
|
532
|
+
_loadingRequestId = 0;
|
|
533
|
+
_activeLoadingRequestId = 0;
|
|
530
534
|
/** @internal */
|
|
531
535
|
async __internalSwitchScene(scene) {
|
|
532
536
|
await this.__unloadCurrentScene();
|
|
533
537
|
const index = this._currentIndex = this.scenes?.indexOf(scene) ?? -1;
|
|
538
|
+
const loadingRequestId = ++this._loadingRequestId;
|
|
534
539
|
try {
|
|
535
540
|
if (debug)
|
|
536
541
|
console.debug(`${Date.now()} [SceneSwitcher] Loading scene start: ${scene.url} (index: ${index})`);
|
|
@@ -539,9 +544,11 @@ export class SceneSwitcher extends Behaviour {
|
|
|
539
544
|
const loadStartEvt = new CustomEvent("loadscene-start", { detail: { scene: scene, switcher: this, index: index } });
|
|
540
545
|
this.dispatchEvent(loadStartEvt);
|
|
541
546
|
this.sceneLoadingStart?.invoke(loadStartEvt.detail);
|
|
542
|
-
await this.onStartLoading();
|
|
547
|
+
await this.onStartLoading(loadingRequestId);
|
|
543
548
|
// start loading and wait for the scene to be loaded
|
|
544
549
|
await scene.loadAssetAsync((_, prog) => {
|
|
550
|
+
if (loadingRequestId !== this._activeLoadingRequestId)
|
|
551
|
+
return;
|
|
545
552
|
if (debug) {
|
|
546
553
|
const t01 = prog.loaded / prog.total;
|
|
547
554
|
const progressBarString = "[" + "=".repeat(Math.floor(t01 * 20)) + "-".repeat(20 - Math.floor(t01 * 20)) + "]";
|
|
@@ -551,11 +558,13 @@ export class SceneSwitcher extends Behaviour {
|
|
|
551
558
|
this.dispatchEvent(prog);
|
|
552
559
|
this.sceneLoadingProgress?.invoke(prog);
|
|
553
560
|
}).catch(console.error);
|
|
554
|
-
await this.onEndLoading();
|
|
561
|
+
await this.onEndLoading(loadingRequestId);
|
|
555
562
|
const finishedEvt = new CustomEvent("loadscene-finished", { detail: { scene: scene, switcher: this, index: index } });
|
|
556
563
|
this.dispatchEvent(finishedEvt);
|
|
557
|
-
this.
|
|
558
|
-
|
|
564
|
+
if (loadingRequestId === this._activeLoadingRequestId) {
|
|
565
|
+
this._currentLoadingProgress = undefined;
|
|
566
|
+
this._currentlyLoadingScene = undefined;
|
|
567
|
+
}
|
|
559
568
|
if (finishedEvt.defaultPrevented) {
|
|
560
569
|
if (debug)
|
|
561
570
|
console.warn("[SceneSwitcher] Adding loaded scene prevented:", scene, finishedEvt);
|
|
@@ -628,8 +637,8 @@ export class SceneSwitcher extends Behaviour {
|
|
|
628
637
|
history.pushState(stateName, "unused", location.href);
|
|
629
638
|
}
|
|
630
639
|
}
|
|
631
|
-
// Call SceneListener opened callback
|
|
632
|
-
const sceneListener = this.tryGetSceneEventListener(
|
|
640
|
+
// Call SceneListener opened callback on the scene instance that was actually added.
|
|
641
|
+
const sceneListener = this.tryGetSceneEventListener(this._currentSceneAsset);
|
|
633
642
|
if (sceneListener?.sceneOpened) {
|
|
634
643
|
const res = sceneListener.sceneOpened(this);
|
|
635
644
|
if (res instanceof Promise)
|
|
@@ -720,7 +729,8 @@ export class SceneSwitcher extends Behaviour {
|
|
|
720
729
|
_loadingScenePromise = undefined;
|
|
721
730
|
_isCurrentlyLoading = false;
|
|
722
731
|
_currentLoadingProgress = undefined;
|
|
723
|
-
async onStartLoading() {
|
|
732
|
+
async onStartLoading(loadingRequestId) {
|
|
733
|
+
this._activeLoadingRequestId = loadingRequestId;
|
|
724
734
|
this._isCurrentlyLoading = true;
|
|
725
735
|
if (this.loadingScene) {
|
|
726
736
|
// save the last loading scene reference so that it can be changed at runtime
|
|
@@ -733,7 +743,7 @@ export class SceneSwitcher extends Behaviour {
|
|
|
733
743
|
this._loadingScenePromise = this.loadingScene?.loadAssetAsync().then(res => res != null);
|
|
734
744
|
}
|
|
735
745
|
await this._loadingScenePromise;
|
|
736
|
-
if (this._isCurrentlyLoading && this.loadingScene?.asset) {
|
|
746
|
+
if (loadingRequestId === this._activeLoadingRequestId && this._isCurrentlyLoading && this.loadingScene?.asset) {
|
|
737
747
|
if (debug)
|
|
738
748
|
console.log("Add loading scene", this.loadingScene.url, this.loadingScene.asset);
|
|
739
749
|
const loadingScene = this.loadingScene.asset;
|
|
@@ -747,7 +757,7 @@ export class SceneSwitcher extends Behaviour {
|
|
|
747
757
|
}
|
|
748
758
|
}
|
|
749
759
|
// Invoke the event on a loading listener on the same object as the scene switcher
|
|
750
|
-
if (this._isCurrentlyLoading) {
|
|
760
|
+
if (loadingRequestId === this._activeLoadingRequestId && this._isCurrentlyLoading) {
|
|
751
761
|
const listener = this.tryGetSceneEventListener(this.gameObject);
|
|
752
762
|
if (listener) {
|
|
753
763
|
if (listener.sceneOpened) {
|
|
@@ -758,7 +768,9 @@ export class SceneSwitcher extends Behaviour {
|
|
|
758
768
|
}
|
|
759
769
|
}
|
|
760
770
|
}
|
|
761
|
-
async onEndLoading() {
|
|
771
|
+
async onEndLoading(loadingRequestId) {
|
|
772
|
+
if (loadingRequestId !== this._activeLoadingRequestId)
|
|
773
|
+
return;
|
|
762
774
|
this._isCurrentlyLoading = false;
|
|
763
775
|
if (this.loadingScene?.asset) {
|
|
764
776
|
if (debug)
|