@needle-tools/engine 4.7.2 → 4.7.3-next.24c33e7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{needle-engine.bundle-CnzaSk8v.min.js → needle-engine.bundle-BWEF8NxU.min.js} +21 -21
- package/dist/{needle-engine.bundle-RNpCdQTu.umd.cjs → needle-engine.bundle-d3zmAOp8.umd.cjs} +24 -24
- package/dist/{needle-engine.bundle-DALjvqho.js → needle-engine.bundle-wtPHWC_F.js} +87 -74
- package/dist/needle-engine.d.ts +15 -15
- package/dist/needle-engine.js +2 -2
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/{postprocessing-TkXiVrjY.min.js → postprocessing-BzY0H7ry.min.js} +8 -8
- package/dist/{postprocessing-CNCT892s.umd.cjs → postprocessing-Dw2OCMp4.umd.cjs} +8 -8
- package/dist/{postprocessing-qvgDnYKK.js → postprocessing-vKBVFpSz.js} +9 -9
- package/lib/engine-components/OrbitControls.d.ts +12 -0
- package/lib/engine-components/OrbitControls.js +14 -0
- package/lib/engine-components/OrbitControls.js.map +1 -1
- package/lib/engine-components/Skybox.d.ts +1 -0
- package/lib/engine-components/Skybox.js +13 -17
- package/lib/engine-components/Skybox.js.map +1 -1
- package/package.json +2 -2
- package/src/engine-components/OrbitControls.ts +16 -0
- package/src/engine-components/Skybox.ts +14 -20
|
@@ -4,12 +4,12 @@ var It = (e, t, i) => Qi(e, typeof t != "symbol" ? t + "" : t, i);
|
|
|
4
4
|
import { Uniform$1 as c, Vector4 as Be, Color as N, Vector2 as p, CanvasTexture as Vi, RepeatWrapping as se, ShaderMaterial as w, NoBlending as G, WebGLRenderTarget as T, NearestFilter as P, EventDispatcher as Tt, SRGBColorSpace as y, UnsignedByteType as Y, PerspectiveCamera as Ie, BasicDepthPacking as W, REVISION as Re, LinearFilter as R, RGBADepthPacking as ae, FloatType as J, LessDepth as Rt, MeshDepthMaterial as Wi, LinearSRGBColorSpace as je, NoColorSpace as tt, DepthTexture as ye, DepthStencilFormat as Zt, UnsignedInt248Type as jt, UnsignedIntType as Le, RGBAFormat as z, Scene as dt, Matrix4 as O, Vector3 as L, HalfFloatType as $, Data3DTexture as Xe, Loader as St, LoadingManager as Ne, FileLoader as Jt, ClampToEdgeWrapping as st, DataTexture as it, RedFormat as rt, MeshNormalMaterial as Yi, BackSide as ke, DoubleSide as Qe, FrontSide as Ki, Camera as Xi, Mesh as qt, Texture as Je, EqualDepth as vt, NotEqualDepth as _t, LinearMipmapLinearFilter as Zi, GreaterDepth as ji, GreaterEqualDepth as Ji, LessEqualDepth as qi, AlwaysDepth as _i, NeverDepth as $i, Material as $t, BufferGeometry as ei, BufferAttribute as qe, RGFormat as er, DepthFormat as bt, OrthographicCamera as tr, Sphere as ir } from "./three-DrqIzZTH.js";
|
|
5
5
|
import { Pass as rr } from "./three-examples-tvuhV8Ne.js";
|
|
6
6
|
/**
|
|
7
|
-
* postprocessing v6.37.
|
|
7
|
+
* postprocessing v6.37.7 build Mon Aug 04 2025
|
|
8
8
|
* https://github.com/pmndrs/postprocessing
|
|
9
9
|
* Copyright 2015-2025 Raoul van Rüschen
|
|
10
10
|
* @license Zlib
|
|
11
11
|
*/
|
|
12
|
-
var ar = "6.37.
|
|
12
|
+
var ar = "6.37.7", sr = class {
|
|
13
13
|
/**
|
|
14
14
|
* Frees internal resources.
|
|
15
15
|
*/
|
|
@@ -2422,16 +2422,16 @@ uniform vec2 range;
|
|
|
2422
2422
|
#elif defined(THRESHOLD)
|
|
2423
2423
|
uniform float threshold;uniform float smoothing;
|
|
2424
2424
|
#endif
|
|
2425
|
-
varying vec2 vUv;void main(){vec4 texel=texture2D(inputBuffer,vUv);float l=luminance(texel.rgb);
|
|
2425
|
+
varying vec2 vUv;void main(){vec4 texel=texture2D(inputBuffer,vUv);float l=luminance(texel.rgb);float mask=1.0;
|
|
2426
2426
|
#ifdef RANGE
|
|
2427
|
-
float low=step(range.x,l);float high=step(l,range.y);
|
|
2427
|
+
float low=step(range.x,l);float high=step(l,range.y);mask=low*high;
|
|
2428
2428
|
#elif defined(THRESHOLD)
|
|
2429
|
-
|
|
2429
|
+
mask=smoothstep(threshold,threshold+smoothing,l);
|
|
2430
2430
|
#endif
|
|
2431
2431
|
#ifdef COLOR
|
|
2432
|
-
gl_FragColor=
|
|
2432
|
+
gl_FragColor=texel*mask;
|
|
2433
2433
|
#else
|
|
2434
|
-
gl_FragColor=vec4(l);
|
|
2434
|
+
gl_FragColor=vec4(l*mask);
|
|
2435
2435
|
#endif
|
|
2436
2436
|
}`, li = class extends w {
|
|
2437
2437
|
/**
|
|
@@ -6115,7 +6115,7 @@ var ue = class mi {
|
|
|
6115
6115
|
*
|
|
6116
6116
|
* @param {Number} [width=0] - The width of the image.
|
|
6117
6117
|
* @param {Number} [height=0] - The height of the image.
|
|
6118
|
-
* @param {Uint8ClampedArray} [data=null] - The image data.
|
|
6118
|
+
* @param {Uint8ClampedArray<ArrayBuffer>} [data=null] - The image data.
|
|
6119
6119
|
*/
|
|
6120
6120
|
constructor(t = 0, i = 0, r = null) {
|
|
6121
6121
|
this.width = t, this.height = i, this.data = r;
|
|
@@ -12904,7 +12904,7 @@ var An = class {
|
|
|
12904
12904
|
);
|
|
12905
12905
|
return r;
|
|
12906
12906
|
}
|
|
12907
|
-
}, xn = `"use strict";(()=>{function q(t,a,s){let e=document.createElement("canvas"),n=e.getContext("2d");if(e.width=t,e.height=a,s instanceof Image)n.drawImage(s,0,0);else{let r=n.createImageData(t,a);r.data.set(s),n.putImageData(r,0,0)}return e}var F=class t{constructor(a=0,s=0,e=null){this.width=a,this.height=s,this.data=e}toCanvas(){return typeof document=="undefined"?null:q(this.width,this.height,this.data)}static from(a){let{width:s,height:e}=a,n;if(a instanceof Image){let r=q(s,e,a);r!==null&&(n=r.getContext("2d").getImageData(0,0,s,e).data)}else n=a.data;return new t(s,e,n)}};var M=[new Float32Array(2),new Float32Array(2)],D=16,W=20,I=30,j=32,v=new Float32Array([0,-.25,.25,-.125,.125,-.375,.375]),N=[new Float32Array([0,0]),new Float32Array([.25,-.25]),new Float32Array([-.25,.25]),new Float32Array([.125,-.125]),new Float32Array([-.125,.125])],z=[new Uint8Array([0,0]),new Uint8Array([3,0]),new Uint8Array([0,3]),new Uint8Array([3,3]),new Uint8Array([1,0]),new Uint8Array([4,0]),new Uint8Array([1,3]),new Uint8Array([4,3]),new Uint8Array([0,1]),new Uint8Array([3,1]),new Uint8Array([0,4]),new Uint8Array([3,4]),new Uint8Array([1,1]),new Uint8Array([4,1]),new Uint8Array([1,4]),new Uint8Array([4,4])],p=[new Uint8Array([0,0]),new Uint8Array([1,0]),new Uint8Array([0,2]),new Uint8Array([1,2]),new Uint8Array([2,0]),new Uint8Array([3,0]),new Uint8Array([2,2]),new Uint8Array([3,2]),new Uint8Array([0,1]),new Uint8Array([1,1]),new Uint8Array([0,3]),new Uint8Array([1,3]),new Uint8Array([2,1]),new Uint8Array([3,1]),new Uint8Array([2,3]),new Uint8Array([3,3])];function C(t,a,s){return t+(a-t)*s}function B(t){return Math.min(Math.max(t,0),1)}function _(t){let a=M[0],s=M[1],e=Math.sqrt(a[0]*2)*.5,n=Math.sqrt(a[1]*2)*.5,r=Math.sqrt(s[0]*2)*.5,o=Math.sqrt(s[1]*2)*.5,c=B(t/j);a[0]=C(e,a[0],c),a[1]=C(n,a[1],c),s[0]=C(r,s[0],c),s[1]=C(o,s[1],c)}function d(t,a,s,e,n,r){let o=s-t,c=e-a,h=n,i=n+1,w=a+c*(h-t)/o,b=a+c*(i-t)/o;if(h>=t&&h<s||i>t&&i<=s)if(Math.sign(w)===Math.sign(b)||Math.abs(w)<1e-4||Math.abs(b)<1e-4){let g=(w+b)/2;g<0?(r[0]=Math.abs(g),r[1]=0):(r[0]=0,r[1]=Math.abs(g))}else{let g=-a*o/c+t,k=Math.trunc(g),m=g>t?w*(g-k)/2:0,U=g<s?b*(1-(g-k))/2:0;(Math.abs(m)>Math.abs(U)?m:-U)<0?(r[0]=Math.abs(m),r[1]=Math.abs(U)):(r[0]=Math.abs(U),r[1]=Math.abs(m))}else r[0]=0,r[1]=0;return r}function J(t,a,s,e,n){let r=M[0],o=M[1],c=.5+e,h=.5+e-1,i=a+s+1;switch(t){case 0:{n[0]=0,n[1]=0;break}case 1:{a<=s?d(0,h,i/2,0,a,n):(n[0]=0,n[1]=0);break}case 2:{a>=s?d(i/2,0,i,h,a,n):(n[0]=0,n[1]=0);break}case 3:{d(0,h,i/2,0,a,r),d(i/2,0,i,h,a,o),_(i,M),n[0]=r[0]+o[0],n[1]=r[1]+o[1];break}case 4:{a<=s?d(0,c,i/2,0,a,n):(n[0]=0,n[1]=0);break}case 5:{n[0]=0,n[1]=0;break}case 6:{Math.abs(e)>0?(d(0,c,i,h,a,r),d(0,c,i/2,0,a,o),d(i/2,0,i,h,a,n),o[0]=o[0]+n[0],o[1]=o[1]+n[1],n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2):d(0,c,i,h,a,n);break}case 7:{d(0,c,i,h,a,n);break}case 8:{a>=s?d(i/2,0,i,c,a,n):(n[0]=0,n[1]=0);break}case 9:{Math.abs(e)>0?(d(0,h,i,c,a,r),d(0,h,i/2,0,a,o),d(i/2,0,i,c,a,n),o[0]=o[0]+n[0],o[1]=o[1]+n[1],n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2):d(0,h,i,c,a,n);break}case 10:{n[0]=0,n[1]=0;break}case 11:{d(0,h,i,c,a,n);break}case 12:{d(0,c,i/2,0,a,r),d(i/2,0,i,c,a,o),_(i,M),n[0]=r[0]+o[0],n[1]=r[1]+o[1];break}case 13:{d(0,h,i,c,a,n);break}case 14:{d(0,c,i,h,a,n);break}case 15:{n[0]=0,n[1]=0;break}}return n}function K(t,a,s,e,n,r){let o=t===s&&a===e;if(!o){let c=(t+s)/2,h=(a+e)/2,i=e-a,w=t-s;o=i*(n-c)+w*(r-h)>0}return o}function G(t,a,s,e,n,r){let o=0;for(let c=0;c<I;++c)for(let h=0;h<I;++h){let i=h/(I-1),w=c/(I-1);K(t,a,s,e,n+i,r+w)&&++o}return o/(I*I)}function A(t,a,s,e,n,r,o,c){let h=p[t],i=h[0],w=h[1];return i>0&&(a+=o[0],s+=o[1]),w>0&&(e+=o[0],n+=o[1]),c[0]=1-G(a,s,e,n,1+r,0+r),c[1]=G(a,s,e,n,1+r,1+r),c}function Q(t,a,s,e,n){let r=M[0],o=M[1],c=a+s+1;switch(t){case 0:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 1:{A(t,1,0,0+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 2:{A(t,0,0,1+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 3:{A(t,1,0,1+c,0+c,a,e,n);break}case 4:{A(t,1,1,0+c,0+c,a,e,r),A(t,1,1,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 5:{A(t,1,1,0+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 6:{A(t,1,1,1+c,0+c,a,e,n);break}case 7:{A(t,1,1,1+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 8:{A(t,0,0,1+c,1+c,a,e,r),A(t,1,0,1+c,1+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 9:{A(t,1,0,1+c,1+c,a,e,n),A(t,1,0,1+c,1+c,a,e,n);break}case 10:{A(t,0,0,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 11:{A(t,1,0,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 12:{A(t,1,1,1+c,1+c,a,e,n);break}case 13:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,0,1+c,1+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 14:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,1,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 15:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}}return n}function R(t,a,s){let e=new Float32Array(2);for(let n=0,r=t.length;n<r;++n){let o=t[n],c=o.data,h=o.width;for(let i=0;i<h;++i)for(let w=0;w<h;++w){s?J(n,w,i,a,e):Q(n,w,i,a,e);let b=(i*h+w)*2;c[b]=e[0]*255,c[b+1]=e[1]*255}}}function T(t,a,s,e,n,r,o){let c=o.data,h=o.width;for(let i=0,w=s.length;i<w;++i){let b=e[i],g=s[i],k=g.data,m=g.width;for(let U=0;U<n;++U)for(let x=0;x<n;++x){let Z=b[0]*n+t+x,O=((b[1]*n+a+U)*h+Z)*4,L=r?(U*U*m+x*x)*2:(U*m+x)*2;c[O]=k[L],c[O+1]=k[L+1],c[O+2]=0,c[O+3]=255}}}var S=class{static generate(){let a=10*D,s=v.length*5*D,e=new Uint8ClampedArray(a*s*4),n=new F(a,s,e),r=Math.pow(D-1,2)+1,o=W,c=[],h=[];for(let i=3,w=e.length;i<w;i+=4)e[i]=255;for(let i=0;i<16;++i)c.push(new F(r,r,new Uint8ClampedArray(r*r*2),2)),h.push(new F(o,o,new Uint8ClampedArray(o*o*2),2));for(let i=0,w=v.length;i<w;++i)R(c,v[i],!0),T(0,5*D*i,c,z,D,!0,n);for(let i=0,w=N.length;i<w;++i)R(h,N[i],!1),T(5*D,4*W*i,h,p,W,!1,n);return n}};var P=new Map([[y(0,0,0,0),new Float32Array([0,0,0,0])],[y(0,0,0,1),new Float32Array([0,0,0,1])],[y(0,0,1,0),new Float32Array([0,0,1,0])],[y(0,0,1,1),new Float32Array([0,0,1,1])],[y(0,1,0,0),new Float32Array([0,1,0,0])],[y(0,1,0,1),new Float32Array([0,1,0,1])],[y(0,1,1,0),new Float32Array([0,1,1,0])],[y(0,1,1,1),new Float32Array([0,1,1,1])],[y(1,0,0,0),new Float32Array([1,0,0,0])],[y(1,0,0,1),new Float32Array([1,0,0,1])],[y(1,0,1,0),new Float32Array([1,0,1,0])],[y(1,0,1,1),new Float32Array([1,0,1,1])],[y(1,1,0,0),new Float32Array([1,1,0,0])],[y(1,1,0,1),new Float32Array([1,1,0,1])],[y(1,1,1,0),new Float32Array([1,1,1,0])],[y(1,1,1,1),new Float32Array([1,1,1,1])]]);function H(t,a,s){return t+(a-t)*s}function y(t,a,s,e){let n=H(t,a,.75),r=H(s,e,1-.25);return H(n,r,1-.125)}function V(t,a){let s=0;return a[3]===1&&(s+=1),s===1&&a[2]===1&&t[1]!==1&&t[3]!==1&&(s+=1),s}function $(t,a){let s=0;return a[3]===1&&t[1]!==1&&t[3]!==1&&(s+=1),s===1&&a[2]===1&&t[0]!==1&&t[2]!==1&&(s+=1),s}var E=class{static generate(){let o=new Uint8ClampedArray(2178),c=new Uint8ClampedArray(
|
|
12907
|
+
}, xn = `"use strict";(()=>{function q(t,a,s){let e=document.createElement("canvas"),n=e.getContext("2d");if(e.width=t,e.height=a,s instanceof Image)n.drawImage(s,0,0);else{let r=n.createImageData(t,a);r.data.set(s),n.putImageData(r,0,0)}return e}var F=class t{constructor(a=0,s=0,e=null){this.width=a,this.height=s,this.data=e}toCanvas(){return typeof document=="undefined"?null:q(this.width,this.height,this.data)}static from(a){let{width:s,height:e}=a,n;if(a instanceof Image){let r=q(s,e,a);r!==null&&(n=r.getContext("2d").getImageData(0,0,s,e).data)}else n=a.data;return new t(s,e,n)}};var M=[new Float32Array(2),new Float32Array(2)],D=16,W=20,I=30,j=32,v=new Float32Array([0,-.25,.25,-.125,.125,-.375,.375]),N=[new Float32Array([0,0]),new Float32Array([.25,-.25]),new Float32Array([-.25,.25]),new Float32Array([.125,-.125]),new Float32Array([-.125,.125])],z=[new Uint8Array([0,0]),new Uint8Array([3,0]),new Uint8Array([0,3]),new Uint8Array([3,3]),new Uint8Array([1,0]),new Uint8Array([4,0]),new Uint8Array([1,3]),new Uint8Array([4,3]),new Uint8Array([0,1]),new Uint8Array([3,1]),new Uint8Array([0,4]),new Uint8Array([3,4]),new Uint8Array([1,1]),new Uint8Array([4,1]),new Uint8Array([1,4]),new Uint8Array([4,4])],p=[new Uint8Array([0,0]),new Uint8Array([1,0]),new Uint8Array([0,2]),new Uint8Array([1,2]),new Uint8Array([2,0]),new Uint8Array([3,0]),new Uint8Array([2,2]),new Uint8Array([3,2]),new Uint8Array([0,1]),new Uint8Array([1,1]),new Uint8Array([0,3]),new Uint8Array([1,3]),new Uint8Array([2,1]),new Uint8Array([3,1]),new Uint8Array([2,3]),new Uint8Array([3,3])];function C(t,a,s){return t+(a-t)*s}function B(t){return Math.min(Math.max(t,0),1)}function _(t){let a=M[0],s=M[1],e=Math.sqrt(a[0]*2)*.5,n=Math.sqrt(a[1]*2)*.5,r=Math.sqrt(s[0]*2)*.5,o=Math.sqrt(s[1]*2)*.5,c=B(t/j);a[0]=C(e,a[0],c),a[1]=C(n,a[1],c),s[0]=C(r,s[0],c),s[1]=C(o,s[1],c)}function d(t,a,s,e,n,r){let o=s-t,c=e-a,h=n,i=n+1,w=a+c*(h-t)/o,b=a+c*(i-t)/o;if(h>=t&&h<s||i>t&&i<=s)if(Math.sign(w)===Math.sign(b)||Math.abs(w)<1e-4||Math.abs(b)<1e-4){let g=(w+b)/2;g<0?(r[0]=Math.abs(g),r[1]=0):(r[0]=0,r[1]=Math.abs(g))}else{let g=-a*o/c+t,k=Math.trunc(g),m=g>t?w*(g-k)/2:0,U=g<s?b*(1-(g-k))/2:0;(Math.abs(m)>Math.abs(U)?m:-U)<0?(r[0]=Math.abs(m),r[1]=Math.abs(U)):(r[0]=Math.abs(U),r[1]=Math.abs(m))}else r[0]=0,r[1]=0;return r}function J(t,a,s,e,n){let r=M[0],o=M[1],c=.5+e,h=.5+e-1,i=a+s+1;switch(t){case 0:{n[0]=0,n[1]=0;break}case 1:{a<=s?d(0,h,i/2,0,a,n):(n[0]=0,n[1]=0);break}case 2:{a>=s?d(i/2,0,i,h,a,n):(n[0]=0,n[1]=0);break}case 3:{d(0,h,i/2,0,a,r),d(i/2,0,i,h,a,o),_(i,M),n[0]=r[0]+o[0],n[1]=r[1]+o[1];break}case 4:{a<=s?d(0,c,i/2,0,a,n):(n[0]=0,n[1]=0);break}case 5:{n[0]=0,n[1]=0;break}case 6:{Math.abs(e)>0?(d(0,c,i,h,a,r),d(0,c,i/2,0,a,o),d(i/2,0,i,h,a,n),o[0]=o[0]+n[0],o[1]=o[1]+n[1],n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2):d(0,c,i,h,a,n);break}case 7:{d(0,c,i,h,a,n);break}case 8:{a>=s?d(i/2,0,i,c,a,n):(n[0]=0,n[1]=0);break}case 9:{Math.abs(e)>0?(d(0,h,i,c,a,r),d(0,h,i/2,0,a,o),d(i/2,0,i,c,a,n),o[0]=o[0]+n[0],o[1]=o[1]+n[1],n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2):d(0,h,i,c,a,n);break}case 10:{n[0]=0,n[1]=0;break}case 11:{d(0,h,i,c,a,n);break}case 12:{d(0,c,i/2,0,a,r),d(i/2,0,i,c,a,o),_(i,M),n[0]=r[0]+o[0],n[1]=r[1]+o[1];break}case 13:{d(0,h,i,c,a,n);break}case 14:{d(0,c,i,h,a,n);break}case 15:{n[0]=0,n[1]=0;break}}return n}function K(t,a,s,e,n,r){let o=t===s&&a===e;if(!o){let c=(t+s)/2,h=(a+e)/2,i=e-a,w=t-s;o=i*(n-c)+w*(r-h)>0}return o}function G(t,a,s,e,n,r){let o=0;for(let c=0;c<I;++c)for(let h=0;h<I;++h){let i=h/(I-1),w=c/(I-1);K(t,a,s,e,n+i,r+w)&&++o}return o/(I*I)}function A(t,a,s,e,n,r,o,c){let h=p[t],i=h[0],w=h[1];return i>0&&(a+=o[0],s+=o[1]),w>0&&(e+=o[0],n+=o[1]),c[0]=1-G(a,s,e,n,1+r,0+r),c[1]=G(a,s,e,n,1+r,1+r),c}function Q(t,a,s,e,n){let r=M[0],o=M[1],c=a+s+1;switch(t){case 0:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 1:{A(t,1,0,0+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 2:{A(t,0,0,1+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 3:{A(t,1,0,1+c,0+c,a,e,n);break}case 4:{A(t,1,1,0+c,0+c,a,e,r),A(t,1,1,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 5:{A(t,1,1,0+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 6:{A(t,1,1,1+c,0+c,a,e,n);break}case 7:{A(t,1,1,1+c,0+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 8:{A(t,0,0,1+c,1+c,a,e,r),A(t,1,0,1+c,1+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 9:{A(t,1,0,1+c,1+c,a,e,n),A(t,1,0,1+c,1+c,a,e,n);break}case 10:{A(t,0,0,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 11:{A(t,1,0,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 12:{A(t,1,1,1+c,1+c,a,e,n);break}case 13:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,0,1+c,1+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 14:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,1,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}case 15:{A(t,1,1,1+c,1+c,a,e,r),A(t,1,0,1+c,0+c,a,e,o),n[0]=(r[0]+o[0])/2,n[1]=(r[1]+o[1])/2;break}}return n}function R(t,a,s){let e=new Float32Array(2);for(let n=0,r=t.length;n<r;++n){let o=t[n],c=o.data,h=o.width;for(let i=0;i<h;++i)for(let w=0;w<h;++w){s?J(n,w,i,a,e):Q(n,w,i,a,e);let b=(i*h+w)*2;c[b]=e[0]*255,c[b+1]=e[1]*255}}}function T(t,a,s,e,n,r,o){let c=o.data,h=o.width;for(let i=0,w=s.length;i<w;++i){let b=e[i],g=s[i],k=g.data,m=g.width;for(let U=0;U<n;++U)for(let x=0;x<n;++x){let Z=b[0]*n+t+x,O=((b[1]*n+a+U)*h+Z)*4,L=r?(U*U*m+x*x)*2:(U*m+x)*2;c[O]=k[L],c[O+1]=k[L+1],c[O+2]=0,c[O+3]=255}}}var S=class{static generate(){let a=10*D,s=v.length*5*D,e=new Uint8ClampedArray(a*s*4),n=new F(a,s,e),r=Math.pow(D-1,2)+1,o=W,c=[],h=[];for(let i=3,w=e.length;i<w;i+=4)e[i]=255;for(let i=0;i<16;++i)c.push(new F(r,r,new Uint8ClampedArray(r*r*2),2)),h.push(new F(o,o,new Uint8ClampedArray(o*o*2),2));for(let i=0,w=v.length;i<w;++i)R(c,v[i],!0),T(0,5*D*i,c,z,D,!0,n);for(let i=0,w=N.length;i<w;++i)R(h,N[i],!1),T(5*D,4*W*i,h,p,W,!1,n);return n}};var P=new Map([[y(0,0,0,0),new Float32Array([0,0,0,0])],[y(0,0,0,1),new Float32Array([0,0,0,1])],[y(0,0,1,0),new Float32Array([0,0,1,0])],[y(0,0,1,1),new Float32Array([0,0,1,1])],[y(0,1,0,0),new Float32Array([0,1,0,0])],[y(0,1,0,1),new Float32Array([0,1,0,1])],[y(0,1,1,0),new Float32Array([0,1,1,0])],[y(0,1,1,1),new Float32Array([0,1,1,1])],[y(1,0,0,0),new Float32Array([1,0,0,0])],[y(1,0,0,1),new Float32Array([1,0,0,1])],[y(1,0,1,0),new Float32Array([1,0,1,0])],[y(1,0,1,1),new Float32Array([1,0,1,1])],[y(1,1,0,0),new Float32Array([1,1,0,0])],[y(1,1,0,1),new Float32Array([1,1,0,1])],[y(1,1,1,0),new Float32Array([1,1,1,0])],[y(1,1,1,1),new Float32Array([1,1,1,1])]]);function H(t,a,s){return t+(a-t)*s}function y(t,a,s,e){let n=H(t,a,.75),r=H(s,e,1-.25);return H(n,r,1-.125)}function V(t,a){let s=0;return a[3]===1&&(s+=1),s===1&&a[2]===1&&t[1]!==1&&t[3]!==1&&(s+=1),s}function $(t,a){let s=0;return a[3]===1&&t[1]!==1&&t[3]!==1&&(s+=1),s===1&&a[2]===1&&t[0]!==1&&t[2]!==1&&(s+=1),s}var E=class{static generate(){let o=new Uint8ClampedArray(2178),c=new Uint8ClampedArray(1024*4);for(let h=0;h<33;++h)for(let i=0;i<66;++i){let w=.03125*i,b=.03125*h;if(P.has(w)&&P.has(b)){let g=P.get(w),k=P.get(b),m=h*66+i;o[m]=127*V(g,k),o[m+33]=127*$(g,k)}}for(let h=0,i=17;i<33;++i)for(let w=0;w<64;++w,h+=4)c[h]=o[i*66+w],c[h+3]=255;return new F(64,16,c)}};self.addEventListener("message",t=>{let a=S.generate(),s=E.generate();postMessage({areaImageData:a,searchImageData:s},[a.data.buffer,s.data.buffer]),close()});})();
|
|
12908
12908
|
`;
|
|
12909
12909
|
function Dn(e = !0) {
|
|
12910
12910
|
const t = URL.createObjectURL(new Blob([xn], {
|
|
@@ -170,6 +170,18 @@ export declare class OrbitControls extends Behaviour implements ICameraControlle
|
|
|
170
170
|
* ```
|
|
171
171
|
*/
|
|
172
172
|
rotateLeft(angleInRadians: number): void;
|
|
173
|
+
/**
|
|
174
|
+
* Rotate the camera up (or down) by the specified angle in radians.
|
|
175
|
+
* For positive angles the camera will rotate up, for negative angles it will rotate down.
|
|
176
|
+
* Tip: Use Mathf to convert between degrees and radians.
|
|
177
|
+
* @param angleInRadians The angle in radians to rotate the camera up
|
|
178
|
+
* @example
|
|
179
|
+
* ```typescript
|
|
180
|
+
* // Rotate the camera up by 0.1 radians
|
|
181
|
+
* orbitControls.rotateUp(0.1);
|
|
182
|
+
* ```
|
|
183
|
+
*/
|
|
184
|
+
rotateUp(angleInRadians: number): void;
|
|
173
185
|
/**
|
|
174
186
|
* Pan the camera by the specified amount in the x and y direction in pixels.
|
|
175
187
|
* @param dx The amount to pan the camera in the x direction in pixels.
|
|
@@ -196,6 +196,20 @@ export class OrbitControls extends Behaviour {
|
|
|
196
196
|
rotateLeft(angleInRadians) {
|
|
197
197
|
this._controls?._rotateLeft(angleInRadians);
|
|
198
198
|
}
|
|
199
|
+
/**
|
|
200
|
+
* Rotate the camera up (or down) by the specified angle in radians.
|
|
201
|
+
* For positive angles the camera will rotate up, for negative angles it will rotate down.
|
|
202
|
+
* Tip: Use Mathf to convert between degrees and radians.
|
|
203
|
+
* @param angleInRadians The angle in radians to rotate the camera up
|
|
204
|
+
* @example
|
|
205
|
+
* ```typescript
|
|
206
|
+
* // Rotate the camera up by 0.1 radians
|
|
207
|
+
* orbitControls.rotateUp(0.1);
|
|
208
|
+
* ```
|
|
209
|
+
*/
|
|
210
|
+
rotateUp(angleInRadians) {
|
|
211
|
+
this._controls?._rotateUp(angleInRadians);
|
|
212
|
+
}
|
|
199
213
|
/**
|
|
200
214
|
* Pan the camera by the specified amount in the x and y direction in pixels.
|
|
201
215
|
* @param dx The amount to pan the camera in the x direction in pixels.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../src/engine-components/OrbitControls.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../src/engine-components/OrbitControls.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,6 +78,7 @@ export declare class RemoteSkybox extends Behaviour {
|
|
|
78
78
|
setSkybox(url: string | undefined | null, name?: string): Promise<boolean>;
|
|
79
79
|
private loadTexture;
|
|
80
80
|
private apply;
|
|
81
|
+
private readonly validProtocols;
|
|
81
82
|
private readonly validTextureTypes;
|
|
82
83
|
private isRemoteTexture;
|
|
83
84
|
private isValidTextureType;
|
|
@@ -92,6 +92,8 @@ function tryGetPreviouslyLoadedTexture(src) {
|
|
|
92
92
|
}
|
|
93
93
|
async function disposeCachedTexture(tex) {
|
|
94
94
|
const texture = await tex;
|
|
95
|
+
if (!texture)
|
|
96
|
+
return;
|
|
95
97
|
setDisposable(texture, true);
|
|
96
98
|
disposeObjectResources(texture);
|
|
97
99
|
}
|
|
@@ -212,23 +214,9 @@ export class RemoteSkybox extends Behaviour {
|
|
|
212
214
|
url = tryParseMagicSkyboxName(url, this.environment, this.background);
|
|
213
215
|
if (!url)
|
|
214
216
|
return false;
|
|
215
|
-
try {
|
|
216
|
-
if (url.startsWith("/") || url.startsWith(".")) {
|
|
217
|
-
new URL(url, window.location.href);
|
|
218
|
-
}
|
|
219
|
-
// here we handle blob, http stuff. This should fail for e.g. transparent or rgba or #
|
|
220
|
-
else {
|
|
221
|
-
new URL(url);
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
catch (err) {
|
|
225
|
-
if (debug)
|
|
226
|
-
console.warn("RemoteSkybox: Invalid URL", url, this.name);
|
|
227
|
-
return false; // Invalid URL
|
|
228
|
-
}
|
|
229
217
|
name ??= url;
|
|
230
218
|
if (!this.isValidTextureType(name)) {
|
|
231
|
-
console.warn("Potentially invalid skybox
|
|
219
|
+
console.warn("Potentially invalid skybox URL: \"" + name + "\" on " + (this.name || this.gameObject?.name || "context"));
|
|
232
220
|
}
|
|
233
221
|
if (debug)
|
|
234
222
|
console.log("Set remote skybox url: " + url);
|
|
@@ -277,7 +265,7 @@ export class RemoteSkybox extends Behaviour {
|
|
|
277
265
|
const cached = tryGetPreviouslyLoadedTexture(name);
|
|
278
266
|
if (cached) {
|
|
279
267
|
const res = await cached;
|
|
280
|
-
if (res
|
|
268
|
+
if (res?.source?.data?.length > 0 || res?.source?.data?.data?.length)
|
|
281
269
|
return res;
|
|
282
270
|
}
|
|
283
271
|
const isEXR = name.endsWith(".exr");
|
|
@@ -303,7 +291,10 @@ export class RemoteSkybox extends Behaviour {
|
|
|
303
291
|
}
|
|
304
292
|
if (debug)
|
|
305
293
|
console.log("Loading skybox: " + url);
|
|
306
|
-
const loadingTask = this._loader.loadAsync(url)
|
|
294
|
+
const loadingTask = this._loader.loadAsync(url).catch(_err => {
|
|
295
|
+
console.warn("RemoteSkybox: Failed to load texture from url:", url);
|
|
296
|
+
return null;
|
|
297
|
+
});
|
|
307
298
|
registerLoadedTexture(name, loadingTask);
|
|
308
299
|
const envMap = await loadingTask;
|
|
309
300
|
return envMap;
|
|
@@ -333,6 +324,7 @@ export class RemoteSkybox extends Behaviour {
|
|
|
333
324
|
if (this.context.mainCameraComponent?.backgroundBlurriness !== undefined)
|
|
334
325
|
this.context.scene.backgroundBlurriness = this.context.mainCameraComponent.backgroundBlurriness;
|
|
335
326
|
}
|
|
327
|
+
validProtocols = ["file:", "blob:", "data:"];
|
|
336
328
|
validTextureTypes = [".ktx2", ".hdr", ".exr", ".jpg", ".jpeg", ".png"];
|
|
337
329
|
isRemoteTexture(url) {
|
|
338
330
|
return url.startsWith("http://") || url.startsWith("https://");
|
|
@@ -342,6 +334,10 @@ export class RemoteSkybox extends Behaviour {
|
|
|
342
334
|
if (url.endsWith(type))
|
|
343
335
|
return true;
|
|
344
336
|
}
|
|
337
|
+
for (const protocol of this.validProtocols) {
|
|
338
|
+
if (url.startsWith(protocol))
|
|
339
|
+
return true;
|
|
340
|
+
}
|
|
345
341
|
return false;
|
|
346
342
|
}
|
|
347
343
|
registerDropEvents() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Skybox.js","sourceRoot":"","sources":["../../src/engine-components/Skybox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Skybox.js","sourceRoot":"","sources":["../../src/engine-components/Skybox.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@needle-tools/engine",
|
|
3
|
-
"version": "4.7.
|
|
3
|
+
"version": "4.7.3-next.24c33e7",
|
|
4
4
|
"description": "Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.",
|
|
5
5
|
"main": "dist/needle-engine.min.js",
|
|
6
6
|
"exports": {
|
|
@@ -167,4 +167,4 @@
|
|
|
167
167
|
"module": "lib/needle-engine.js",
|
|
168
168
|
"typings": "lib/needle-engine.d.ts",
|
|
169
169
|
"types": "lib/needle-engine.d.ts"
|
|
170
|
-
}
|
|
170
|
+
}
|
|
@@ -252,6 +252,22 @@ export class OrbitControls extends Behaviour implements ICameraController {
|
|
|
252
252
|
rotateLeft(angleInRadians: number) {
|
|
253
253
|
this._controls?._rotateLeft(angleInRadians);
|
|
254
254
|
}
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* Rotate the camera up (or down) by the specified angle in radians.
|
|
258
|
+
* For positive angles the camera will rotate up, for negative angles it will rotate down.
|
|
259
|
+
* Tip: Use Mathf to convert between degrees and radians.
|
|
260
|
+
* @param angleInRadians The angle in radians to rotate the camera up
|
|
261
|
+
* @example
|
|
262
|
+
* ```typescript
|
|
263
|
+
* // Rotate the camera up by 0.1 radians
|
|
264
|
+
* orbitControls.rotateUp(0.1);
|
|
265
|
+
* ```
|
|
266
|
+
*/
|
|
267
|
+
rotateUp(angleInRadians: number) {
|
|
268
|
+
this._controls?._rotateUp(angleInRadians);
|
|
269
|
+
}
|
|
270
|
+
|
|
255
271
|
/**
|
|
256
272
|
* Pan the camera by the specified amount in the x and y direction in pixels.
|
|
257
273
|
* @param dx The amount to pan the camera in the x direction in pixels.
|
|
@@ -71,7 +71,7 @@ ContextRegistry.registerCallback(ContextEvent.ContextCreationStart, () => {
|
|
|
71
71
|
})
|
|
72
72
|
});
|
|
73
73
|
|
|
74
|
-
declare type SkyboxCacheEntry = { src: string, texture: Promise<Texture> };
|
|
74
|
+
declare type SkyboxCacheEntry = { src: string, texture: Promise<Texture | null> };
|
|
75
75
|
function ensureGlobalCache() {
|
|
76
76
|
if (!globalThis["NEEDLE_ENGINE_SKYBOX_TEXTURES"])
|
|
77
77
|
globalThis["NEEDLE_ENGINE_SKYBOX_TEXTURES"] = new Array<SkyboxCacheEntry>();
|
|
@@ -87,12 +87,13 @@ function tryGetPreviouslyLoadedTexture(src: string) {
|
|
|
87
87
|
}
|
|
88
88
|
return null;
|
|
89
89
|
}
|
|
90
|
-
async function disposeCachedTexture(tex: Promise<Texture>) {
|
|
90
|
+
async function disposeCachedTexture(tex: Promise<Texture | null>) {
|
|
91
91
|
const texture = await tex;
|
|
92
|
+
if (!texture) return;
|
|
92
93
|
setDisposable(texture, true);
|
|
93
94
|
disposeObjectResources(texture);
|
|
94
95
|
}
|
|
95
|
-
function registerLoadedTexture(src: string, texture: Promise<Texture>) {
|
|
96
|
+
function registerLoadedTexture(src: string, texture: Promise<Texture | null>) {
|
|
96
97
|
const cache = ensureGlobalCache();
|
|
97
98
|
// Make sure the cache doesnt get too big
|
|
98
99
|
while (cache.length > 5) {
|
|
@@ -226,24 +227,10 @@ export class RemoteSkybox extends Behaviour {
|
|
|
226
227
|
|
|
227
228
|
if (!url) return false;
|
|
228
229
|
|
|
229
|
-
try {
|
|
230
|
-
if (url.startsWith("/") || url.startsWith(".")) {
|
|
231
|
-
new URL(url, window.location.href);
|
|
232
|
-
}
|
|
233
|
-
// here we handle blob, http stuff. This should fail for e.g. transparent or rgba or #
|
|
234
|
-
else {
|
|
235
|
-
new URL(url);
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
catch (err) {
|
|
239
|
-
if (debug) console.warn("RemoteSkybox: Invalid URL", url, this.name);
|
|
240
|
-
return false; // Invalid URL
|
|
241
|
-
}
|
|
242
|
-
|
|
243
230
|
name ??= url;
|
|
244
231
|
|
|
245
232
|
if (!this.isValidTextureType(name)) {
|
|
246
|
-
console.warn("Potentially invalid skybox
|
|
233
|
+
console.warn("Potentially invalid skybox URL: \"" + name + "\" on " + (this.name || this.gameObject?.name || "context"));
|
|
247
234
|
}
|
|
248
235
|
|
|
249
236
|
if (debug) console.log("Set remote skybox url: " + url);
|
|
@@ -291,7 +278,7 @@ export class RemoteSkybox extends Behaviour {
|
|
|
291
278
|
const cached = tryGetPreviouslyLoadedTexture(name);
|
|
292
279
|
if (cached) {
|
|
293
280
|
const res = await cached;
|
|
294
|
-
if (res
|
|
281
|
+
if (res?.source?.data?.length > 0 || res?.source?.data?.data?.length) return res;
|
|
295
282
|
}
|
|
296
283
|
const isEXR = name.endsWith(".exr");
|
|
297
284
|
const isHdr = name.endsWith(".hdr");
|
|
@@ -316,7 +303,10 @@ export class RemoteSkybox extends Behaviour {
|
|
|
316
303
|
}
|
|
317
304
|
|
|
318
305
|
if (debug) console.log("Loading skybox: " + url);
|
|
319
|
-
const loadingTask = this._loader.loadAsync(url)
|
|
306
|
+
const loadingTask = this._loader.loadAsync(url).catch(_err => {
|
|
307
|
+
console.warn("RemoteSkybox: Failed to load texture from url:", url);
|
|
308
|
+
return null;
|
|
309
|
+
});
|
|
320
310
|
registerLoadedTexture(name, loadingTask);
|
|
321
311
|
const envMap = await loadingTask;
|
|
322
312
|
return envMap;
|
|
@@ -351,6 +341,7 @@ export class RemoteSkybox extends Behaviour {
|
|
|
351
341
|
}
|
|
352
342
|
|
|
353
343
|
|
|
344
|
+
private readonly validProtocols = ["file:", "blob:", "data:"];
|
|
354
345
|
private readonly validTextureTypes = [".ktx2", ".hdr", ".exr", ".jpg", ".jpeg", ".png"];
|
|
355
346
|
|
|
356
347
|
private isRemoteTexture(url: string): boolean {
|
|
@@ -361,6 +352,9 @@ export class RemoteSkybox extends Behaviour {
|
|
|
361
352
|
for (const type of this.validTextureTypes) {
|
|
362
353
|
if (url.endsWith(type)) return true;
|
|
363
354
|
}
|
|
355
|
+
for (const protocol of this.validProtocols) {
|
|
356
|
+
if (url.startsWith(protocol)) return true;
|
|
357
|
+
}
|
|
364
358
|
return false;
|
|
365
359
|
}
|
|
366
360
|
|