@react-three/drei 9.74.0 → 9.74.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,34 +1,31 @@
1
1
  import * as THREE from 'three';
2
2
  import * as React from 'react';
3
3
  import { ReactThreeFiber } from '@react-three/fiber';
4
+ export declare type PortalMaterialType = ReactThreeFiber.ShaderMaterialProps & {
5
+ resolution: ReactThreeFiber.Vector2;
6
+ blur: number;
7
+ size: number;
8
+ sdf: THREE.Texture;
9
+ map: THREE.Texture;
10
+ };
4
11
  declare global {
5
12
  namespace JSX {
6
13
  interface IntrinsicElements {
7
- portalMaterial: ReactThreeFiber.ShaderMaterialProps & {
8
- resolution: ReactThreeFiber.Vector2;
9
- };
14
+ portalMaterialImpl: PortalMaterialType;
10
15
  }
11
16
  }
12
17
  }
13
- export declare type PortalProps = JSX.IntrinsicElements['mesh'];
14
- export declare const MeshPortalMaterial: React.ForwardRefExoticComponent<Pick<Omit<ReactThreeFiber.ExtendedColors<ReactThreeFiber.Overwrite<Partial<THREE.Mesh<THREE.BufferGeometry, THREE.Material | THREE.Material[]>>, ReactThreeFiber.NodeProps<THREE.Mesh<THREE.BufferGeometry, THREE.Material | THREE.Material[]>, typeof THREE.Mesh>>>, ReactThreeFiber.NonFunctionKeys<{
15
- position?: ReactThreeFiber.Vector3 | undefined;
16
- up?: ReactThreeFiber.Vector3 | undefined;
17
- scale?: ReactThreeFiber.Vector3 | undefined;
18
- rotation?: ReactThreeFiber.Euler | undefined;
19
- matrix?: ReactThreeFiber.Matrix4 | undefined;
20
- quaternion?: ReactThreeFiber.Quaternion | undefined;
21
- layers?: ReactThreeFiber.Layers | undefined;
22
- dispose?: (() => void) | null | undefined;
23
- }>> & {
24
- position?: ReactThreeFiber.Vector3 | undefined;
25
- up?: ReactThreeFiber.Vector3 | undefined;
26
- scale?: ReactThreeFiber.Vector3 | undefined;
27
- rotation?: ReactThreeFiber.Euler | undefined;
28
- matrix?: ReactThreeFiber.Matrix4 | undefined;
29
- quaternion?: ReactThreeFiber.Quaternion | undefined;
30
- layers?: ReactThreeFiber.Layers | undefined;
31
- dispose?: (() => void) | null | undefined;
32
- } & import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers, "visible" | "attach" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "removeFromParent" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getObjectsByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "material" | "geometry" | "morphTargetInfluences" | "morphTargetDictionary" | "isMesh" | "updateMorphTargets" | "getVertexPosition"> & React.RefAttributes<typeof THREE.ShaderMaterial & {
33
- key: string;
34
- }>>;
18
+ export declare type PortalProps = JSX.IntrinsicElements['portalMaterialImpl'] & {
19
+ blur?: number;
20
+ resolution?: number;
21
+ };
22
+ export declare const MeshPortalMaterial: React.ForwardRefExoticComponent<Pick<ReactThreeFiber.ExtendedColors<ReactThreeFiber.Overwrite<Partial<THREE.ShaderMaterial>, ReactThreeFiber.NodeProps<THREE.ShaderMaterial, [THREE.ShaderMaterialParameters]>>> & {
23
+ resolution: ReactThreeFiber.Vector2;
24
+ blur: number;
25
+ size: number;
26
+ sdf: THREE.Texture;
27
+ map: THREE.Texture;
28
+ } & {
29
+ blur?: number | undefined;
30
+ resolution?: number | undefined;
31
+ }, "attach" | "args" | "children" | "key" | "onUpdate" | "size" | "map" | keyof THREE.ShaderMaterial | "blur" | "resolution" | "sdf"> & React.RefAttributes<PortalMaterialType>>;
@@ -2,49 +2,98 @@ import _extends from '@babel/runtime/helpers/esm/extends';
2
2
  import * as THREE from 'three';
3
3
  import * as React from 'react';
4
4
  import { extend, useThree, useFrame } from '@react-three/fiber';
5
+ import { useFBO } from './useFBO.js';
5
6
  import { RenderTexture } from './RenderTexture.js';
6
7
  import { shaderMaterial } from './shaderMaterial.js';
8
+ import { FullScreenQuad } from 'three-stdlib';
7
9
 
8
- const PortalMaterial = shaderMaterial({
10
+ const PortalMaterialImpl = shaderMaterial({
11
+ blur: 0,
9
12
  map: null,
13
+ sdf: null,
14
+ size: 0,
10
15
  resolution: new THREE.Vector2()
11
- }, `void main() {
16
+ }, `varying vec2 vUv;
17
+ void main() {
12
18
  gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
13
- }`, `uniform sampler2D map;
19
+ vUv = uv;
20
+ }`, `uniform sampler2D sdf;
21
+ uniform sampler2D map;
22
+ uniform float blur;
23
+ uniform float size;
24
+ uniform float time;
14
25
  uniform vec2 resolution;
26
+ varying vec2 vUv;
27
+ #include <packing>
15
28
  void main() {
16
29
  vec2 uv = gl_FragCoord.xy / resolution.xy;
17
30
  vec4 t = texture2D(map, uv);
18
- gl_FragColor = texture2D(map, uv);
31
+ float k = blur;
32
+ float d = texture2D(sdf, vUv).r/size;
33
+ float alpha = 1.0 - smoothstep(0.0, 1.0, clamp(d/k + 1.0, 0.0, 1.0));
34
+ gl_FragColor = vec4(t.rgb, blur == 0.0 ? t.a : t.a * alpha);
19
35
  #include <tonemapping_fragment>
20
36
  #include <encodings_fragment>
21
37
  }`);
22
38
  const MeshPortalMaterial = /*#__PURE__*/React.forwardRef(({
23
39
  children,
40
+ resolution = 512,
24
41
  ...props
25
42
  }, fref) => {
26
43
  extend({
27
- PortalMaterial
44
+ PortalMaterialImpl
28
45
  });
29
46
  const ref = React.useRef(null);
30
47
  const group = React.useRef(null);
31
48
  const {
49
+ gl,
32
50
  size,
33
51
  events,
34
52
  viewport
35
53
  } = useThree();
36
- useFrame(() => {
54
+ const maskRenderTarget = useFBO(resolution, resolution);
55
+ const [imageMaterial] = React.useState(() => new THREE.MeshBasicMaterial());
56
+ React.useLayoutEffect(() => {
37
57
  var _ref$current;
38
58
 
39
- let parent = (_ref$current = ref.current) == null ? void 0 : _ref$current.__r3f.parent;
59
+ let mask = (_ref$current = ref.current) == null ? void 0 : _ref$current.__r3f.parent;
60
+ if (!mask) return;
61
+ const boundingBox = new THREE.Box3().setFromBufferAttribute(mask.geometry.attributes.position);
62
+ const orthoCam = new THREE.OrthographicCamera(boundingBox.min.x * (1 + 2 / resolution), boundingBox.max.x * (1 + 2 / resolution), boundingBox.max.y * (1 + 2 / resolution), boundingBox.min.y * (1 + 2 / resolution), 0.1, 1000);
63
+ orthoCam.position.set(0, 0, 1);
64
+ orthoCam.lookAt(0, 0, 0);
65
+ const oldMaterial = mask.material;
66
+ mask.material = imageMaterial;
67
+ gl.setRenderTarget(maskRenderTarget);
68
+ gl.render(mask, orthoCam);
69
+ const sg = makeSDFGenerator(resolution, resolution, gl);
70
+ const sdf = sg(maskRenderTarget.texture);
71
+ const readSdf = new Float32Array(resolution * resolution);
72
+ gl.readRenderTargetPixels(sdf, 0, 0, resolution, resolution, readSdf); // Get smallest value in sdf
73
+
74
+ let min = Infinity;
75
+
76
+ for (let i = 0; i < readSdf.length; i++) {
77
+ if (readSdf[i] < min) min = readSdf[i];
78
+ }
79
+
80
+ min = -min;
81
+ ref.current.size = min;
82
+ ref.current.sdf = sdf.texture;
83
+ mask.material = oldMaterial;
84
+ gl.setRenderTarget(null);
85
+ }, [resolution]);
86
+ useFrame(() => {
87
+ var _ref$current2;
88
+
89
+ let parent = (_ref$current2 = ref.current) == null ? void 0 : _ref$current2.__r3f.parent;
40
90
 
41
91
  if (parent) {
42
92
  group.current.matrix.copy(parent.matrixWorld);
43
93
  }
44
94
  });
45
95
  React.useImperativeHandle(fref, () => ref.current);
46
- return /*#__PURE__*/React.createElement("portalMaterial", _extends({
47
- // @ts-ignore
96
+ return /*#__PURE__*/React.createElement("portalMaterialImpl", _extends({
48
97
  ref: ref,
49
98
  resolution: [size.width * viewport.dpr, size.height * viewport.dpr],
50
99
  toneMapped: false
@@ -52,10 +101,263 @@ const MeshPortalMaterial = /*#__PURE__*/React.forwardRef(({
52
101
  attach: "map",
53
102
  compute: events.compute
54
103
  }, /*#__PURE__*/React.createElement("group", {
55
- onPointerOver: () => null,
56
104
  matrixAutoUpdate: false,
57
105
  ref: group
58
106
  }, children)));
59
107
  });
60
108
 
109
+ const makeSDFGenerator = (clientWidth, clientHeight, renderer) => {
110
+ let finalTarget = new THREE.WebGLRenderTarget(clientWidth, clientHeight, {
111
+ minFilter: THREE.LinearMipmapLinearFilter,
112
+ magFilter: THREE.LinearFilter,
113
+ type: THREE.FloatType,
114
+ format: THREE.RedFormat,
115
+ generateMipmaps: true
116
+ });
117
+ let outsideRenderTarget = new THREE.WebGLRenderTarget(clientWidth, clientHeight, {
118
+ minFilter: THREE.NearestFilter,
119
+ magFilter: THREE.NearestFilter
120
+ });
121
+ let insideRenderTarget = new THREE.WebGLRenderTarget(clientWidth, clientHeight, {
122
+ minFilter: THREE.NearestFilter,
123
+ magFilter: THREE.NearestFilter
124
+ });
125
+ let outsideRenderTarget2 = new THREE.WebGLRenderTarget(clientWidth, clientHeight, {
126
+ minFilter: THREE.NearestFilter,
127
+ magFilter: THREE.NearestFilter
128
+ });
129
+ let insideRenderTarget2 = new THREE.WebGLRenderTarget(clientWidth, clientHeight, {
130
+ minFilter: THREE.NearestFilter,
131
+ magFilter: THREE.NearestFilter
132
+ });
133
+ let outsideRenderTargetFinal = new THREE.WebGLRenderTarget(clientWidth, clientHeight, {
134
+ minFilter: THREE.NearestFilter,
135
+ magFilter: THREE.NearestFilter,
136
+ type: THREE.FloatType,
137
+ format: THREE.RedFormat
138
+ });
139
+ let insideRenderTargetFinal = new THREE.WebGLRenderTarget(clientWidth, clientHeight, {
140
+ minFilter: THREE.NearestFilter,
141
+ magFilter: THREE.NearestFilter,
142
+ type: THREE.FloatType,
143
+ format: THREE.RedFormat
144
+ });
145
+ const uvRender = new FullScreenQuad(new THREE.ShaderMaterial({
146
+ uniforms: {
147
+ tex: {
148
+ value: null
149
+ }
150
+ },
151
+ vertexShader:
152
+ /*glsl*/
153
+ `
154
+ varying vec2 vUv;
155
+ void main() {
156
+ vUv = uv;
157
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
158
+ }`,
159
+ fragmentShader:
160
+ /*glsl*/
161
+ `
162
+ uniform sampler2D tex;
163
+ varying vec2 vUv;
164
+ #include <packing>
165
+ void main() {
166
+ gl_FragColor = pack2HalfToRGBA(vUv * (round(texture2D(tex, vUv).x)));
167
+ }`
168
+ }));
169
+ const uvRenderInside = new FullScreenQuad(new THREE.ShaderMaterial({
170
+ uniforms: {
171
+ tex: {
172
+ value: null
173
+ }
174
+ },
175
+ vertexShader:
176
+ /*glsl*/
177
+ `
178
+ varying vec2 vUv;
179
+ void main() {
180
+ vUv = uv;
181
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
182
+ }`,
183
+ fragmentShader:
184
+ /*glsl*/
185
+ `
186
+ uniform sampler2D tex;
187
+ varying vec2 vUv;
188
+ #include <packing>
189
+ void main() {
190
+ gl_FragColor = pack2HalfToRGBA(vUv * (1.0 - round(texture2D(tex, vUv).x)));
191
+ }`
192
+ }));
193
+ const jumpFloodRender = new FullScreenQuad(new THREE.ShaderMaterial({
194
+ uniforms: {
195
+ tex: {
196
+ value: null
197
+ },
198
+ offset: {
199
+ value: 0.0
200
+ },
201
+ level: {
202
+ value: 0.0
203
+ },
204
+ maxSteps: {
205
+ value: 0.0
206
+ }
207
+ },
208
+ vertexShader:
209
+ /*glsl*/
210
+ `
211
+ varying vec2 vUv;
212
+ void main() {
213
+ vUv = uv;
214
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
215
+ }`,
216
+ fragmentShader:
217
+ /*glsl*/
218
+ `
219
+ varying vec2 vUv;
220
+ uniform sampler2D tex;
221
+ uniform float offset;
222
+ uniform float level;
223
+ uniform float maxSteps;
224
+ #include <packing>
225
+ void main() {
226
+ float closestDist = 9999999.9;
227
+ vec2 closestPos = vec2(0.0);
228
+ for (float x = -1.0; x <= 1.0; x += 1.0) {
229
+ for (float y = -1.0; y <= 1.0; y += 1.0) {
230
+ vec2 voffset = vUv;
231
+ voffset += vec2(x, y) * vec2(${1 / clientWidth}, ${1 / clientHeight}) * offset;
232
+ vec2 pos = unpackRGBATo2Half(texture2D(tex, voffset));
233
+ float dist = distance(pos.xy, vUv);
234
+ if(pos.x != 0.0 && pos.y != 0.0 && dist < closestDist) {
235
+ closestDist = dist;
236
+ closestPos = pos;
237
+ }
238
+ }
239
+ }
240
+ gl_FragColor = pack2HalfToRGBA(closestPos);
241
+ }`
242
+ }));
243
+ const distanceFieldRender = new FullScreenQuad(new THREE.ShaderMaterial({
244
+ uniforms: {
245
+ tex: {
246
+ value: null
247
+ },
248
+ size: {
249
+ value: new THREE.Vector2(clientWidth, clientHeight)
250
+ }
251
+ },
252
+ vertexShader:
253
+ /*glsl*/
254
+ `
255
+ varying vec2 vUv;
256
+ void main() {
257
+ vUv = uv;
258
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
259
+ }`,
260
+ fragmentShader:
261
+ /*glsl*/
262
+ `
263
+ varying vec2 vUv;
264
+ uniform sampler2D tex;
265
+ uniform vec2 size;
266
+ #include <packing>
267
+ void main() {
268
+ gl_FragColor = vec4(distance(size * unpackRGBATo2Half(texture2D(tex, vUv)), size * vUv), 0.0, 0.0, 0.0);
269
+ }`
270
+ }));
271
+ const compositeRender = new FullScreenQuad(new THREE.ShaderMaterial({
272
+ uniforms: {
273
+ inside: {
274
+ value: insideRenderTargetFinal.texture
275
+ },
276
+ outside: {
277
+ value: outsideRenderTargetFinal.texture
278
+ },
279
+ tex: {
280
+ value: null
281
+ }
282
+ },
283
+ vertexShader:
284
+ /*glsl*/
285
+ `
286
+ varying vec2 vUv;
287
+ void main() {
288
+ vUv = uv;
289
+ gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );
290
+ }`,
291
+ fragmentShader:
292
+ /*glsl*/
293
+ `
294
+ varying vec2 vUv;
295
+ uniform sampler2D inside;
296
+ uniform sampler2D outside;
297
+ uniform sampler2D tex;
298
+ #include <packing>
299
+ void main() {
300
+ float i = texture2D(inside, vUv).x;
301
+ float o =texture2D(outside, vUv).x;
302
+ if (texture2D(tex, vUv).x == 0.0) {
303
+ gl_FragColor = vec4(o, 0.0, 0.0, 0.0);
304
+ } else {
305
+ gl_FragColor = vec4(-i, 0.0, 0.0, 0.0);
306
+ }
307
+ }`
308
+ }));
309
+ return image => {
310
+ let ft = finalTarget;
311
+ image.minFilter = THREE.NearestFilter;
312
+ image.magFilter = THREE.NearestFilter;
313
+ uvRender.material.uniforms.tex.value = image;
314
+ renderer.setRenderTarget(outsideRenderTarget);
315
+ uvRender.render(renderer);
316
+ const passes = Math.ceil(Math.log(Math.max(clientWidth, clientHeight)) / Math.log(2.0));
317
+ let lastTarget = outsideRenderTarget;
318
+ let target = null;
319
+
320
+ for (let i = 0; i < passes; i++) {
321
+ const offset = Math.pow(2, passes - i - 1);
322
+ target = lastTarget === outsideRenderTarget ? outsideRenderTarget2 : outsideRenderTarget;
323
+ jumpFloodRender.material.uniforms.level.value = i;
324
+ jumpFloodRender.material.uniforms.maxSteps.value = passes;
325
+ jumpFloodRender.material.uniforms.offset.value = offset;
326
+ jumpFloodRender.material.uniforms.tex.value = lastTarget.texture;
327
+ renderer.setRenderTarget(target);
328
+ jumpFloodRender.render(renderer);
329
+ lastTarget = target;
330
+ }
331
+
332
+ renderer.setRenderTarget(outsideRenderTargetFinal);
333
+ distanceFieldRender.material.uniforms.tex.value = target.texture;
334
+ distanceFieldRender.render(renderer);
335
+ uvRenderInside.material.uniforms.tex.value = image;
336
+ renderer.setRenderTarget(insideRenderTarget);
337
+ uvRenderInside.render(renderer);
338
+ lastTarget = insideRenderTarget;
339
+
340
+ for (let i = 0; i < passes; i++) {
341
+ const offset = Math.pow(2, passes - i - 1);
342
+ target = lastTarget === insideRenderTarget ? insideRenderTarget2 : insideRenderTarget;
343
+ jumpFloodRender.material.uniforms.level.value = i;
344
+ jumpFloodRender.material.uniforms.maxSteps.value = passes;
345
+ jumpFloodRender.material.uniforms.offset.value = offset;
346
+ jumpFloodRender.material.uniforms.tex.value = lastTarget.texture;
347
+ renderer.setRenderTarget(target);
348
+ jumpFloodRender.render(renderer);
349
+ lastTarget = target;
350
+ }
351
+
352
+ renderer.setRenderTarget(insideRenderTargetFinal);
353
+ distanceFieldRender.material.uniforms.tex.value = target.texture;
354
+ distanceFieldRender.render(renderer);
355
+ renderer.setRenderTarget(ft);
356
+ compositeRender.material.uniforms.tex.value = image;
357
+ compositeRender.render(renderer);
358
+ renderer.setRenderTarget(null);
359
+ return ft;
360
+ };
361
+ };
362
+
61
363
  export { MeshPortalMaterial };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("three"),t=require("react"),n=require("@react-three/fiber"),a=require("./useFBO.cjs.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var c=u(e),s=i(r),o=i(t);const l=o.forwardRef((({children:e,compute:r,width:t,height:u,samples:i=8,renderPriority:l=0,eventPriority:d=0,frames:p=1/0,stencilBuffer:m=!1,depthBuffer:b=!0,generateMipmaps:v=!1,...g},h)=>{const{size:y,viewport:j}=n.useThree(),O=a.useFBO((t||y.width)*j.dpr,(u||y.height)*j.dpr,{samples:i,stencilBuffer:m,depthBuffer:b,generateMipmaps:v}),[x]=o.useState((()=>new s.Scene)),P=o.useCallback(((e,r,t)=>{var n,a;let u=null==(n=O.texture)?void 0:n.__r3f.parent;for(;u&&!(u instanceof s.Object3D);)u=u.__r3f.parent;if(!u)return!1;t.raycaster.camera||t.events.compute(e,t,null==(a=t.previousRoot)?void 0:a.getState());const[i]=t.raycaster.intersectObject(u);if(!i)return!1;const c=i.uv;if(!c)return!1;r.raycaster.setFromCamera(r.pointer.set(2*c.x-1,2*c.y-1),r.camera)}),[]);return o.useImperativeHandle(h,(()=>O.texture),[O]),o.createElement(o.Fragment,null,n.createPortal(o.createElement(f,{renderPriority:l,frames:p,fbo:O},e),x,{events:{compute:r||P,priority:d}}),o.createElement("primitive",c.default({object:O.texture},g)))}));function f({frames:e,renderPriority:r,children:t,fbo:a}){let u=0;return n.useFrame((r=>{(e===1/0||u<e)&&(r.gl.setRenderTarget(a),r.gl.render(r.scene,r.camera),r.gl.setRenderTarget(null),u++)}),r),o.createElement(o.Fragment,null,t)}exports.RenderTexture=l;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("three"),t=require("react"),n=require("@react-three/fiber"),a=require("./useFBO.cjs.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var c=u(e),s=i(r),o=i(t);const l=o.forwardRef((({children:e,compute:r,width:t,height:u,samples:i=8,renderPriority:l=0,eventPriority:p=0,frames:d=1/0,stencilBuffer:m=!1,depthBuffer:b=!0,generateMipmaps:v=!1,...g},h)=>{const{size:y,viewport:j}=n.useThree(),O=a.useFBO((t||y.width)*j.dpr,(u||y.height)*j.dpr,{samples:i,stencilBuffer:m,depthBuffer:b,generateMipmaps:v}),[P]=o.useState((()=>new s.Scene)),x=o.useCallback(((e,r,t)=>{var n,a;let u=null==(n=O.texture)?void 0:n.__r3f.parent;for(;u&&!(u instanceof s.Object3D);)u=u.__r3f.parent;if(!u)return!1;t.raycaster.camera||t.events.compute(e,t,null==(a=t.previousRoot)?void 0:a.getState());const[i]=t.raycaster.intersectObject(u);if(!i)return!1;const c=i.uv;if(!c)return!1;r.raycaster.setFromCamera(r.pointer.set(2*c.x-1,2*c.y-1),r.camera)}),[]);return o.useImperativeHandle(h,(()=>O.texture),[O]),o.createElement(o.Fragment,null,n.createPortal(o.createElement(f,{renderPriority:l,frames:d,fbo:O},e,o.createElement("group",{onPointerOver:()=>null})),P,{events:{compute:r||x,priority:p}}),o.createElement("primitive",c.default({object:O.texture},g)))}));function f({frames:e,renderPriority:r,children:t,fbo:a}){let u=0;return n.useFrame((r=>{(e===1/0||u<e)&&(r.gl.setRenderTarget(a),r.gl.render(r.scene,r.camera),r.gl.setRenderTarget(null),u++)}),r),o.createElement(o.Fragment,null,t)}exports.RenderTexture=l;
@@ -57,7 +57,9 @@ const RenderTexture = /*#__PURE__*/React.forwardRef(({
57
57
  renderPriority: renderPriority,
58
58
  frames: frames,
59
59
  fbo: fbo
60
- }, children), vScene, {
60
+ }, children, /*#__PURE__*/React.createElement("group", {
61
+ onPointerOver: () => null
62
+ })), vScene, {
61
63
  events: {
62
64
  compute: compute || uvCompute,
63
65
  priority: eventPriority
package/core/index.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./ScreenSpace.cjs.js"),s=require("./QuadraticBezierLine.cjs.js"),t=require("./CubicBezierLine.cjs.js"),o=require("./CatmullRomLine.cjs.js"),i=require("./Line.cjs.js"),a=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),c=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),p=require("./Image.cjs.js"),x=require("./Edges.cjs.js"),l=require("./Trail.cjs.js"),m=require("./Sampler.cjs.js"),q=require("./ComputedAttribute.cjs.js"),d=require("./Clone.cjs.js"),h=require("./MarchingCubes.cjs.js"),C=require("./Decal.cjs.js"),M=require("./Svg.cjs.js"),S=require("./Gltf.cjs.js"),f=require("./AsciiRenderer.cjs.js"),T=require("./OrthographicCamera.cjs.js"),P=require("./PerspectiveCamera.cjs.js"),b=require("./CubeCamera.cjs.js"),B=require("./DeviceOrientationControls.cjs.js"),g=require("./FlyControls.cjs.js"),v=require("./MapControls.cjs.js"),F=require("./OrbitControls.cjs.js"),L=require("./TrackballControls.cjs.js"),A=require("./ArcballControls.cjs.js"),k=require("./TransformControls.cjs.js"),D=require("./PointerLockControls.cjs.js"),E=require("./FirstPersonControls.cjs.js"),R=require("./CameraControls.cjs.js"),G=require("./FaceControls.cjs.js"),w=require("./GizmoHelper.cjs.js"),z=require("./GizmoViewcube.cjs.js"),O=require("./GizmoViewport.cjs.js"),I=require("./Grid.cjs.js"),y=require("./useCubeTexture.cjs.js"),H=require("./useFBX.cjs.js"),V=require("./useGLTF.cjs.js"),W=require("./useKTX2.cjs.js"),Q=require("./useProgress.cjs.js"),X=require("./useTexture.cjs.js"),K=require("./useVideoTexture.cjs.js"),U=require("./useFont.cjs.js"),N=require("./Stats.cjs.js"),_=require("./useDepthBuffer.cjs.js"),J=require("./useAspect.cjs.js"),Y=require("./useCamera.cjs.js"),Z=require("./useDetectGPU.cjs.js"),$=require("./useHelper.cjs.js"),ee=require("./useBVH.cjs.js"),re=require("./useContextBridge.cjs.js"),se=require("./useAnimations.cjs.js"),te=require("./useFBO.cjs.js"),oe=require("./useIntersect.cjs.js"),ie=require("./useBoxProjectedEnv.cjs.js"),ae=require("./BBAnchor.cjs.js"),ue=require("./useTrailTexture.cjs.js"),ce=require("./useCubeCamera.cjs.js"),ne=require("./Example.cjs.js"),je=require("./SpriteAnimator.cjs.js"),pe=require("./FaceLandmarker.cjs.js"),xe=require("./CurveModifier.cjs.js"),le=require("./MeshDistortMaterial.cjs.js"),me=require("./MeshWobbleMaterial.cjs.js"),qe=require("./MeshReflectorMaterial.cjs.js"),de=require("./MeshRefractionMaterial.cjs.js"),he=require("./MeshTransmissionMaterial.cjs.js"),Ce=require("./MeshDiscardMaterial.cjs.js"),Me=require("./PointMaterial.cjs.js"),Se=require("./shaderMaterial.cjs.js"),fe=require("./softShadows.cjs.js"),Te=require("./shapes.cjs.js"),Pe=require("./Facemesh.cjs.js"),be=require("./RoundedBox.cjs.js"),Be=require("./ScreenQuad.cjs.js"),ge=require("./Center.cjs.js"),ve=require("./Resize.cjs.js"),Fe=require("./Bounds.cjs.js"),Le=require("./CameraShake.cjs.js"),Ae=require("./Float.cjs.js"),ke=require("./Stage.cjs.js"),De=require("./Backdrop.cjs.js"),Ee=require("./Shadow.cjs.js"),Re=require("./Caustics.cjs.js"),Ge=require("./ContactShadows.cjs.js"),we=require("./AccumulativeShadows.cjs.js"),ze=require("./Reflector.cjs.js"),Oe=require("./SpotLight.cjs.js"),Ie=require("./Environment.cjs.js"),ye=require("./Lightformer.cjs.js"),He=require("./Sky.cjs.js"),Ve=require("./Stars.cjs.js"),We=require("./Cloud.cjs.js"),Qe=require("./Sparkles.cjs.js"),Xe=require("./useEnvironment.cjs.js"),Ke=require("./useMatcapTexture.cjs.js"),Ue=require("./useNormalTexture.cjs.js"),Ne=require("./Wireframe.cjs.js"),_e=require("./Points.cjs.js"),Je=require("./Instances.cjs.js"),Ye=require("./Segments.cjs.js"),Ze=require("./Detailed.cjs.js"),$e=require("./Preload.cjs.js"),er=require("./BakeShadows.cjs.js"),rr=require("./meshBounds.cjs.js"),sr=require("./AdaptiveDpr.cjs.js"),tr=require("./AdaptiveEvents.cjs.js"),or=require("./PerformanceMonitor.cjs.js"),ir=require("./RenderTexture.cjs.js"),ar=require("./Mask.cjs.js"),ur=require("./Hud.cjs.js"),cr=require("./MeshPortalMaterial.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("camera-controls"),require("maath"),require("three/src/math/MathUtils"),require("@mediapipe/tasks-vision"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../materials/DiscardMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("../materials/WireframeMaterial.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.ScreenSpace=r.ScreenSpace,exports.QuadraticBezierLine=s.QuadraticBezierLine,exports.CubicBezierLine=t.CubicBezierLine,exports.CatmullRomLine=o.CatmullRomLine,exports.Line=i.Line,exports.PositionalAudio=a.PositionalAudio,exports.Text=u.Text,exports.Text3D=c.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=p.Image,exports.Edges=x.Edges,exports.Trail=l.Trail,exports.useTrail=l.useTrail,exports.Sampler=m.Sampler,exports.useSurfaceSampler=m.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=d.Clone,exports.MarchingCube=h.MarchingCube,exports.MarchingCubes=h.MarchingCubes,exports.MarchingPlane=h.MarchingPlane,exports.Decal=C.Decal,exports.Svg=M.Svg,exports.Gltf=S.Gltf,exports.AsciiRenderer=f.AsciiRenderer,exports.OrthographicCamera=T.OrthographicCamera,exports.PerspectiveCamera=P.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=B.DeviceOrientationControls,exports.FlyControls=g.FlyControls,exports.MapControls=v.MapControls,exports.OrbitControls=F.OrbitControls,exports.TrackballControls=L.TrackballControls,exports.ArcballControls=A.ArcballControls,exports.TransformControls=k.TransformControls,exports.PointerLockControls=D.PointerLockControls,exports.FirstPersonControls=E.FirstPersonControls,exports.CameraControls=R.CameraControls,exports.FaceControls=G.FaceControls,exports.useFaceControls=G.useFaceControls,exports.GizmoHelper=w.GizmoHelper,exports.useGizmoContext=w.useGizmoContext,exports.GizmoViewcube=z.GizmoViewcube,exports.GizmoViewport=O.GizmoViewport,exports.Grid=I.Grid,exports.useCubeTexture=y.useCubeTexture,exports.useFBX=H.useFBX,exports.useGLTF=V.useGLTF,exports.useKTX2=W.useKTX2,exports.useProgress=Q.useProgress,exports.IsObject=X.IsObject,exports.useTexture=X.useTexture,exports.useVideoTexture=K.useVideoTexture,exports.useFont=U.useFont,exports.Stats=N.Stats,exports.useDepthBuffer=_.useDepthBuffer,exports.useAspect=J.useAspect,exports.useCamera=Y.useCamera,exports.useDetectGPU=Z.useDetectGPU,exports.useHelper=$.useHelper,exports.Bvh=ee.Bvh,exports.useBVH=ee.useBVH,exports.useContextBridge=re.useContextBridge,exports.useAnimations=se.useAnimations,exports.useFBO=te.useFBO,exports.useIntersect=oe.useIntersect,exports.useBoxProjectedEnv=ie.useBoxProjectedEnv,exports.BBAnchor=ae.BBAnchor,exports.useTrailTexture=ue.useTrailTexture,exports.useCubeCamera=ce.useCubeCamera,exports.Example=ne.Example,exports.SpriteAnimator=je.SpriteAnimator,exports.FaceLandmarker=pe.FaceLandmarker,exports.FaceLandmarkerDefaults=pe.FaceLandmarkerDefaults,exports.useFaceLandmarker=pe.useFaceLandmarker,exports.CurveModifier=xe.CurveModifier,exports.MeshDistortMaterial=le.MeshDistortMaterial,exports.MeshWobbleMaterial=me.MeshWobbleMaterial,exports.MeshReflectorMaterial=qe.MeshReflectorMaterial,exports.MeshRefractionMaterial=de.MeshRefractionMaterial,exports.MeshTransmissionMaterial=he.MeshTransmissionMaterial,exports.MeshDiscardMaterial=Ce.MeshDiscardMaterial,exports.PointMaterial=Me.PointMaterial,exports.PointMaterialImpl=Me.PointMaterialImpl,exports.shaderMaterial=Se.shaderMaterial,exports.SoftShadows=fe.SoftShadows,exports.Box=Te.Box,exports.Capsule=Te.Capsule,exports.Circle=Te.Circle,exports.Cone=Te.Cone,exports.Cylinder=Te.Cylinder,exports.Dodecahedron=Te.Dodecahedron,exports.Extrude=Te.Extrude,exports.Icosahedron=Te.Icosahedron,exports.Lathe=Te.Lathe,exports.Octahedron=Te.Octahedron,exports.Plane=Te.Plane,exports.Polyhedron=Te.Polyhedron,exports.Ring=Te.Ring,exports.Shape=Te.Shape,exports.Sphere=Te.Sphere,exports.Tetrahedron=Te.Tetrahedron,exports.Torus=Te.Torus,exports.TorusKnot=Te.TorusKnot,exports.Tube=Te.Tube,exports.Facemesh=Pe.Facemesh,exports.FacemeshDatas=Pe.FacemeshDatas,exports.FacemeshEye=Pe.FacemeshEye,exports.FacemeshEyeDefaults=Pe.FacemeshEyeDefaults,exports.RoundedBox=be.RoundedBox,exports.ScreenQuad=Be.ScreenQuad,exports.Center=ge.Center,exports.Resize=ve.Resize,exports.Bounds=Fe.Bounds,exports.useBounds=Fe.useBounds,exports.CameraShake=Le.CameraShake,exports.Float=Ae.Float,exports.Stage=ke.Stage,exports.Backdrop=De.Backdrop,exports.Shadow=Ee.Shadow,exports.Caustics=Re.Caustics,exports.ContactShadows=Ge.ContactShadows,exports.AccumulativeShadows=we.AccumulativeShadows,exports.RandomizedLight=we.RandomizedLight,exports.accumulativeContext=we.accumulativeContext,exports.Reflector=ze.Reflector,exports.SpotLight=Oe.SpotLight,exports.SpotLightShadow=Oe.SpotLightShadow,exports.Environment=Ie.Environment,exports.EnvironmentCube=Ie.EnvironmentCube,exports.EnvironmentMap=Ie.EnvironmentMap,exports.EnvironmentPortal=Ie.EnvironmentPortal,exports.Lightformer=ye.Lightformer,exports.Sky=He.Sky,exports.calcPosFromAngles=He.calcPosFromAngles,exports.Stars=Ve.Stars,exports.Cloud=We.Cloud,exports.Sparkles=Qe.Sparkles,exports.useEnvironment=Xe.useEnvironment,exports.useMatcapTexture=Ke.useMatcapTexture,exports.useNormalTexture=Ue.useNormalTexture,exports.Wireframe=Ne.Wireframe,exports.Point=_e.Point,exports.Points=_e.Points,exports.PointsBuffer=_e.PointsBuffer,exports.PositionPoint=_e.PositionPoint,exports.Instance=Je.Instance,exports.Instances=Je.Instances,exports.Merged=Je.Merged,exports.Segment=Ye.Segment,exports.SegmentObject=Ye.SegmentObject,exports.Segments=Ye.Segments,exports.Detailed=Ze.Detailed,exports.Preload=$e.Preload,exports.BakeShadows=er.BakeShadows,exports.meshBounds=rr.meshBounds,exports.AdaptiveDpr=sr.AdaptiveDpr,exports.AdaptiveEvents=tr.AdaptiveEvents,exports.PerformanceMonitor=or.PerformanceMonitor,exports.usePerformanceMonitor=or.usePerformanceMonitor,exports.RenderTexture=ir.RenderTexture,exports.Mask=ar.Mask,exports.useMask=ar.useMask,exports.Hud=ur.Hud,exports.MeshPortalMaterial=cr.MeshPortalMaterial;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./ScreenSpace.cjs.js"),s=require("./QuadraticBezierLine.cjs.js"),t=require("./CubicBezierLine.cjs.js"),o=require("./CatmullRomLine.cjs.js"),i=require("./Line.cjs.js"),a=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),c=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),p=require("./Image.cjs.js"),x=require("./Edges.cjs.js"),l=require("./Trail.cjs.js"),m=require("./Sampler.cjs.js"),q=require("./ComputedAttribute.cjs.js"),d=require("./Clone.cjs.js"),h=require("./MarchingCubes.cjs.js"),C=require("./Decal.cjs.js"),M=require("./Svg.cjs.js"),S=require("./Gltf.cjs.js"),f=require("./AsciiRenderer.cjs.js"),T=require("./OrthographicCamera.cjs.js"),P=require("./PerspectiveCamera.cjs.js"),b=require("./CubeCamera.cjs.js"),B=require("./DeviceOrientationControls.cjs.js"),g=require("./FlyControls.cjs.js"),v=require("./MapControls.cjs.js"),F=require("./OrbitControls.cjs.js"),L=require("./TrackballControls.cjs.js"),A=require("./ArcballControls.cjs.js"),k=require("./TransformControls.cjs.js"),D=require("./PointerLockControls.cjs.js"),E=require("./FirstPersonControls.cjs.js"),R=require("./CameraControls.cjs.js"),G=require("./FaceControls.cjs.js"),w=require("./GizmoHelper.cjs.js"),z=require("./GizmoViewcube.cjs.js"),O=require("./GizmoViewport.cjs.js"),I=require("./Grid.cjs.js"),y=require("./useCubeTexture.cjs.js"),H=require("./useFBX.cjs.js"),V=require("./useGLTF.cjs.js"),W=require("./useKTX2.cjs.js"),Q=require("./useProgress.cjs.js"),X=require("./useTexture.cjs.js"),K=require("./useVideoTexture.cjs.js"),N=require("./useFont.cjs.js"),U=require("./Stats.cjs.js"),_=require("./useDepthBuffer.cjs.js"),J=require("./useAspect.cjs.js"),Y=require("./useCamera.cjs.js"),Z=require("./useDetectGPU.cjs.js"),$=require("./useHelper.cjs.js"),ee=require("./useBVH.cjs.js"),re=require("./useContextBridge.cjs.js"),se=require("./useAnimations.cjs.js"),te=require("./useFBO.cjs.js"),oe=require("./useIntersect.cjs.js"),ie=require("./useBoxProjectedEnv.cjs.js"),ae=require("./BBAnchor.cjs.js"),ue=require("./useTrailTexture.cjs.js"),ce=require("./useCubeCamera.cjs.js"),ne=require("./Example.cjs.js"),je=require("./SpriteAnimator.cjs.js"),pe=require("./FaceLandmarker.cjs.js"),xe=require("./CurveModifier.cjs.js"),le=require("./MeshDistortMaterial.cjs.js"),me=require("./MeshWobbleMaterial.cjs.js"),qe=require("./MeshReflectorMaterial.cjs.js"),de=require("./MeshRefractionMaterial.cjs.js"),he=require("./MeshTransmissionMaterial.cjs.js"),Ce=require("./MeshDiscardMaterial.cjs.js"),Me=require("./PointMaterial.cjs.js"),Se=require("./shaderMaterial.cjs.js"),fe=require("./softShadows.cjs.js"),Te=require("./shapes.cjs.js"),Pe=require("./Facemesh.cjs.js"),be=require("./RoundedBox.cjs.js"),Be=require("./ScreenQuad.cjs.js"),ge=require("./Center.cjs.js"),ve=require("./Resize.cjs.js"),Fe=require("./Bounds.cjs.js"),Le=require("./CameraShake.cjs.js"),Ae=require("./Float.cjs.js"),ke=require("./Stage.cjs.js"),De=require("./Backdrop.cjs.js"),Ee=require("./Shadow.cjs.js"),Re=require("./Caustics.cjs.js"),Ge=require("./ContactShadows.cjs.js"),we=require("./AccumulativeShadows.cjs.js"),ze=require("./Reflector.cjs.js"),Oe=require("./SpotLight.cjs.js"),Ie=require("./Environment.cjs.js"),ye=require("./Lightformer.cjs.js"),He=require("./Sky.cjs.js"),Ve=require("./Stars.cjs.js"),We=require("./Cloud.cjs.js"),Qe=require("./Sparkles.cjs.js"),Xe=require("./useEnvironment.cjs.js"),Ke=require("./useMatcapTexture.cjs.js"),Ne=require("./useNormalTexture.cjs.js"),Ue=require("./Wireframe.cjs.js"),_e=require("./Points.cjs.js"),Je=require("./Instances.cjs.js"),Ye=require("./Segments.cjs.js"),Ze=require("./Detailed.cjs.js"),$e=require("./Preload.cjs.js"),er=require("./BakeShadows.cjs.js"),rr=require("./meshBounds.cjs.js"),sr=require("./AdaptiveDpr.cjs.js"),tr=require("./AdaptiveEvents.cjs.js"),or=require("./PerformanceMonitor.cjs.js"),ir=require("./RenderTexture.cjs.js"),ar=require("./Mask.cjs.js"),ur=require("./Hud.cjs.js"),cr=require("./MeshPortalMaterial.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("camera-controls"),require("maath"),require("@mediapipe/tasks-vision"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../materials/DiscardMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("../materials/WireframeMaterial.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.ScreenSpace=r.ScreenSpace,exports.QuadraticBezierLine=s.QuadraticBezierLine,exports.CubicBezierLine=t.CubicBezierLine,exports.CatmullRomLine=o.CatmullRomLine,exports.Line=i.Line,exports.PositionalAudio=a.PositionalAudio,exports.Text=u.Text,exports.Text3D=c.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=p.Image,exports.Edges=x.Edges,exports.Trail=l.Trail,exports.useTrail=l.useTrail,exports.Sampler=m.Sampler,exports.useSurfaceSampler=m.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=d.Clone,exports.MarchingCube=h.MarchingCube,exports.MarchingCubes=h.MarchingCubes,exports.MarchingPlane=h.MarchingPlane,exports.Decal=C.Decal,exports.Svg=M.Svg,exports.Gltf=S.Gltf,exports.AsciiRenderer=f.AsciiRenderer,exports.OrthographicCamera=T.OrthographicCamera,exports.PerspectiveCamera=P.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=B.DeviceOrientationControls,exports.FlyControls=g.FlyControls,exports.MapControls=v.MapControls,exports.OrbitControls=F.OrbitControls,exports.TrackballControls=L.TrackballControls,exports.ArcballControls=A.ArcballControls,exports.TransformControls=k.TransformControls,exports.PointerLockControls=D.PointerLockControls,exports.FirstPersonControls=E.FirstPersonControls,exports.CameraControls=R.CameraControls,exports.FaceControls=G.FaceControls,exports.useFaceControls=G.useFaceControls,exports.GizmoHelper=w.GizmoHelper,exports.useGizmoContext=w.useGizmoContext,exports.GizmoViewcube=z.GizmoViewcube,exports.GizmoViewport=O.GizmoViewport,exports.Grid=I.Grid,exports.useCubeTexture=y.useCubeTexture,exports.useFBX=H.useFBX,exports.useGLTF=V.useGLTF,exports.useKTX2=W.useKTX2,exports.useProgress=Q.useProgress,exports.IsObject=X.IsObject,exports.useTexture=X.useTexture,exports.useVideoTexture=K.useVideoTexture,exports.useFont=N.useFont,exports.Stats=U.Stats,exports.useDepthBuffer=_.useDepthBuffer,exports.useAspect=J.useAspect,exports.useCamera=Y.useCamera,exports.useDetectGPU=Z.useDetectGPU,exports.useHelper=$.useHelper,exports.Bvh=ee.Bvh,exports.useBVH=ee.useBVH,exports.useContextBridge=re.useContextBridge,exports.useAnimations=se.useAnimations,exports.useFBO=te.useFBO,exports.useIntersect=oe.useIntersect,exports.useBoxProjectedEnv=ie.useBoxProjectedEnv,exports.BBAnchor=ae.BBAnchor,exports.useTrailTexture=ue.useTrailTexture,exports.useCubeCamera=ce.useCubeCamera,exports.Example=ne.Example,exports.SpriteAnimator=je.SpriteAnimator,exports.FaceLandmarker=pe.FaceLandmarker,exports.FaceLandmarkerDefaults=pe.FaceLandmarkerDefaults,exports.useFaceLandmarker=pe.useFaceLandmarker,exports.CurveModifier=xe.CurveModifier,exports.MeshDistortMaterial=le.MeshDistortMaterial,exports.MeshWobbleMaterial=me.MeshWobbleMaterial,exports.MeshReflectorMaterial=qe.MeshReflectorMaterial,exports.MeshRefractionMaterial=de.MeshRefractionMaterial,exports.MeshTransmissionMaterial=he.MeshTransmissionMaterial,exports.MeshDiscardMaterial=Ce.MeshDiscardMaterial,exports.PointMaterial=Me.PointMaterial,exports.PointMaterialImpl=Me.PointMaterialImpl,exports.shaderMaterial=Se.shaderMaterial,exports.SoftShadows=fe.SoftShadows,exports.Box=Te.Box,exports.Capsule=Te.Capsule,exports.Circle=Te.Circle,exports.Cone=Te.Cone,exports.Cylinder=Te.Cylinder,exports.Dodecahedron=Te.Dodecahedron,exports.Extrude=Te.Extrude,exports.Icosahedron=Te.Icosahedron,exports.Lathe=Te.Lathe,exports.Octahedron=Te.Octahedron,exports.Plane=Te.Plane,exports.Polyhedron=Te.Polyhedron,exports.Ring=Te.Ring,exports.Shape=Te.Shape,exports.Sphere=Te.Sphere,exports.Tetrahedron=Te.Tetrahedron,exports.Torus=Te.Torus,exports.TorusKnot=Te.TorusKnot,exports.Tube=Te.Tube,exports.Facemesh=Pe.Facemesh,exports.FacemeshDatas=Pe.FacemeshDatas,exports.FacemeshEye=Pe.FacemeshEye,exports.FacemeshEyeDefaults=Pe.FacemeshEyeDefaults,exports.RoundedBox=be.RoundedBox,exports.ScreenQuad=Be.ScreenQuad,exports.Center=ge.Center,exports.Resize=ve.Resize,exports.Bounds=Fe.Bounds,exports.useBounds=Fe.useBounds,exports.CameraShake=Le.CameraShake,exports.Float=Ae.Float,exports.Stage=ke.Stage,exports.Backdrop=De.Backdrop,exports.Shadow=Ee.Shadow,exports.Caustics=Re.Caustics,exports.ContactShadows=Ge.ContactShadows,exports.AccumulativeShadows=we.AccumulativeShadows,exports.RandomizedLight=we.RandomizedLight,exports.accumulativeContext=we.accumulativeContext,exports.Reflector=ze.Reflector,exports.SpotLight=Oe.SpotLight,exports.SpotLightShadow=Oe.SpotLightShadow,exports.Environment=Ie.Environment,exports.EnvironmentCube=Ie.EnvironmentCube,exports.EnvironmentMap=Ie.EnvironmentMap,exports.EnvironmentPortal=Ie.EnvironmentPortal,exports.Lightformer=ye.Lightformer,exports.Sky=He.Sky,exports.calcPosFromAngles=He.calcPosFromAngles,exports.Stars=Ve.Stars,exports.Cloud=We.Cloud,exports.Sparkles=Qe.Sparkles,exports.useEnvironment=Xe.useEnvironment,exports.useMatcapTexture=Ke.useMatcapTexture,exports.useNormalTexture=Ne.useNormalTexture,exports.Wireframe=Ue.Wireframe,exports.Point=_e.Point,exports.Points=_e.Points,exports.PointsBuffer=_e.PointsBuffer,exports.PositionPoint=_e.PositionPoint,exports.Instance=Je.Instance,exports.Instances=Je.Instances,exports.Merged=Je.Merged,exports.Segment=Ye.Segment,exports.SegmentObject=Ye.SegmentObject,exports.Segments=Ye.Segments,exports.Detailed=Ze.Detailed,exports.Preload=$e.Preload,exports.BakeShadows=er.BakeShadows,exports.meshBounds=rr.meshBounds,exports.AdaptiveDpr=sr.AdaptiveDpr,exports.AdaptiveEvents=tr.AdaptiveEvents,exports.PerformanceMonitor=or.PerformanceMonitor,exports.usePerformanceMonitor=or.usePerformanceMonitor,exports.RenderTexture=ir.RenderTexture,exports.Mask=ar.Mask,exports.useMask=ar.useMask,exports.Hud=ur.Hud,exports.MeshPortalMaterial=cr.MeshPortalMaterial;
package/core/index.js CHANGED
@@ -128,7 +128,6 @@ import 'lodash.pick';
128
128
  import 'lodash.omit';
129
129
  import 'camera-controls';
130
130
  import 'maath';
131
- import 'three/src/math/MathUtils';
132
131
  import '@mediapipe/tasks-vision';
133
132
  import 'zustand';
134
133
  import 'stats.js';