@react-three/drei 9.19.5 → 9.20.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/core/Sampler.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { Color, InstancedMesh, Mesh, Object3D, Vector3 } from 'three';
2
+ import { Color, InstancedBufferAttribute, InstancedMesh, Mesh, Object3D, Vector3 } from 'three';
3
3
  import { GroupProps } from '@react-three/fiber';
4
4
  declare type SamplePayload = {
5
5
  position: Vector3;
@@ -16,6 +16,13 @@ declare type Props = {
16
16
  instances?: React.RefObject<InstancedMesh>;
17
17
  weight?: string;
18
18
  transform?: TransformFn;
19
+ count?: number;
19
20
  };
20
- export declare const Sampler: ({ children, weight, transform, instances, mesh, ...props }: React.PropsWithChildren<Props & GroupProps>) => JSX.Element;
21
+ export interface useSurfaceSamplerProps {
22
+ transform?: TransformFn;
23
+ weight?: string;
24
+ count?: number;
25
+ }
26
+ export declare function useSurfaceSampler(mesh: React.MutableRefObject<Mesh>, count?: number, transform?: TransformFn, weight?: string, instanceMesh?: React.MutableRefObject<InstancedMesh> | null): InstancedBufferAttribute;
27
+ export declare function Sampler({ children, weight, transform, instances, mesh, count, ...props }: React.PropsWithChildren<Props & GroupProps>): JSX.Element;
21
28
  export {};
package/core/Sampler.js CHANGED
@@ -1,29 +1,18 @@
1
1
  import _extends from '@babel/runtime/helpers/esm/extends';
2
2
  import * as React from 'react';
3
3
  import { MeshSurfaceSampler } from 'three-stdlib';
4
- import { Vector3, Color, Object3D } from 'three';
4
+ import { InstancedBufferAttribute, Vector3, Color, Object3D } from 'three';
5
5
 
6
- const Sampler = ({
7
- children,
8
- weight,
9
- transform,
10
- instances,
11
- mesh,
12
- ...props
13
- }) => {
14
- const group = React.useRef(null);
15
- const instancedRef = React.useRef(null);
16
- const meshToSampleRef = React.useRef(null);
6
+ function useSurfaceSampler(mesh, count = 16, transform, weight, instanceMesh) {
7
+ const [buffer, setBuffer] = React.useState(() => {
8
+ const arr = Array.from({
9
+ length: count
10
+ }, () => [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]).flat();
11
+ return new InstancedBufferAttribute(Float32Array.from(arr), 16);
12
+ });
17
13
  React.useEffect(() => {
18
- var _instances$current, _mesh$current;
19
-
20
- instancedRef.current = (_instances$current = instances == null ? void 0 : instances.current) !== null && _instances$current !== void 0 ? _instances$current : group.current.children.find(c => c.hasOwnProperty('instanceMatrix'));
21
- meshToSampleRef.current = (_mesh$current = mesh == null ? void 0 : mesh.current) !== null && _mesh$current !== void 0 ? _mesh$current : group.current.children.find(c => c.type === 'Mesh');
22
- }, [children, mesh == null ? void 0 : mesh.current, instances == null ? void 0 : instances.current]);
23
- React.useEffect(() => {
24
- if (typeof meshToSampleRef.current === 'undefined') return;
25
- if (typeof instancedRef.current === 'undefined') return;
26
- const sampler = new MeshSurfaceSampler(meshToSampleRef.current);
14
+ if (typeof mesh.current === 'undefined') return;
15
+ const sampler = new MeshSurfaceSampler(mesh.current);
27
16
 
28
17
  if (weight) {
29
18
  sampler.setWeightAttribute(weight);
@@ -34,15 +23,15 @@ const Sampler = ({
34
23
  const normal = new Vector3();
35
24
  const color = new Color();
36
25
  const dummy = new Object3D();
37
- meshToSampleRef.current.updateMatrixWorld(true);
26
+ mesh.current.updateMatrixWorld(true);
38
27
 
39
- for (let i = 0; i < instancedRef.current.count; i++) {
28
+ for (let i = 0; i < count; i++) {
40
29
  sampler.sample(position, normal, color);
41
30
 
42
31
  if (typeof transform === 'function') {
43
32
  transform({
44
33
  dummy,
45
- sampledMesh: meshToSampleRef.current,
34
+ sampledMesh: mesh.current,
46
35
  position,
47
36
  normal,
48
37
  color
@@ -52,14 +41,45 @@ const Sampler = ({
52
41
  }
53
42
 
54
43
  dummy.updateMatrix();
55
- instancedRef.current.setMatrixAt(i, dummy.matrix);
44
+
45
+ if (instanceMesh != null && instanceMesh.current) {
46
+ instanceMesh.current.setMatrixAt(i, dummy.matrix);
47
+ }
48
+
49
+ dummy.matrix.toArray(buffer.array, i * 16);
50
+ }
51
+
52
+ if (instanceMesh != null && instanceMesh.current) {
53
+ instanceMesh.current.instanceMatrix.needsUpdate = true;
56
54
  }
57
55
 
58
- instancedRef.current.instanceMatrix.needsUpdate = true;
56
+ buffer.needsUpdate = true;
57
+ setBuffer(buffer.clone());
58
+ }, [mesh, instanceMesh, weight, count, transform]);
59
+ return buffer;
60
+ }
61
+ function Sampler({
62
+ children,
63
+ weight,
64
+ transform,
65
+ instances,
66
+ mesh,
67
+ count = 16,
68
+ ...props
69
+ }) {
70
+ const group = React.useRef(null);
71
+ const instancedRef = React.useRef(null);
72
+ const meshToSampleRef = React.useRef(null);
73
+ React.useEffect(() => {
74
+ var _instances$current, _mesh$current;
75
+
76
+ instancedRef.current = (_instances$current = instances == null ? void 0 : instances.current) !== null && _instances$current !== void 0 ? _instances$current : group.current.children.find(c => c.hasOwnProperty('instanceMatrix'));
77
+ meshToSampleRef.current = (_mesh$current = mesh == null ? void 0 : mesh.current) !== null && _mesh$current !== void 0 ? _mesh$current : group.current.children.find(c => c.type === 'Mesh');
59
78
  }, [children, mesh == null ? void 0 : mesh.current, instances == null ? void 0 : instances.current]);
79
+ useSurfaceSampler(meshToSampleRef, count, transform, weight, instancedRef);
60
80
  return /*#__PURE__*/React.createElement("group", _extends({
61
81
  ref: group
62
82
  }, props), children);
63
- };
83
+ }
64
84
 
65
- export { Sampler };
85
+ export { Sampler, useSurfaceSampler };
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("./QuadraticBezierLine.cjs.js"),s=require("./CubicBezierLine.cjs.js"),t=require("./CatmullRomLine.cjs.js"),o=require("./Line.cjs.js"),i=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),a=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),c=require("./GradientTexture.cjs.js"),j=require("./Image.cjs.js"),p=require("./Edges.cjs.js"),x=require("./Trail.cjs.js"),l=require("./Sampler.cjs.js"),d=require("./ComputedAttribute.cjs.js"),q=require("./Clone.cjs.js"),m=require("./MarchingCubes.cjs.js"),C=require("./OrthographicCamera.cjs.js"),h=require("./PerspectiveCamera.cjs.js"),b=require("./CubeCamera.cjs.js"),M=require("./DeviceOrientationControls.cjs.js"),B=require("./FlyControls.cjs.js"),S=require("./MapControls.cjs.js"),g=require("./OrbitControls.cjs.js"),P=require("./TrackballControls.cjs.js"),T=require("./ArcballControls.cjs.js"),v=require("./TransformControls.cjs.js"),f=require("./PointerLockControls.cjs.js"),A=require("./FirstPersonControls.cjs.js"),L=require("./GizmoHelper.cjs.js"),k=require("./GizmoViewcube.cjs.js"),E=require("./GizmoViewport.cjs.js"),D=require("./useCubeTexture.cjs.js"),G=require("./useFBX.cjs.js"),w=require("./useGLTF.cjs.js"),z=require("./useProgress.cjs.js"),F=require("./useTexture.cjs.js"),R=require("./useKTX2.cjs.js"),O=require("./Stats.cjs.js"),I=require("./useDepthBuffer.cjs.js"),y=require("./useAspect.cjs.js"),H=require("./useCamera.cjs.js"),V=require("./useDetectGPU.cjs.js"),Q=require("./useHelper.cjs.js"),X=require("./useBVH.cjs.js"),K=require("./useContextBridge.cjs.js"),W=require("./useAnimations.cjs.js"),N=require("./useFBO.cjs.js"),U=require("./useIntersect.cjs.js"),_=require("./useBoxProjectedEnv.cjs.js"),J=require("./BBAnchor.cjs.js"),Y=require("./CurveModifier.cjs.js"),Z=require("./MeshDistortMaterial.cjs.js"),$=require("./MeshWobbleMaterial.cjs.js"),ee=require("./MeshReflectorMaterial.cjs.js"),re=require("./PointMaterial.cjs.js"),se=require("./shaderMaterial.cjs.js"),te=require("./softShadows.cjs.js"),oe=require("./shapes.cjs.js"),ie=require("./RoundedBox.cjs.js"),ue=require("./ScreenQuad.cjs.js"),ae=require("./Center.cjs.js"),ne=require("./Bounds.cjs.js"),ce=require("./CameraShake.cjs.js"),je=require("./Float.cjs.js"),pe=require("./Stage.cjs.js"),xe=require("./Backdrop.cjs.js"),le=require("./Shadow.cjs.js"),de=require("./ContactShadows.cjs.js"),qe=require("./AccumulativeShadows.cjs.js"),me=require("./Reflector.cjs.js"),Ce=require("./SpotLight.cjs.js"),he=require("./Environment.cjs.js"),be=require("./Lightformer.cjs.js"),Me=require("./Sky.cjs.js"),Be=require("./Stars.cjs.js"),Se=require("./Cloud.cjs.js"),ge=require("./Sparkles.cjs.js"),Pe=require("./useMatcapTexture.cjs.js"),Te=require("./useNormalTexture.cjs.js"),ve=require("./Points.cjs.js"),fe=require("./Instances.cjs.js"),Ae=require("./Segments.cjs.js"),Le=require("./Detailed.cjs.js"),ke=require("./Preload.cjs.js"),Ee=require("./BakeShadows.cjs.js"),De=require("./meshBounds.cjs.js"),Ge=require("./AdaptiveDpr.cjs.js"),we=require("./AdaptiveEvents.cjs.js"),ze=require("./RenderTexture.cjs.js"),Fe=require("./Mask.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("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("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("../helpers/Position.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.QuadraticBezierLine=r.QuadraticBezierLine,exports.CubicBezierLine=s.CubicBezierLine,exports.CatmullRomLine=t.CatmullRomLine,exports.Line=o.Line,exports.PositionalAudio=i.PositionalAudio,exports.Text=u.Text,exports.Text3D=a.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=c.GradientTexture,exports.Image=j.Image,exports.Edges=p.Edges,exports.Trail=x.Trail,exports.useTrail=x.useTrail,exports.Sampler=l.Sampler,exports.ComputedAttribute=d.ComputedAttribute,exports.Clone=q.Clone,exports.MarchingCube=m.MarchingCube,exports.MarchingCubes=m.MarchingCubes,exports.MarchingPlane=m.MarchingPlane,exports.OrthographicCamera=C.OrthographicCamera,exports.PerspectiveCamera=h.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=M.DeviceOrientationControls,exports.FlyControls=B.FlyControls,exports.MapControls=S.MapControls,exports.OrbitControls=g.OrbitControls,exports.TrackballControls=P.TrackballControls,exports.ArcballControls=T.ArcballControls,exports.TransformControls=v.TransformControls,exports.PointerLockControls=f.PointerLockControls,exports.FirstPersonControls=A.FirstPersonControls,exports.GizmoHelper=L.GizmoHelper,exports.useGizmoContext=L.useGizmoContext,exports.GizmoViewcube=k.GizmoViewcube,exports.GizmoViewport=E.GizmoViewport,exports.useCubeTexture=D.useCubeTexture,exports.useFBX=G.useFBX,exports.useGLTF=w.useGLTF,exports.useProgress=z.useProgress,exports.IsObject=F.IsObject,exports.useTexture=F.useTexture,exports.useKTX2=R.useKTX2,exports.Stats=O.Stats,exports.useDepthBuffer=I.useDepthBuffer,exports.useAspect=y.useAspect,exports.useCamera=H.useCamera,exports.useDetectGPU=V.useDetectGPU,exports.useHelper=Q.useHelper,exports.useBVH=X.useBVH,exports.useContextBridge=K.useContextBridge,exports.useAnimations=W.useAnimations,exports.useFBO=N.useFBO,exports.useIntersect=U.useIntersect,exports.useBoxProjectedEnv=_.useBoxProjectedEnv,exports.BBAnchor=J.BBAnchor,exports.CurveModifier=Y.CurveModifier,exports.MeshDistortMaterial=Z.MeshDistortMaterial,exports.MeshWobbleMaterial=$.MeshWobbleMaterial,exports.MeshReflectorMaterial=ee.MeshReflectorMaterial,exports.PointMaterial=re.PointMaterial,exports.PointMaterialImpl=re.PointMaterialImpl,exports.shaderMaterial=se.shaderMaterial,exports.softShadows=te.softShadows,exports.Box=oe.Box,exports.Capsule=oe.Capsule,exports.Circle=oe.Circle,exports.Cone=oe.Cone,exports.Cylinder=oe.Cylinder,exports.Dodecahedron=oe.Dodecahedron,exports.Extrude=oe.Extrude,exports.Icosahedron=oe.Icosahedron,exports.Lathe=oe.Lathe,exports.Octahedron=oe.Octahedron,exports.Plane=oe.Plane,exports.Polyhedron=oe.Polyhedron,exports.Ring=oe.Ring,exports.Sphere=oe.Sphere,exports.Tetrahedron=oe.Tetrahedron,exports.Torus=oe.Torus,exports.TorusKnot=oe.TorusKnot,exports.Tube=oe.Tube,exports.RoundedBox=ie.RoundedBox,exports.ScreenQuad=ue.ScreenQuad,exports.Center=ae.Center,exports.Bounds=ne.Bounds,exports.useBounds=ne.useBounds,exports.CameraShake=ce.CameraShake,exports.Float=je.Float,exports.Stage=pe.Stage,exports.Backdrop=xe.Backdrop,exports.Shadow=le.Shadow,exports.ContactShadows=de.ContactShadows,exports.AccumulativeShadows=qe.AccumulativeShadows,exports.RandomizedLight=qe.RandomizedLight,exports.accumulativeContext=qe.accumulativeContext,exports.Reflector=me.Reflector,exports.SpotLight=Ce.SpotLight,exports.Environment=he.Environment,exports.EnvironmentCube=he.EnvironmentCube,exports.EnvironmentMap=he.EnvironmentMap,exports.EnvironmentPortal=he.EnvironmentPortal,exports.useEnvironment=he.useEnvironment,exports.Lightformer=be.Lightformer,exports.Sky=Me.Sky,exports.calcPosFromAngles=Me.calcPosFromAngles,exports.Stars=Be.Stars,exports.Cloud=Se.Cloud,exports.Sparkles=ge.Sparkles,exports.useMatcapTexture=Pe.useMatcapTexture,exports.useNormalTexture=Te.useNormalTexture,exports.Point=ve.Point,exports.Points=ve.Points,exports.PointsBuffer=ve.PointsBuffer,exports.Instance=fe.Instance,exports.Instances=fe.Instances,exports.Merged=fe.Merged,exports.Segment=Ae.Segment,exports.SegmentObject=Ae.SegmentObject,exports.Segments=Ae.Segments,exports.Detailed=Le.Detailed,exports.Preload=ke.Preload,exports.BakeShadows=Ee.BakeShadows,exports.meshBounds=De.meshBounds,exports.AdaptiveDpr=Ge.AdaptiveDpr,exports.AdaptiveEvents=we.AdaptiveEvents,exports.RenderTexture=ze.RenderTexture,exports.Mask=Fe.Mask,exports.useMask=Fe.useMask;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./QuadraticBezierLine.cjs.js"),s=require("./CubicBezierLine.cjs.js"),t=require("./CatmullRomLine.cjs.js"),o=require("./Line.cjs.js"),i=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),a=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),c=require("./GradientTexture.cjs.js"),j=require("./Image.cjs.js"),p=require("./Edges.cjs.js"),x=require("./Trail.cjs.js"),l=require("./Sampler.cjs.js"),q=require("./ComputedAttribute.cjs.js"),d=require("./Clone.cjs.js"),m=require("./MarchingCubes.cjs.js"),C=require("./Decal.cjs.js"),h=require("./OrthographicCamera.cjs.js"),S=require("./PerspectiveCamera.cjs.js"),b=require("./CubeCamera.cjs.js"),M=require("./DeviceOrientationControls.cjs.js"),B=require("./FlyControls.cjs.js"),g=require("./MapControls.cjs.js"),P=require("./OrbitControls.cjs.js"),T=require("./TrackballControls.cjs.js"),v=require("./ArcballControls.cjs.js"),f=require("./TransformControls.cjs.js"),A=require("./PointerLockControls.cjs.js"),L=require("./FirstPersonControls.cjs.js"),k=require("./GizmoHelper.cjs.js"),D=require("./GizmoViewcube.cjs.js"),E=require("./GizmoViewport.cjs.js"),G=require("./useCubeTexture.cjs.js"),w=require("./useFBX.cjs.js"),z=require("./useGLTF.cjs.js"),F=require("./useProgress.cjs.js"),R=require("./useTexture.cjs.js"),O=require("./useKTX2.cjs.js"),I=require("./Stats.cjs.js"),y=require("./useDepthBuffer.cjs.js"),H=require("./useAspect.cjs.js"),V=require("./useCamera.cjs.js"),Q=require("./useDetectGPU.cjs.js"),X=require("./useHelper.cjs.js"),K=require("./useBVH.cjs.js"),W=require("./useContextBridge.cjs.js"),N=require("./useAnimations.cjs.js"),U=require("./useFBO.cjs.js"),_=require("./useIntersect.cjs.js"),J=require("./useBoxProjectedEnv.cjs.js"),Y=require("./BBAnchor.cjs.js"),Z=require("./CurveModifier.cjs.js"),$=require("./MeshDistortMaterial.cjs.js"),ee=require("./MeshWobbleMaterial.cjs.js"),re=require("./MeshReflectorMaterial.cjs.js"),se=require("./PointMaterial.cjs.js"),te=require("./shaderMaterial.cjs.js"),oe=require("./softShadows.cjs.js"),ie=require("./shapes.cjs.js"),ue=require("./RoundedBox.cjs.js"),ae=require("./ScreenQuad.cjs.js"),ne=require("./Center.cjs.js"),ce=require("./Bounds.cjs.js"),je=require("./CameraShake.cjs.js"),pe=require("./Float.cjs.js"),xe=require("./Stage.cjs.js"),le=require("./Backdrop.cjs.js"),qe=require("./Shadow.cjs.js"),de=require("./ContactShadows.cjs.js"),me=require("./AccumulativeShadows.cjs.js"),Ce=require("./Reflector.cjs.js"),he=require("./SpotLight.cjs.js"),Se=require("./Environment.cjs.js"),be=require("./Lightformer.cjs.js"),Me=require("./Sky.cjs.js"),Be=require("./Stars.cjs.js"),ge=require("./Cloud.cjs.js"),Pe=require("./Sparkles.cjs.js"),Te=require("./useMatcapTexture.cjs.js"),ve=require("./useNormalTexture.cjs.js"),fe=require("./Points.cjs.js"),Ae=require("./Instances.cjs.js"),Le=require("./Segments.cjs.js"),ke=require("./Detailed.cjs.js"),De=require("./Preload.cjs.js"),Ee=require("./BakeShadows.cjs.js"),Ge=require("./meshBounds.cjs.js"),we=require("./AdaptiveDpr.cjs.js"),ze=require("./AdaptiveEvents.cjs.js"),Fe=require("./RenderTexture.cjs.js"),Re=require("./Mask.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("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("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("../helpers/Position.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.QuadraticBezierLine=r.QuadraticBezierLine,exports.CubicBezierLine=s.CubicBezierLine,exports.CatmullRomLine=t.CatmullRomLine,exports.Line=o.Line,exports.PositionalAudio=i.PositionalAudio,exports.Text=u.Text,exports.Text3D=a.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=c.GradientTexture,exports.Image=j.Image,exports.Edges=p.Edges,exports.Trail=x.Trail,exports.useTrail=x.useTrail,exports.Sampler=l.Sampler,exports.useSurfaceSampler=l.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=d.Clone,exports.MarchingCube=m.MarchingCube,exports.MarchingCubes=m.MarchingCubes,exports.MarchingPlane=m.MarchingPlane,exports.Decal=C.Decal,exports.OrthographicCamera=h.OrthographicCamera,exports.PerspectiveCamera=S.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=M.DeviceOrientationControls,exports.FlyControls=B.FlyControls,exports.MapControls=g.MapControls,exports.OrbitControls=P.OrbitControls,exports.TrackballControls=T.TrackballControls,exports.ArcballControls=v.ArcballControls,exports.TransformControls=f.TransformControls,exports.PointerLockControls=A.PointerLockControls,exports.FirstPersonControls=L.FirstPersonControls,exports.GizmoHelper=k.GizmoHelper,exports.useGizmoContext=k.useGizmoContext,exports.GizmoViewcube=D.GizmoViewcube,exports.GizmoViewport=E.GizmoViewport,exports.useCubeTexture=G.useCubeTexture,exports.useFBX=w.useFBX,exports.useGLTF=z.useGLTF,exports.useProgress=F.useProgress,exports.IsObject=R.IsObject,exports.useTexture=R.useTexture,exports.useKTX2=O.useKTX2,exports.Stats=I.Stats,exports.useDepthBuffer=y.useDepthBuffer,exports.useAspect=H.useAspect,exports.useCamera=V.useCamera,exports.useDetectGPU=Q.useDetectGPU,exports.useHelper=X.useHelper,exports.useBVH=K.useBVH,exports.useContextBridge=W.useContextBridge,exports.useAnimations=N.useAnimations,exports.useFBO=U.useFBO,exports.useIntersect=_.useIntersect,exports.useBoxProjectedEnv=J.useBoxProjectedEnv,exports.BBAnchor=Y.BBAnchor,exports.CurveModifier=Z.CurveModifier,exports.MeshDistortMaterial=$.MeshDistortMaterial,exports.MeshWobbleMaterial=ee.MeshWobbleMaterial,exports.MeshReflectorMaterial=re.MeshReflectorMaterial,exports.PointMaterial=se.PointMaterial,exports.PointMaterialImpl=se.PointMaterialImpl,exports.shaderMaterial=te.shaderMaterial,exports.softShadows=oe.softShadows,exports.Box=ie.Box,exports.Capsule=ie.Capsule,exports.Circle=ie.Circle,exports.Cone=ie.Cone,exports.Cylinder=ie.Cylinder,exports.Dodecahedron=ie.Dodecahedron,exports.Extrude=ie.Extrude,exports.Icosahedron=ie.Icosahedron,exports.Lathe=ie.Lathe,exports.Octahedron=ie.Octahedron,exports.Plane=ie.Plane,exports.Polyhedron=ie.Polyhedron,exports.Ring=ie.Ring,exports.Sphere=ie.Sphere,exports.Tetrahedron=ie.Tetrahedron,exports.Torus=ie.Torus,exports.TorusKnot=ie.TorusKnot,exports.Tube=ie.Tube,exports.RoundedBox=ue.RoundedBox,exports.ScreenQuad=ae.ScreenQuad,exports.Center=ne.Center,exports.Bounds=ce.Bounds,exports.useBounds=ce.useBounds,exports.CameraShake=je.CameraShake,exports.Float=pe.Float,exports.Stage=xe.Stage,exports.Backdrop=le.Backdrop,exports.Shadow=qe.Shadow,exports.ContactShadows=de.ContactShadows,exports.AccumulativeShadows=me.AccumulativeShadows,exports.RandomizedLight=me.RandomizedLight,exports.accumulativeContext=me.accumulativeContext,exports.Reflector=Ce.Reflector,exports.SpotLight=he.SpotLight,exports.Environment=Se.Environment,exports.EnvironmentCube=Se.EnvironmentCube,exports.EnvironmentMap=Se.EnvironmentMap,exports.EnvironmentPortal=Se.EnvironmentPortal,exports.useEnvironment=Se.useEnvironment,exports.Lightformer=be.Lightformer,exports.Sky=Me.Sky,exports.calcPosFromAngles=Me.calcPosFromAngles,exports.Stars=Be.Stars,exports.Cloud=ge.Cloud,exports.Sparkles=Pe.Sparkles,exports.useMatcapTexture=Te.useMatcapTexture,exports.useNormalTexture=ve.useNormalTexture,exports.Point=fe.Point,exports.Points=fe.Points,exports.PointsBuffer=fe.PointsBuffer,exports.Instance=Ae.Instance,exports.Instances=Ae.Instances,exports.Merged=Ae.Merged,exports.Segment=Le.Segment,exports.SegmentObject=Le.SegmentObject,exports.Segments=Le.Segments,exports.Detailed=ke.Detailed,exports.Preload=De.Preload,exports.BakeShadows=Ee.BakeShadows,exports.meshBounds=Ge.meshBounds,exports.AdaptiveDpr=we.AdaptiveDpr,exports.AdaptiveEvents=ze.AdaptiveEvents,exports.RenderTexture=Fe.RenderTexture,exports.Mask=Re.Mask,exports.useMask=Re.useMask;
package/core/index.d.ts CHANGED
@@ -15,6 +15,7 @@ export * from './Sampler';
15
15
  export * from './ComputedAttribute';
16
16
  export * from './Clone';
17
17
  export * from './MarchingCubes';
18
+ export * from './Decal';
18
19
  export * from './OrthographicCamera';
19
20
  export * from './PerspectiveCamera';
20
21
  export * from './CubeCamera';
package/core/index.js CHANGED
@@ -11,10 +11,11 @@ export { GradientTexture } from './GradientTexture.js';
11
11
  export { Image } from './Image.js';
12
12
  export { Edges } from './Edges.js';
13
13
  export { Trail, useTrail } from './Trail.js';
14
- export { Sampler } from './Sampler.js';
14
+ export { Sampler, useSurfaceSampler } from './Sampler.js';
15
15
  export { ComputedAttribute } from './ComputedAttribute.js';
16
16
  export { Clone } from './Clone.js';
17
17
  export { MarchingCube, MarchingCubes, MarchingPlane } from './MarchingCubes.js';
18
+ export { Decal } from './Decal.js';
18
19
  export { OrthographicCamera } from './OrthographicCamera.js';
19
20
  export { PerspectiveCamera } from './PerspectiveCamera.js';
20
21
  export { CubeCamera } from './CubeCamera.js';