@react-three/drei 7.20.6 → 7.21.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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("react"),t=require("@react-three/fiber"),u=require("./useFBO.cjs.js");function n(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var u=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,u.get?u:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var s=n(r);const a=s.forwardRef((({size:r=256},n)=>{const a=t.useThree((e=>e.viewport.dpr)),{width:i,height:o}=t.useThree((e=>e.size)),c=r||i*a,d=r||o*a,f=s.useMemo((()=>{const r=new e.DepthTexture(c,d);return r.format=e.DepthFormat,r.type=e.UnsignedShortType,{depthTexture:r}}),[c,d]),l=u.useFBO(c,d,f);return s.useImperativeHandle(n,(()=>null==l?void 0:l.depthTexture)),t.useFrame((e=>{e.gl.setRenderTarget(l),e.gl.render(e.scene,e.camera),e.gl.setRenderTarget(null)}))}));exports.DepthBuffer=a;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("react"),t=require("@react-three/fiber"),u=require("./useFBO.cjs.js");function n(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var u=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,u.get?u:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var s=n(r);const a=s.forwardRef((({size:r=256},n)=>{s.useEffect((()=>{console.warn("DepthBuffer has been deprecated and will be removed next major. Replace it with useDepthBuffer(size)!")}),[]);const a=t.useThree((e=>e.viewport.dpr)),{width:i,height:o}=t.useThree((e=>e.size)),c=r||i*a,f=r||o*a,d=s.useMemo((()=>{const r=new e.DepthTexture(c,f);return r.format=e.DepthFormat,r.type=e.UnsignedShortType,{depthTexture:r}}),[c,f]),l=u.useFBO(c,f,d);return s.useImperativeHandle(n,(()=>null==l?void 0:l.depthTexture)),t.useFrame((e=>{e.gl.setRenderTarget(l),e.gl.render(e.scene,e.camera),e.gl.setRenderTarget(null)}))}));exports.DepthBuffer=a;
@@ -6,6 +6,9 @@ import { useFBO } from './useFBO.js';
6
6
  const DepthBuffer = /*#__PURE__*/React.forwardRef(({
7
7
  size = 256
8
8
  }, ref) => {
9
+ React.useEffect(() => {
10
+ console.warn('DepthBuffer has been deprecated and will be removed next major. Replace it with useDepthBuffer(size)!');
11
+ }, []);
9
12
  const dpr = useThree(state => state.viewport.dpr);
10
13
  const {
11
14
  width,
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("./Cloud.cjs.js"),s=require("./QuadraticBezierLine.cjs.js"),t=require("./CubicBezierLine.cjs.js"),o=require("./Line.cjs.js"),i=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),a=require("./Environment.cjs.js"),c=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),n=require("./Image.cjs.js"),p=require("./OrthographicCamera.cjs.js"),l=require("./PerspectiveCamera.cjs.js"),x=require("./CameraShake.cjs.js"),q=require("./CubeCamera.cjs.js"),d=require("./DeviceOrientationControls.cjs.js"),C=require("./FlyControls.cjs.js"),h=require("./MapControls.cjs.js"),m=require("./OrbitControls.cjs.js"),S=require("./TrackballControls.cjs.js"),b=require("./ArcballControls.cjs.js"),P=require("./TransformControls.cjs.js"),B=require("./PointerLockControls.cjs.js"),T=require("./FirstPersonControls.cjs.js"),g=require("./GizmoHelper.cjs.js"),M=require("./GizmoViewcube.cjs.js"),f=require("./GizmoViewport.cjs.js"),v=require("./useCubeTexture.cjs.js"),L=require("./useFBX.cjs.js"),A=require("./useGLTF.cjs.js"),G=require("./useProgress.cjs.js"),D=require("./useTexture.cjs.js"),w=require("./Reflector.cjs.js"),z=require("./Shadow.cjs.js"),k=require("./Stats.cjs.js"),F=require("./Center.cjs.js"),I=require("./Bounds.cjs.js"),O=require("./DepthBuffer.cjs.js"),E=require("./useAspect.cjs.js"),y=require("./useCamera.cjs.js"),H=require("./useDetectGPU.cjs.js"),R=require("./useHelper.cjs.js"),V=require("./useBVH.cjs.js"),Q=require("./useContextBridge.cjs.js"),W=require("./useAnimations.cjs.js"),N=require("./useFBO.cjs.js"),U=require("./useIntersect.cjs.js"),X=require("./useSimplification.cjs.js"),K=require("./useTessellation.cjs.js"),_=require("./useEdgeSplit.cjs.js"),J=require("./CurveModifier.cjs.js"),Y=require("./MeshDistortMaterial.cjs.js"),Z=require("./MeshWobbleMaterial.cjs.js"),$=require("./PointMaterial.cjs.js"),ee=require("./shaderMaterial.cjs.js"),re=require("./Sky.cjs.js"),se=require("./softShadows.cjs.js"),te=require("./Stars.cjs.js"),oe=require("./ContactShadows.cjs.js"),ie=require("./SpotLight.cjs.js"),ue=require("./shapes.cjs.js"),ae=require("./RoundedBox.cjs.js"),ce=require("./ScreenQuad.cjs.js"),je=require("./useMatcapTexture.cjs.js"),ne=require("./useNormalTexture.cjs.js"),pe=require("./Stage.cjs.js"),le=require("./Points.cjs.js"),xe=require("./Instances.cjs.js"),qe=require("./Segments.cjs.js"),de=require("./Detailed.cjs.js"),Ce=require("./Preload.cjs.js"),he=require("./BakeShadows.cjs.js"),me=require("./meshBounds.cjs.js"),Se=require("./AdaptiveDpr.cjs.js"),be=require("./AdaptiveEvents.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("../assets/cloud.base64.cjs.js"),require("three"),require("three-stdlib"),require("troika-three-text"),require("use-asset"),require("../helpers/environment-assets.cjs.js"),require("lodash.omit"),require("lodash.pick"),require("zustand"),require("../materials/MeshReflectorMaterial.cjs.js"),require("three/examples/js/libs/stats.min"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/SpotLightMaterial.cjs.js"),require("../helpers/matcap-assets.cjs.js"),require("../helpers/normal-assets.cjs.js"),require("../helpers/Position.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.Cloud=r.Cloud,exports.QuadraticBezierLine=s.QuadraticBezierLine,exports.CubicBezierLine=t.CubicBezierLine,exports.Line=o.Line,exports.PositionalAudio=i.PositionalAudio,exports.Text=u.Text,exports.Environment=a.Environment,exports.Effects=c.Effects,exports.isWebGL2Available=c.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=n.Image,exports.OrthographicCamera=p.OrthographicCamera,exports.PerspectiveCamera=l.PerspectiveCamera,exports.CameraShake=x.CameraShake,exports.CubeCamera=q.CubeCamera,exports.DeviceOrientationControls=d.DeviceOrientationControls,exports.FlyControls=C.FlyControls,exports.MapControls=h.MapControls,exports.OrbitControls=m.OrbitControls,exports.TrackballControls=S.TrackballControls,exports.ArcballControls=b.ArcballControls,exports.TransformControls=P.TransformControls,exports.PointerLockControls=B.PointerLockControls,exports.FirstPersonControls=T.FirstPersonControls,exports.GizmoHelper=g.GizmoHelper,exports.useGizmoContext=g.useGizmoContext,exports.GizmoViewcube=M.GizmoViewcube,exports.GizmoViewport=f.GizmoViewport,exports.useCubeTexture=v.useCubeTexture,exports.useFBX=L.useFBX,exports.useGLTF=A.useGLTF,exports.useProgress=G.useProgress,exports.IsObject=D.IsObject,exports.useTexture=D.useTexture,exports.Reflector=w.Reflector,exports.Shadow=z.Shadow,exports.Stats=k.Stats,exports.Center=F.Center,exports.Bounds=I.Bounds,exports.useBounds=I.useBounds,exports.DepthBuffer=O.DepthBuffer,exports.useAspect=E.useAspect,exports.useCamera=y.useCamera,exports.useDetectGPU=H.useDetectGPU,exports.useHelper=R.useHelper,exports.useBVH=V.useBVH,exports.useContextBridge=Q.useContextBridge,exports.useAnimations=W.useAnimations,exports.useFBO=N.useFBO,exports.useIntersect=U.useIntersect,exports.useSimplification=X.useSimplification,exports.useTessellation=K.useTessellation,exports.useEdgeSplit=_.useEdgeSplit,exports.CurveModifier=J.CurveModifier,exports.MeshDistortMaterial=Y.MeshDistortMaterial,exports.MeshWobbleMaterial=Z.MeshWobbleMaterial,exports.PointMaterial=$.PointMaterial,exports.PointMaterialImpl=$.PointMaterialImpl,exports.shaderMaterial=ee.shaderMaterial,exports.Sky=re.Sky,exports.calcPosFromAngles=re.calcPosFromAngles,exports.softShadows=se.softShadows,exports.Stars=te.Stars,exports.ContactShadows=oe.ContactShadows,exports.SpotLight=ie.SpotLight,exports.Box=ue.Box,exports.Circle=ue.Circle,exports.Cone=ue.Cone,exports.Cylinder=ue.Cylinder,exports.Dodecahedron=ue.Dodecahedron,exports.Extrude=ue.Extrude,exports.Icosahedron=ue.Icosahedron,exports.Lathe=ue.Lathe,exports.Octahedron=ue.Octahedron,exports.Parametric=ue.Parametric,exports.Plane=ue.Plane,exports.Polyhedron=ue.Polyhedron,exports.Ring=ue.Ring,exports.Sphere=ue.Sphere,exports.Tetrahedron=ue.Tetrahedron,exports.Torus=ue.Torus,exports.TorusKnot=ue.TorusKnot,exports.Tube=ue.Tube,exports.RoundedBox=ae.RoundedBox,exports.ScreenQuad=ce.ScreenQuad,exports.useMatcapTexture=je.useMatcapTexture,exports.useNormalTexture=ne.useNormalTexture,exports.Stage=pe.Stage,exports.Point=le.Point,exports.Points=le.Points,exports.Instance=xe.Instance,exports.Instances=xe.Instances,exports.Merged=xe.Merged,exports.Segment=qe.Segment,exports.Segments=qe.Segments,exports.Detailed=de.Detailed,exports.Preload=Ce.Preload,exports.BakeShadows=he.BakeShadows,exports.meshBounds=me.meshBounds,exports.AdaptiveDpr=Se.AdaptiveDpr,exports.AdaptiveEvents=be.AdaptiveEvents;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./Cloud.cjs.js"),s=require("./QuadraticBezierLine.cjs.js"),t=require("./CubicBezierLine.cjs.js"),o=require("./Line.cjs.js"),i=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),a=require("./Environment.cjs.js"),c=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),p=require("./Image.cjs.js"),n=require("./OrthographicCamera.cjs.js"),l=require("./PerspectiveCamera.cjs.js"),x=require("./CameraShake.cjs.js"),q=require("./CubeCamera.cjs.js"),d=require("./DeviceOrientationControls.cjs.js"),h=require("./FlyControls.cjs.js"),C=require("./MapControls.cjs.js"),m=require("./OrbitControls.cjs.js"),S=require("./TrackballControls.cjs.js"),b=require("./ArcballControls.cjs.js"),B=require("./TransformControls.cjs.js"),P=require("./PointerLockControls.cjs.js"),f=require("./FirstPersonControls.cjs.js"),T=require("./GizmoHelper.cjs.js"),g=require("./GizmoViewcube.cjs.js"),M=require("./GizmoViewport.cjs.js"),v=require("./useCubeTexture.cjs.js"),D=require("./useFBX.cjs.js"),L=require("./useGLTF.cjs.js"),A=require("./useProgress.cjs.js"),G=require("./useTexture.cjs.js"),w=require("./Reflector.cjs.js"),z=require("./Shadow.cjs.js"),k=require("./Stats.cjs.js"),F=require("./Center.cjs.js"),I=require("./Bounds.cjs.js"),O=require("./DepthBuffer.cjs.js"),E=require("./useDepthBuffer.cjs.js"),y=require("./useAspect.cjs.js"),H=require("./useCamera.cjs.js"),R=require("./useDetectGPU.cjs.js"),V=require("./useHelper.cjs.js"),Q=require("./useBVH.cjs.js"),W=require("./useContextBridge.cjs.js"),N=require("./useAnimations.cjs.js"),U=require("./useFBO.cjs.js"),X=require("./useIntersect.cjs.js"),K=require("./useSimplification.cjs.js"),_=require("./useTessellation.cjs.js"),J=require("./useEdgeSplit.cjs.js"),Y=require("./CurveModifier.cjs.js"),Z=require("./MeshDistortMaterial.cjs.js"),$=require("./MeshWobbleMaterial.cjs.js"),ee=require("./PointMaterial.cjs.js"),re=require("./shaderMaterial.cjs.js"),se=require("./Sky.cjs.js"),te=require("./softShadows.cjs.js"),oe=require("./Stars.cjs.js"),ie=require("./ContactShadows.cjs.js"),ue=require("./SpotLight.cjs.js"),ae=require("./shapes.cjs.js"),ce=require("./RoundedBox.cjs.js"),je=require("./ScreenQuad.cjs.js"),pe=require("./useMatcapTexture.cjs.js"),ne=require("./useNormalTexture.cjs.js"),le=require("./Stage.cjs.js"),xe=require("./Points.cjs.js"),qe=require("./Instances.cjs.js"),de=require("./Segments.cjs.js"),he=require("./Detailed.cjs.js"),Ce=require("./Preload.cjs.js"),me=require("./BakeShadows.cjs.js"),Se=require("./meshBounds.cjs.js"),be=require("./AdaptiveDpr.cjs.js"),Be=require("./AdaptiveEvents.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("../assets/cloud.base64.cjs.js"),require("three"),require("three-stdlib"),require("troika-three-text"),require("use-asset"),require("../helpers/environment-assets.cjs.js"),require("lodash.omit"),require("lodash.pick"),require("zustand"),require("../materials/MeshReflectorMaterial.cjs.js"),require("three/examples/js/libs/stats.min"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/SpotLightMaterial.cjs.js"),require("../helpers/matcap-assets.cjs.js"),require("../helpers/normal-assets.cjs.js"),require("../helpers/Position.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.Cloud=r.Cloud,exports.QuadraticBezierLine=s.QuadraticBezierLine,exports.CubicBezierLine=t.CubicBezierLine,exports.Line=o.Line,exports.PositionalAudio=i.PositionalAudio,exports.Text=u.Text,exports.Environment=a.Environment,exports.Effects=c.Effects,exports.isWebGL2Available=c.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=p.Image,exports.OrthographicCamera=n.OrthographicCamera,exports.PerspectiveCamera=l.PerspectiveCamera,exports.CameraShake=x.CameraShake,exports.CubeCamera=q.CubeCamera,exports.DeviceOrientationControls=d.DeviceOrientationControls,exports.FlyControls=h.FlyControls,exports.MapControls=C.MapControls,exports.OrbitControls=m.OrbitControls,exports.TrackballControls=S.TrackballControls,exports.ArcballControls=b.ArcballControls,exports.TransformControls=B.TransformControls,exports.PointerLockControls=P.PointerLockControls,exports.FirstPersonControls=f.FirstPersonControls,exports.GizmoHelper=T.GizmoHelper,exports.useGizmoContext=T.useGizmoContext,exports.GizmoViewcube=g.GizmoViewcube,exports.GizmoViewport=M.GizmoViewport,exports.useCubeTexture=v.useCubeTexture,exports.useFBX=D.useFBX,exports.useGLTF=L.useGLTF,exports.useProgress=A.useProgress,exports.IsObject=G.IsObject,exports.useTexture=G.useTexture,exports.Reflector=w.Reflector,exports.Shadow=z.Shadow,exports.Stats=k.Stats,exports.Center=F.Center,exports.Bounds=I.Bounds,exports.useBounds=I.useBounds,exports.DepthBuffer=O.DepthBuffer,exports.useDepthBuffer=E.useDepthBuffer,exports.useAspect=y.useAspect,exports.useCamera=H.useCamera,exports.useDetectGPU=R.useDetectGPU,exports.useHelper=V.useHelper,exports.useBVH=Q.useBVH,exports.useContextBridge=W.useContextBridge,exports.useAnimations=N.useAnimations,exports.useFBO=U.useFBO,exports.useIntersect=X.useIntersect,exports.useSimplification=K.useSimplification,exports.useTessellation=_.useTessellation,exports.useEdgeSplit=J.useEdgeSplit,exports.CurveModifier=Y.CurveModifier,exports.MeshDistortMaterial=Z.MeshDistortMaterial,exports.MeshWobbleMaterial=$.MeshWobbleMaterial,exports.PointMaterial=ee.PointMaterial,exports.PointMaterialImpl=ee.PointMaterialImpl,exports.shaderMaterial=re.shaderMaterial,exports.Sky=se.Sky,exports.calcPosFromAngles=se.calcPosFromAngles,exports.softShadows=te.softShadows,exports.Stars=oe.Stars,exports.ContactShadows=ie.ContactShadows,exports.SpotLight=ue.SpotLight,exports.Box=ae.Box,exports.Circle=ae.Circle,exports.Cone=ae.Cone,exports.Cylinder=ae.Cylinder,exports.Dodecahedron=ae.Dodecahedron,exports.Extrude=ae.Extrude,exports.Icosahedron=ae.Icosahedron,exports.Lathe=ae.Lathe,exports.Octahedron=ae.Octahedron,exports.Parametric=ae.Parametric,exports.Plane=ae.Plane,exports.Polyhedron=ae.Polyhedron,exports.Ring=ae.Ring,exports.Sphere=ae.Sphere,exports.Tetrahedron=ae.Tetrahedron,exports.Torus=ae.Torus,exports.TorusKnot=ae.TorusKnot,exports.Tube=ae.Tube,exports.RoundedBox=ce.RoundedBox,exports.ScreenQuad=je.ScreenQuad,exports.useMatcapTexture=pe.useMatcapTexture,exports.useNormalTexture=ne.useNormalTexture,exports.Stage=le.Stage,exports.Point=xe.Point,exports.Points=xe.Points,exports.Instance=qe.Instance,exports.Instances=qe.Instances,exports.Merged=qe.Merged,exports.Segment=de.Segment,exports.Segments=de.Segments,exports.Detailed=he.Detailed,exports.Preload=Ce.Preload,exports.BakeShadows=me.BakeShadows,exports.meshBounds=Se.meshBounds,exports.AdaptiveDpr=be.AdaptiveDpr,exports.AdaptiveEvents=Be.AdaptiveEvents;
package/core/index.d.ts CHANGED
@@ -36,6 +36,7 @@ export * from './Stats';
36
36
  export * from './Center';
37
37
  export * from './Bounds';
38
38
  export * from './DepthBuffer';
39
+ export * from './useDepthBuffer';
39
40
  export * from './useAspect';
40
41
  export * from './useCamera';
41
42
  export * from './useDetectGPU';
package/core/index.js CHANGED
@@ -36,6 +36,7 @@ export { Stats } from './Stats.js';
36
36
  export { Center } from './Center.js';
37
37
  export { Bounds, useBounds } from './Bounds.js';
38
38
  export { DepthBuffer } from './DepthBuffer.js';
39
+ export { useDepthBuffer } from './useDepthBuffer.js';
39
40
  export { useAspect } from './useAspect.js';
40
41
  export { useCamera } from './useCamera.js';
41
42
  export { useDetectGPU } from './useDetectGPU.js';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("react"),t=require("@react-three/fiber"),u=require("./useFBO.cjs.js");function n(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var u=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,u.get?u:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var s=n(r);exports.useDepthBuffer=function(r=256){const n=t.useThree((e=>e.viewport.dpr)),{width:c,height:i}=t.useThree((e=>e.size)),o=r||c*n,a=r||i*n,f=s.useMemo((()=>{const r=new e.DepthTexture(o,a);return r.format=e.DepthFormat,r.type=e.UnsignedShortType,{depthTexture:r}}),[o,a]),p=u.useFBO(o,a,f);return t.useFrame((e=>{e.gl.setRenderTarget(p),e.gl.render(e.scene,e.camera),e.gl.setRenderTarget(null)})),p.depthTexture};
@@ -0,0 +1,3 @@
1
+ import { DepthTexture } from 'three';
2
+ declare function useDepthBuffer(size?: number): DepthTexture;
3
+ export { useDepthBuffer };
@@ -0,0 +1,31 @@
1
+ import { DepthTexture, DepthFormat, UnsignedShortType } from 'three';
2
+ import * as React from 'react';
3
+ import { useThree, useFrame } from '@react-three/fiber';
4
+ import { useFBO } from './useFBO.js';
5
+
6
+ function useDepthBuffer(size = 256) {
7
+ const dpr = useThree(state => state.viewport.dpr);
8
+ const {
9
+ width,
10
+ height
11
+ } = useThree(state => state.size);
12
+ const w = size || width * dpr;
13
+ const h = size || height * dpr;
14
+ const depthConfig = React.useMemo(() => {
15
+ const depthTexture = new DepthTexture(w, h);
16
+ depthTexture.format = DepthFormat;
17
+ depthTexture.type = UnsignedShortType;
18
+ return {
19
+ depthTexture
20
+ };
21
+ }, [w, h]);
22
+ const depthFBO = useFBO(w, h, depthConfig);
23
+ useFrame(state => {
24
+ state.gl.setRenderTarget(depthFBO);
25
+ state.gl.render(state.scene, state.camera);
26
+ state.gl.setRenderTarget(null);
27
+ });
28
+ return depthFBO.depthTexture;
29
+ }
30
+
31
+ export { useDepthBuffer };