@react-three/drei 9.106.1 → 9.107.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.
Files changed (114) hide show
  1. package/README.md +45 -55
  2. package/core/Caustics.cjs.js +1 -1
  3. package/core/Caustics.js +1 -1
  4. package/core/Cloud.cjs.js +1 -1
  5. package/core/Cloud.js +1 -1
  6. package/core/CubeCamera.cjs.js +1 -1
  7. package/core/CubeCamera.d.ts +15 -3
  8. package/core/CubeCamera.js +47 -4
  9. package/core/CubeTexture.cjs.js +1 -0
  10. package/core/CubeTexture.d.ts +15 -0
  11. package/core/{useCubeTexture.js → CubeTexture.js} +12 -1
  12. package/core/DetectGPU.cjs.js +1 -0
  13. package/core/DetectGPU.d.ts +8 -0
  14. package/core/DetectGPU.js +14 -0
  15. package/core/Example.d.ts +1 -1
  16. package/core/Example.js +3 -0
  17. package/core/Fbo.cjs.js +1 -0
  18. package/core/{useFBO.d.ts → Fbo.d.ts} +6 -0
  19. package/core/{useFBO.js → Fbo.js} +10 -1
  20. package/core/Fbx.cjs.js +1 -0
  21. package/core/Fbx.d.ts +11 -0
  22. package/core/Fbx.js +23 -0
  23. package/core/GizmoHelper.cjs.js +1 -1
  24. package/core/GizmoViewcube.cjs.js +1 -1
  25. package/core/GizmoViewport.cjs.js +1 -1
  26. package/core/Gltf.cjs.js +1 -1
  27. package/core/Gltf.d.ts +17 -5
  28. package/core/Gltf.js +37 -3
  29. package/core/GradientTexture.cjs.js +1 -1
  30. package/core/GradientTexture.d.ts +2 -1
  31. package/core/GradientTexture.js +3 -1
  32. package/core/Image.cjs.js +1 -1
  33. package/core/Image.js +1 -1
  34. package/core/Ktx2.cjs.js +1 -0
  35. package/core/{useKTX2.d.ts → Ktx2.d.ts} +6 -0
  36. package/core/{useKTX2.js → Ktx2.js} +15 -3
  37. package/core/MatcapTexture.cjs.js +1 -0
  38. package/core/MatcapTexture.d.ts +9 -0
  39. package/core/{useMatcapTexture.js → MatcapTexture.js} +14 -2
  40. package/core/MeshPortalMaterial.cjs.js +1 -1
  41. package/core/MeshPortalMaterial.js +1 -1
  42. package/core/MeshTransmissionMaterial.cjs.js +1 -1
  43. package/core/MeshTransmissionMaterial.js +1 -1
  44. package/core/NormalTexture.cjs.js +1 -0
  45. package/core/NormalTexture.d.ts +14 -0
  46. package/core/{useNormalTexture.js → NormalTexture.js} +14 -2
  47. package/core/OrthographicCamera.cjs.js +1 -1
  48. package/core/OrthographicCamera.js +1 -1
  49. package/core/PerspectiveCamera.cjs.js +1 -1
  50. package/core/PerspectiveCamera.js +1 -1
  51. package/core/Progress.cjs.js +1 -0
  52. package/core/{useProgress.d.ts → Progress.d.ts} +4 -0
  53. package/core/{useProgress.js → Progress.js} +11 -1
  54. package/core/RenderTexture.cjs.js +1 -1
  55. package/core/RenderTexture.js +1 -1
  56. package/core/Stats.cjs.js +1 -1
  57. package/core/Stats.js +3 -1
  58. package/core/StatsGl.cjs.js +1 -1
  59. package/core/StatsGl.js +3 -1
  60. package/core/Texture.cjs.js +1 -0
  61. package/core/{useTexture.d.ts → Texture.d.ts} +10 -4
  62. package/core/{useTexture.js → Texture.js} +18 -5
  63. package/core/TrailTexture.cjs.js +1 -0
  64. package/core/{useTrailTexture.d.ts → TrailTexture.d.ts} +4 -0
  65. package/core/{useTrailTexture.js → TrailTexture.js} +14 -3
  66. package/core/VideoTexture.cjs.js +1 -0
  67. package/core/VideoTexture.d.ts +18 -0
  68. package/core/{useVideoTexture.js → VideoTexture.js} +25 -23
  69. package/core/index.cjs.js +1 -1
  70. package/core/index.d.ts +12 -14
  71. package/core/index.js +14 -16
  72. package/core/useDepthBuffer.cjs.js +1 -1
  73. package/core/useDepthBuffer.js +1 -1
  74. package/index.cjs.js +1 -1
  75. package/index.js +14 -16
  76. package/native/index.cjs.js +1 -1
  77. package/native/index.js +14 -16
  78. package/package.json +1 -1
  79. package/react-three-drei-0.0.0-semantic-release.tgz +0 -0
  80. package/web/FaceControls.cjs.js +1 -1
  81. package/web/FaceControls.d.ts +1 -1
  82. package/web/FaceControls.js +12 -1
  83. package/web/Loader.cjs.js +1 -1
  84. package/web/Loader.js +1 -1
  85. package/web/index.cjs.js +1 -1
  86. package/web/index.js +14 -16
  87. package/core/useCubeCamera.cjs.js +0 -1
  88. package/core/useCubeCamera.d.ts +0 -14
  89. package/core/useCubeCamera.js +0 -49
  90. package/core/useCubeTexture.cjs.js +0 -1
  91. package/core/useCubeTexture.d.ts +0 -9
  92. package/core/useDetectGPU.cjs.js +0 -1
  93. package/core/useDetectGPU.d.ts +0 -2
  94. package/core/useDetectGPU.js +0 -6
  95. package/core/useFBO.cjs.js +0 -1
  96. package/core/useFBX.cjs.js +0 -1
  97. package/core/useFBX.d.ts +0 -6
  98. package/core/useFBX.js +0 -10
  99. package/core/useGLTF.cjs.js +0 -1
  100. package/core/useGLTF.d.ts +0 -8
  101. package/core/useGLTF.js +0 -32
  102. package/core/useKTX2.cjs.js +0 -1
  103. package/core/useMatcapTexture.cjs.js +0 -1
  104. package/core/useMatcapTexture.d.ts +0 -2
  105. package/core/useNormalTexture.cjs.js +0 -1
  106. package/core/useNormalTexture.d.ts +0 -8
  107. package/core/useProgress.cjs.js +0 -1
  108. package/core/useTexture.cjs.js +0 -1
  109. package/core/useTrailTexture.cjs.js +0 -1
  110. package/core/useVideoTexture.cjs.js +0 -1
  111. package/core/useVideoTexture.d.ts +0 -12
  112. /package/core/{useBVH.cjs.js → Bvh.cjs.js} +0 -0
  113. /package/core/{useBVH.d.ts → Bvh.d.ts} +0 -0
  114. /package/core/{useBVH.js → Bvh.js} +0 -0
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { DefaultLoadingManager } from 'three';
2
3
  import create from 'zustand';
3
4
 
@@ -42,4 +43,13 @@ const useProgress = /* @__PURE__ */create(set => {
42
43
  };
43
44
  });
44
45
 
45
- export { useProgress };
46
+ //
47
+
48
+ function Progress({
49
+ children
50
+ }) {
51
+ const result = useProgress();
52
+ return /*#__PURE__*/React.createElement(React.Fragment, null, children == null ? void 0 : children(result));
53
+ }
54
+
55
+ export { Progress, useProgress };
@@ -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 l(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 i=u(e),c=l(r),o=l(t);const s=o.forwardRef((({children:e,compute:r,width:t,height:u,samples:l=8,renderPriority:s=0,eventPriority:d=0,frames:p=1/0,stencilBuffer:m=!1,depthBuffer:g=!0,generateMipmaps:b=!1,...v},h)=>{const{size:y,viewport:j}=n.useThree(),O=a.useFBO((t||y.width)*j.dpr,(u||y.height)*j.dpr,{samples:l,stencilBuffer:m,depthBuffer:g,generateMipmaps:b}),[x]=o.useState((()=>new c.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 c.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[l]=t.raycaster.intersectObject(u);if(!l)return!1;const i=l.uv;if(!i)return!1;r.raycaster.setFromCamera(r.pointer.set(2*i.x-1,2*i.y-1),r.camera)}),[]);return o.useImperativeHandle(h,(()=>O.texture),[O]),o.createElement(o.Fragment,null,n.createPortal(o.createElement(f,{renderPriority:s,frames:p,fbo:O},e,o.createElement("group",{onPointerOver:()=>null})),x,{events:{compute:r||P,priority:d}}),o.createElement("primitive",i.default({object:O.texture},v)))}));function f({frames:e,renderPriority:r,children:t,fbo:a}){let u,l,i=0;return n.useFrame((r=>{(e===1/0||i<e)&&(u=r.gl.autoClear,l=r.gl.xr.enabled,r.gl.autoClear=!0,r.gl.xr.enabled=!1,r.gl.setRenderTarget(a),r.gl.render(r.scene,r.camera),r.gl.setRenderTarget(null),r.gl.autoClear=u,r.gl.xr.enabled=l,i++)}),r),o.createElement(o.Fragment,null,t)}exports.RenderTexture=s;
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("./Fbo.cjs.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function l(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 i=u(e),c=l(r),o=l(t);const s=o.forwardRef((({children:e,compute:r,width:t,height:u,samples:l=8,renderPriority:s=0,eventPriority:d=0,frames:p=1/0,stencilBuffer:m=!1,depthBuffer:g=!0,generateMipmaps:b=!1,...v},h)=>{const{size:y,viewport:j}=n.useThree(),x=a.useFBO((t||y.width)*j.dpr,(u||y.height)*j.dpr,{samples:l,stencilBuffer:m,depthBuffer:g,generateMipmaps:b}),[O]=o.useState((()=>new c.Scene)),P=o.useCallback(((e,r,t)=>{var n,a;let u=null==(n=x.texture)?void 0:n.__r3f.parent;for(;u&&!(u instanceof c.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[l]=t.raycaster.intersectObject(u);if(!l)return!1;const i=l.uv;if(!i)return!1;r.raycaster.setFromCamera(r.pointer.set(2*i.x-1,2*i.y-1),r.camera)}),[]);return o.useImperativeHandle(h,(()=>x.texture),[x]),o.createElement(o.Fragment,null,n.createPortal(o.createElement(f,{renderPriority:s,frames:p,fbo:x},e,o.createElement("group",{onPointerOver:()=>null})),O,{events:{compute:r||P,priority:d}}),o.createElement("primitive",i.default({object:x.texture},v)))}));function f({frames:e,renderPriority:r,children:t,fbo:a}){let u,l,i=0;return n.useFrame((r=>{(e===1/0||i<e)&&(u=r.gl.autoClear,l=r.gl.xr.enabled,r.gl.autoClear=!0,r.gl.xr.enabled=!1,r.gl.setRenderTarget(a),r.gl.render(r.scene,r.camera),r.gl.setRenderTarget(null),r.gl.autoClear=u,r.gl.xr.enabled=l,i++)}),r),o.createElement(o.Fragment,null,t)}exports.RenderTexture=s;
@@ -2,7 +2,7 @@ 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 { useThree, createPortal, useFrame } from '@react-three/fiber';
5
- import { useFBO } from './useFBO.js';
5
+ import { useFBO } from './Fbo.js';
6
6
 
7
7
  const RenderTexture = /* @__PURE__ */React.forwardRef(({
8
8
  children,
package/core/Stats.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@react-three/fiber"),r=require("stats.js"),n=require("../helpers/useEffectfulState.cjs.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function f(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c=f(e),a=u(r);exports.Stats=function({showPanel:e=0,className:r,parent:u}){const f=n.useEffectfulState((()=>new a.default),[]);return c.useEffect((()=>{if(f){const n=u&&u.current||document.body;f.showPanel(e),null==n||n.appendChild(f.dom),r&&f.dom.classList.add(...r.split(" ").filter((e=>e)));const c=t.addEffect((()=>f.begin())),a=t.addAfterEffect((()=>f.end()));return()=>{null==n||n.removeChild(f.dom),c(),a()}}}),[u,f,r,e]),null};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@react-three/fiber"),r=require("stats.js"),n=require("../helpers/useEffectfulState.cjs.js");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var f=c(e),l=u(r);exports.Stats=function({showPanel:e=0,className:r,parent:u}){const c=n.useEffectfulState((()=>new l.default),[]);return f.useEffect((()=>{if(c){const n=u&&u.current||document.body;c.showPanel(e),null==n||n.appendChild(c.dom);const f=(null!=r?r:"").split(" ").filter((e=>e));f.length&&c.dom.classList.add(...f);const l=t.addEffect((()=>c.begin())),s=t.addAfterEffect((()=>c.end()));return()=>{f.length&&c.dom.classList.remove(...f),null==n||n.removeChild(c.dom),l(),s()}}}),[u,c,r,e]),null};
package/core/Stats.js CHANGED
@@ -14,10 +14,12 @@ function Stats({
14
14
  const node = parent && parent.current || document.body;
15
15
  stats.showPanel(showPanel);
16
16
  node == null || node.appendChild(stats.dom);
17
- if (className) stats.dom.classList.add(...className.split(' ').filter(cls => cls));
17
+ const classNames = (className !== null && className !== void 0 ? className : '').split(' ').filter(cls => cls);
18
+ if (classNames.length) stats.dom.classList.add(...classNames);
18
19
  const begin = addEffect(() => stats.begin());
19
20
  const end = addAfterEffect(() => stats.end());
20
21
  return () => {
22
+ if (classNames.length) stats.dom.classList.remove(...classNames);
21
23
  node == null || node.removeChild(stats.dom);
22
24
  begin();
23
25
  end();
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@react-three/fiber"),r=require("stats-gl");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c=u(e),o=n(r);exports.StatsGl=function({className:e,parent:r,...n}){const u=t.useThree((e=>e.gl)),a=c.useMemo((()=>{const e=new o.default({...n});return e.init(u),e}),[u]);return c.useEffect((()=>{if(a){const n=r&&r.current||document.body;null==n||n.appendChild(a.dom),e&&a.container.classList.add(...e.split(" ").filter((e=>e)));const u=t.addAfterEffect((()=>a.update()));return()=>{null==n||n.removeChild(a.dom),u()}}}),[r,a,e]),null};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@react-three/fiber"),r=require("stats-gl");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var l=u(e),c=n(r);exports.StatsGl=function({className:e,parent:r,...n}){const u=t.useThree((e=>e.gl)),o=l.useMemo((()=>{const e=new c.default({...n});return e.init(u),e}),[u]);return l.useEffect((()=>{if(o){const n=r&&r.current||document.body;null==n||n.appendChild(o.dom);const u=(null!=e?e:"").split(" ").filter((e=>e));u.length&&o.dom.classList.add(...u);const l=t.addAfterEffect((()=>o.update()));return()=>{u.length&&o.dom.classList.remove(...u),null==n||n.removeChild(o.dom),l()}}}),[r,o,e]),null};
package/core/StatsGl.js CHANGED
@@ -19,9 +19,11 @@ function StatsGl({
19
19
  if (stats) {
20
20
  const node = parent && parent.current || document.body;
21
21
  node == null || node.appendChild(stats.dom);
22
- if (className) stats.container.classList.add(...className.split(' ').filter(cls => cls));
22
+ const classNames = (className !== null && className !== void 0 ? className : '').split(' ').filter(cls => cls);
23
+ if (classNames.length) stats.dom.classList.add(...classNames);
23
24
  const end = addAfterEffect(() => stats.update());
24
25
  return () => {
26
+ if (classNames.length) stats.dom.classList.remove(...classNames);
25
27
  node == null || node.removeChild(stats.dom);
26
28
  end();
27
29
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("three"),t=require("@react-three/fiber");function u(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 n=u(e);const o=e=>e===Object(e)&&!Array.isArray(e)&&"function"!=typeof e;function c(u,n){const c=t.useThree((e=>e.gl)),a=t.useLoader(r.TextureLoader,o(u)?Object.values(u):u);e.useLayoutEffect((()=>{null==n||n(a)}),[n]),e.useEffect((()=>{if("initTexture"in c){let e=[];Array.isArray(a)?e=a:a instanceof r.Texture?e=[a]:o(a)&&(e=Object.values(a)),e.forEach((e=>{e instanceof r.Texture&&c.initTexture(e)}))}}),[c,a]);return e.useMemo((()=>{if(o(u)){const e={};let r=0;for(const t in u)e[t]=a[r++];return console.log("keyed",e),e}return a}),[u,a])}c.preload=e=>t.useLoader.preload(r.TextureLoader,e),c.clear=e=>t.useLoader.clear(r.TextureLoader,e);exports.IsObject=o,exports.Texture=({children:e,input:r,onLoad:t})=>{const u=c(r,t);return n.createElement(n.Fragment,null,null==e?void 0:e(u))},exports.useTexture=c;
@@ -1,14 +1,20 @@
1
- import { Texture } from 'three';
1
+ import * as React from 'react';
2
+ import { Texture as _Texture } from 'three';
2
3
  export declare const IsObject: (url: unknown) => url is Record<string, string>;
3
- type TextureArray<T> = T extends string[] ? Texture[] : never;
4
+ type TextureArray<T> = T extends string[] ? _Texture[] : never;
4
5
  type TextureRecord<T> = T extends Record<string, string> ? {
5
- [key in keyof T]: Texture;
6
+ [key in keyof T]: _Texture;
6
7
  } : never;
7
- type SingleTexture<T> = T extends string ? Texture : never;
8
+ type SingleTexture<T> = T extends string ? _Texture : never;
8
9
  export type MappedTextureType<T extends string[] | string | Record<string, string>> = TextureArray<T> | TextureRecord<T> | SingleTexture<T>;
9
10
  export declare function useTexture<Url extends string[] | string | Record<string, string>>(input: Url, onLoad?: (texture: MappedTextureType<Url>) => void): MappedTextureType<Url>;
10
11
  export declare namespace useTexture {
11
12
  var preload: (url: string | string[]) => undefined;
12
13
  var clear: (input: string | string[]) => void;
13
14
  }
15
+ export declare const Texture: ({ children, input, onLoad, }: {
16
+ children?: ((texture: ReturnType<typeof useTexture>) => React.ReactNode) | undefined;
17
+ input: Parameters<typeof useTexture>[0];
18
+ onLoad?: Parameters<typeof useTexture>[1];
19
+ }) => React.JSX.Element;
14
20
  export {};
@@ -1,6 +1,7 @@
1
- import { TextureLoader, Texture } from 'three';
2
- import { useThree, useLoader } from '@react-three/fiber';
1
+ import * as React from 'react';
3
2
  import { useLayoutEffect, useEffect, useMemo } from 'react';
3
+ import { TextureLoader, Texture as Texture$1 } from 'three';
4
+ import { useThree, useLoader } from '@react-three/fiber';
4
5
 
5
6
  const IsObject = url => url === Object(url) && !Array.isArray(url) && typeof url !== 'function';
6
7
  function useTexture(input, onLoad) {
@@ -18,13 +19,13 @@ function useTexture(input, onLoad) {
18
19
  let textureArray = [];
19
20
  if (Array.isArray(textures)) {
20
21
  textureArray = textures;
21
- } else if (textures instanceof Texture) {
22
+ } else if (textures instanceof Texture$1) {
22
23
  textureArray = [textures];
23
24
  } else if (IsObject(textures)) {
24
25
  textureArray = Object.values(textures);
25
26
  }
26
27
  textureArray.forEach(texture => {
27
- if (texture instanceof Texture) {
28
+ if (texture instanceof Texture$1) {
28
29
  gl.initTexture(texture);
29
30
  }
30
31
  });
@@ -35,6 +36,7 @@ function useTexture(input, onLoad) {
35
36
  const keyed = {};
36
37
  let i = 0;
37
38
  for (const key in input) keyed[key] = textures[i++];
39
+ console.log('keyed', keyed);
38
40
  return keyed;
39
41
  } else {
40
42
  return textures;
@@ -45,4 +47,15 @@ function useTexture(input, onLoad) {
45
47
  useTexture.preload = url => useLoader.preload(TextureLoader, url);
46
48
  useTexture.clear = input => useLoader.clear(TextureLoader, input);
47
49
 
48
- export { IsObject, useTexture };
50
+ //
51
+
52
+ const Texture = ({
53
+ children,
54
+ input,
55
+ onLoad
56
+ }) => {
57
+ const ret = useTexture(input, onLoad);
58
+ return /*#__PURE__*/React.createElement(React.Fragment, null, children == null ? void 0 : children(ret));
59
+ };
60
+
61
+ export { IsObject, Texture, useTexture };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react"),e=require("@react-three/fiber"),i=require("three");function s(t){if(t&&t.__esModule)return t;var e=Object.create(null);return t&&Object.keys(t).forEach((function(i){if("default"!==i){var s=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(e,i,s.get?s:{enumerable:!0,get:function(){return t[i]}})}})),e.default=t,Object.freeze(e)}var a=s(t);const h=t=>Math.sqrt(1-Math.pow(t-1,2));class r{constructor({size:t=256,maxAge:e=750,radius:i=.3,intensity:s=.2,interpolate:a=0,smoothing:r=0,minForce:n=.3,blend:c="screen",ease:o=h}={}){this.size=t,this.maxAge=e,this.radius=i,this.intensity=s,this.ease=o,this.interpolate=a,this.smoothing=r,this.minForce=n,this.blend=c,this.trail=[],this.force=0,this.initTexture()}initTexture(){this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=this.size;const t=this.canvas.getContext("2d");if(null===t)throw new Error("2D not available");this.ctx=t,this.ctx.fillStyle="black",this.ctx.fillRect(0,0,this.canvas.width,this.canvas.height),this.texture=new i.Texture(this.canvas),this.canvas.id="touchTexture",this.canvas.style.width=this.canvas.style.height=`${this.canvas.width}px`}update(t){this.clear(),this.trail.forEach(((e,i)=>{e.age+=1e3*t,e.age>this.maxAge&&this.trail.splice(i,1)})),this.trail.length||(this.force=0),this.trail.forEach((t=>{this.drawTouch(t)})),this.texture.needsUpdate=!0}clear(){this.ctx.globalCompositeOperation="source-over",this.ctx.fillStyle="black",this.ctx.fillRect(0,0,this.canvas.width,this.canvas.height)}addTouch(t){const e=this.trail[this.trail.length-1];if(e){const i=e.x-t.x,s=e.y-t.y,a=i*i+s*s,h=Math.max(this.minForce,Math.min(1e4*a,1));if(this.force=function(t,e,i=.9){return e*i+t*(1-i)}(h,this.force,this.smoothing),this.interpolate){const t=Math.ceil(a/Math.pow(.5*this.radius/this.interpolate,2));if(t>1)for(let a=1;a<t;a++)this.trail.push({x:e.x-i/t*a,y:e.y-s/t*a,age:0,force:h})}}this.trail.push({x:t.x,y:t.y,age:0,force:this.force})}drawTouch(t){const e={x:t.x*this.size,y:(1-t.y)*this.size};let i=1;i=t.age<.3*this.maxAge?this.ease(t.age/(.3*this.maxAge)):this.ease(1-(t.age-.3*this.maxAge)/(.7*this.maxAge)),i*=t.force,this.ctx.globalCompositeOperation=this.blend;const s=this.size*this.radius*i,a=this.ctx.createRadialGradient(e.x,e.y,Math.max(0,.25*s),e.x,e.y,Math.max(0,s));a.addColorStop(0,`rgba(255, 255, 255, ${this.intensity})`),a.addColorStop(1,"rgba(0, 0, 0, 0.0)"),this.ctx.beginPath(),this.ctx.fillStyle=a,this.ctx.arc(e.x,e.y,Math.max(0,s),0,2*Math.PI),this.ctx.fill()}}function n(i={}){const{size:s,maxAge:a,radius:h,intensity:n,interpolate:c,smoothing:o,minForce:l,blend:u,ease:x}=i,d=t.useMemo((()=>new r(i)),[s,a,h,n,c,o,l,u,x]);e.useFrame(((t,e)=>{d.update(e)}));const f=t.useCallback((t=>d.addTouch(t.uv)),[d]);return[d.texture,f]}exports.TrailTexture=({children:t,...e})=>{const i=n(e);return a.createElement(a.Fragment,null,null==t?void 0:t(i))},exports.useTrailTexture=n;
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { Texture } from 'three';
2
3
  type TrailConfig = {
3
4
  size?: number;
@@ -11,4 +12,7 @@ type TrailConfig = {
11
12
  ease?: (t: number) => number;
12
13
  };
13
14
  export declare function useTrailTexture(config?: Partial<TrailConfig>): [Texture, (ThreeEvent: any) => void];
15
+ export declare const TrailTexture: ({ children, ...config }: {
16
+ children?: ((texture: [Texture, (ThreeEvent: any) => void]) => React.ReactNode) | undefined;
17
+ } & TrailConfig) => React.JSX.Element;
14
18
  export {};
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { useMemo, useCallback } from 'react';
2
3
  import { useFrame } from '@react-three/fiber';
3
4
  import { Texture } from 'three';
@@ -9,7 +10,7 @@ function smoothAverage(current, measurement, smoothing = 0.9) {
9
10
 
10
11
  // default ease
11
12
  const easeCircleOut = x => Math.sqrt(1 - Math.pow(x - 1, 2));
12
- class TrailTexture {
13
+ class TrailTextureImpl {
13
14
  constructor({
14
15
  size = 256,
15
16
  maxAge = 750,
@@ -139,10 +140,20 @@ function useTrailTexture(config = {}) {
139
140
  blend,
140
141
  ease
141
142
  } = config;
142
- const trail = useMemo(() => new TrailTexture(config), [size, maxAge, radius, intensity, interpolate, smoothing, minForce, blend, ease]);
143
+ const trail = useMemo(() => new TrailTextureImpl(config), [size, maxAge, radius, intensity, interpolate, smoothing, minForce, blend, ease]);
143
144
  useFrame((_, delta) => void trail.update(delta));
144
145
  const onMove = useCallback(e => trail.addTouch(e.uv), [trail]);
145
146
  return [trail.texture, onMove];
146
147
  }
147
148
 
148
- export { useTrailTexture };
149
+ //
150
+
151
+ const TrailTexture = ({
152
+ children,
153
+ ...config
154
+ }) => {
155
+ const ret = useTrailTexture(config);
156
+ return /*#__PURE__*/React.createElement(React.Fragment, null, children == null ? void 0 : children(ret));
157
+ };
158
+
159
+ export { TrailTexture, useTrailTexture };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("three"),r=require("@react-three/fiber"),n=require("suspend-react");function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var u,i,c=o(e),s=o(t);const a="undefined"!=typeof window&&"function"==typeof(null==(u=window.document)?void 0:u.createElement)&&"string"==typeof(null==(i=window.navigator)?void 0:i.userAgent);let l=null;function d(t,{unsuspend:u="loadedmetadata",start:i=!0,crossOrigin:c="anonymous",muted:d=!0,loop:f=!0,hls:p={},...m}={}){const g=new URL("string"==typeof t?t:"",window.location.href),v=e.useRef(null),w=e.useRef(null),y=r.useThree((e=>e.gl)),h=n.suspend((()=>new Promise((async e=>{const r=Object.assign(document.createElement("video"),{src:"string"==typeof t&&t||void 0,srcObject:t instanceof MediaStream&&t||void 0,crossOrigin:c,loop:f,muted:d,...m});if(w.current=r,"string"==typeof t){const e=v.current=await async function(e,t){var r;return a&&e.pathname.endsWith(".m3u8")&&(null!==(r=l)&&void 0!==r||(l=await Promise.resolve().then((function(){return o(require("hls.js"))}))),l.default.isSupported())?new l.default({...t}):null}(g,p);e?(e.attachMedia(r),e.on("hlsMediaAttached",(()=>{e.loadSource(t)}))):r.src=t}else t instanceof MediaStream&&(r.srcObject=t);const n=new s.VideoTexture(r);"colorSpace"in n?n.colorSpace=y.outputColorSpace:n.encoding=y.outputEncoding,r.addEventListener(u,(()=>e(n)))}))),[t]);return e.useEffect((()=>(i&&h.image.play(),()=>{v.current&&(v.current.destroy(),v.current=null)})),[h,i]),h}exports.VideoTexture=({children:e,src:t,...r})=>{const n=d(t,r);return c.createElement(c.Fragment,null,null==e?void 0:e(n))},exports.useVideoTexture=d;
@@ -0,0 +1,18 @@
1
+ import * as React from 'react';
2
+ import * as THREE from 'three';
3
+ import type { HlsConfig } from 'hls.js';
4
+ type Config = {
5
+ unsuspend?: 'canplay' | 'canplaythrough' | 'loadstart' | 'loadedmetadata';
6
+ start?: boolean;
7
+ hls?: Partial<HlsConfig>;
8
+ } & Partial<Omit<HTMLVideoElement, 'children'>>;
9
+ export declare function useVideoTexture(src: string | MediaStream, { unsuspend, start, crossOrigin, muted, loop, hls, ...videoProps }?: Config): THREE.VideoTexture;
10
+ export declare const VideoTexture: ({ children, src, ...config }: {
11
+ children?: ((texture: ReturnType<typeof useVideoTexture>) => React.ReactNode) | undefined;
12
+ src: Parameters<typeof useVideoTexture>[0];
13
+ } & {
14
+ unsuspend?: "canplay" | "canplaythrough" | "loadedmetadata" | "loadstart" | undefined;
15
+ start?: boolean | undefined;
16
+ hls?: Partial<HlsConfig> | undefined;
17
+ } & Partial<Omit<HTMLVideoElement, "children">>) => React.JSX.Element;
18
+ export {};
@@ -1,5 +1,6 @@
1
- import * as THREE from 'three';
1
+ import * as React from 'react';
2
2
  import { useRef, useEffect } from 'react';
3
+ import * as THREE from 'three';
3
4
  import { useThree } from '@react-three/fiber';
4
5
  import { suspend } from 'suspend-react';
5
6
 
@@ -18,37 +19,27 @@ async function getHLS(url, config) {
18
19
  }
19
20
  return null;
20
21
  }
21
- function useVideoTexture(src, props) {
22
- const {
23
- unsuspend,
24
- start,
25
- crossOrigin,
26
- muted,
27
- loop,
28
- hls,
29
- ...rest
30
- } = {
31
- unsuspend: 'loadedmetadata',
32
- crossOrigin: 'Anonymous',
33
- muted: true,
34
- loop: true,
35
- start: true,
36
- playsInline: true,
37
- hls: {},
38
- ...props
39
- };
22
+ function useVideoTexture(src, {
23
+ unsuspend = 'loadedmetadata',
24
+ start = true,
25
+ crossOrigin = 'anonymous',
26
+ muted = true,
27
+ loop = true,
28
+ hls = {},
29
+ ...videoProps
30
+ } = {}) {
40
31
  const url = new URL(typeof src === 'string' ? src : '', window.location.href);
41
32
  const hlsRef = useRef(null);
42
33
  const videoRef = useRef(null);
43
34
  const gl = useThree(state => state.gl);
44
- const texture = suspend(() => new Promise(async (res, rej) => {
35
+ const texture = suspend(() => new Promise(async res => {
45
36
  const video = Object.assign(document.createElement('video'), {
46
37
  src: typeof src === 'string' && src || undefined,
47
38
  srcObject: src instanceof MediaStream && src || undefined,
48
39
  crossOrigin,
49
40
  loop,
50
41
  muted,
51
- ...rest
42
+ ...videoProps
52
43
  });
53
44
  videoRef.current = video;
54
45
 
@@ -82,4 +73,15 @@ function useVideoTexture(src, props) {
82
73
  return texture;
83
74
  }
84
75
 
85
- export { useVideoTexture };
76
+ //
77
+
78
+ const VideoTexture = ({
79
+ children,
80
+ src,
81
+ ...config
82
+ }) => {
83
+ const ret = useVideoTexture(src, config);
84
+ return /*#__PURE__*/React.createElement(React.Fragment, null, children == null ? void 0 : children(ret));
85
+ };
86
+
87
+ export { VideoTexture, useVideoTexture };
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("./ScreenSizer.cjs.js"),t=require("./QuadraticBezierLine.cjs.js"),o=require("./CubicBezierLine.cjs.js"),i=require("./CatmullRomLine.cjs.js"),a=require("./Line.cjs.js"),u=require("./PositionalAudio.cjs.js"),c=require("./Text.cjs.js"),n=require("./Text3D.cjs.js"),p=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),l=require("./Image.cjs.js"),x=require("./Edges.cjs.js"),q=require("./Outlines.cjs.js"),d=require("./Trail.cjs.js"),m=require("./Sampler.cjs.js"),h=require("./ComputedAttribute.cjs.js"),C=require("./Clone.cjs.js"),S=require("./MarchingCubes.cjs.js"),M=require("./Decal.cjs.js"),T=require("./Svg.cjs.js"),P=require("./Gltf.cjs.js"),b=require("./AsciiRenderer.cjs.js"),f=require("./Splat.cjs.js"),g=require("./OrthographicCamera.cjs.js"),B=require("./PerspectiveCamera.cjs.js"),v=require("./CubeCamera.cjs.js"),A=require("./DeviceOrientationControls.cjs.js"),L=require("./FlyControls.cjs.js"),R=require("./MapControls.cjs.js"),F=require("./OrbitControls.cjs.js"),G=require("./TrackballControls.cjs.js"),E=require("./ArcballControls.cjs.js"),D=require("./TransformControls.cjs.js"),k=require("./PointerLockControls.cjs.js"),w=require("./FirstPersonControls.cjs.js"),z=require("./CameraControls.cjs.js"),I=require("./MotionPathControls.cjs.js"),O=require("./GizmoHelper.cjs.js"),y=require("./GizmoViewcube.cjs.js"),H=require("./GizmoViewport.cjs.js"),V=require("./Grid.cjs.js"),W=require("./useCubeTexture.cjs.js"),Q=require("./useFBX.cjs.js"),X=require("./useGLTF.cjs.js"),K=require("./useKTX2.cjs.js"),N=require("./useProgress.cjs.js"),U=require("./useTexture.cjs.js"),_=require("./useVideoTexture.cjs.js"),J=require("./useFont.cjs.js"),Y=require("./useSpriteLoader.cjs.js"),Z=require("./Helper.cjs.js"),$=require("./Stats.cjs.js"),ee=require("./StatsGl.cjs.js"),re=require("./useDepthBuffer.cjs.js"),se=require("./useAspect.cjs.js"),te=require("./useCamera.cjs.js"),oe=require("./useDetectGPU.cjs.js"),ie=require("./useBVH.cjs.js"),ae=require("./useContextBridge.cjs.js"),ue=require("./useAnimations.cjs.js"),ce=require("./useFBO.cjs.js"),ne=require("./useIntersect.cjs.js"),pe=require("./useBoxProjectedEnv.cjs.js"),je=require("./BBAnchor.cjs.js"),le=require("./useTrailTexture.cjs.js"),xe=require("./useCubeCamera.cjs.js"),qe=require("./Example.cjs.js"),de=require("./SpriteAnimator.cjs.js"),me=require("./CurveModifier.cjs.js"),he=require("./MeshDistortMaterial.cjs.js"),Ce=require("./MeshWobbleMaterial.cjs.js"),Se=require("./MeshReflectorMaterial.cjs.js"),Me=require("./MeshRefractionMaterial.cjs.js"),Te=require("./MeshTransmissionMaterial.cjs.js"),Pe=require("./MeshDiscardMaterial.cjs.js"),be=require("./PointMaterial.cjs.js"),fe=require("./shaderMaterial.cjs.js"),ge=require("./softShadows.cjs.js"),Be=require("./shapes.cjs.js"),ve=require("./RoundedBox.cjs.js"),Ae=require("./ScreenQuad.cjs.js"),Le=require("./Center.cjs.js"),Re=require("./Resize.cjs.js"),Fe=require("./Bounds.cjs.js"),Ge=require("./CameraShake.cjs.js"),Ee=require("./Float.cjs.js"),De=require("./Stage.cjs.js"),ke=require("./Backdrop.cjs.js"),we=require("./Shadow.cjs.js"),ze=require("./Caustics.cjs.js"),Ie=require("./ContactShadows.cjs.js"),Oe=require("./AccumulativeShadows.cjs.js"),ye=require("./Reflector.cjs.js"),He=require("./SpotLight.cjs.js"),Ve=require("./Environment.cjs.js"),We=require("./Lightformer.cjs.js"),Qe=require("./Sky.cjs.js"),Xe=require("./Stars.cjs.js"),Ke=require("./Cloud.cjs.js"),Ne=require("./Sparkles.cjs.js"),Ue=require("./useEnvironment.cjs.js"),_e=require("./useMatcapTexture.cjs.js"),Je=require("./useNormalTexture.cjs.js"),Ye=require("./Wireframe.cjs.js"),Ze=require("./ShadowAlpha.cjs.js"),$e=require("./Points.cjs.js"),er=require("./Instances.cjs.js"),rr=require("./Segments.cjs.js"),sr=require("./Detailed.cjs.js"),tr=require("./Preload.cjs.js"),or=require("./BakeShadows.cjs.js"),ir=require("./meshBounds.cjs.js"),ar=require("./AdaptiveDpr.cjs.js"),ur=require("./AdaptiveEvents.cjs.js"),cr=require("./PerformanceMonitor.cjs.js"),nr=require("./RenderTexture.cjs.js"),pr=require("./RenderCubeTexture.cjs.js"),jr=require("./Mask.cjs.js"),lr=require("./Hud.cjs.js"),xr=require("./Fisheye.cjs.js"),qr=require("./MeshPortalMaterial.cjs.js"),dr=require("./calculateScaleFactor.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("three"),require("@react-three/fiber"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("../helpers/constants.cjs.js"),require("meshline"),require("camera-controls"),require("maath"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("stats-gl"),require("detect-gpu"),require("three-mesh-bvh"),require("react-composer"),require("../helpers/deprecated.cjs.js"),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("@monogrid/gainmap-js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("uuid"),require("../materials/WireframeMaterial.cjs.js"),exports.Billboard=e.Billboard,exports.ScreenSpace=r.ScreenSpace,exports.ScreenSizer=s.ScreenSizer,exports.QuadraticBezierLine=t.QuadraticBezierLine,exports.CubicBezierLine=o.CubicBezierLine,exports.CatmullRomLine=i.CatmullRomLine,exports.Line=a.Line,exports.PositionalAudio=u.PositionalAudio,exports.Text=c.Text,exports.Text3D=n.Text3D,exports.Effects=p.Effects,exports.isWebGL2Available=p.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.GradientType=j.GradientType,exports.Image=l.Image,exports.Edges=x.Edges,exports.Outlines=q.Outlines,exports.Trail=d.Trail,exports.useTrail=d.useTrail,exports.Sampler=m.Sampler,exports.useSurfaceSampler=m.useSurfaceSampler,exports.ComputedAttribute=h.ComputedAttribute,exports.Clone=C.Clone,exports.MarchingCube=S.MarchingCube,exports.MarchingCubes=S.MarchingCubes,exports.MarchingPlane=S.MarchingPlane,exports.Decal=M.Decal,exports.Svg=T.Svg,exports.Gltf=P.Gltf,exports.AsciiRenderer=b.AsciiRenderer,exports.Splat=f.Splat,exports.OrthographicCamera=g.OrthographicCamera,exports.PerspectiveCamera=B.PerspectiveCamera,exports.CubeCamera=v.CubeCamera,exports.DeviceOrientationControls=A.DeviceOrientationControls,exports.FlyControls=L.FlyControls,exports.MapControls=R.MapControls,exports.OrbitControls=F.OrbitControls,exports.TrackballControls=G.TrackballControls,exports.ArcballControls=E.ArcballControls,exports.TransformControls=D.TransformControls,exports.PointerLockControls=k.PointerLockControls,exports.FirstPersonControls=w.FirstPersonControls,exports.CameraControls=z.CameraControls,exports.MotionPathControls=I.MotionPathControls,exports.useMotion=I.useMotion,exports.GizmoHelper=O.GizmoHelper,exports.useGizmoContext=O.useGizmoContext,exports.GizmoViewcube=y.GizmoViewcube,exports.GizmoViewport=H.GizmoViewport,exports.Grid=V.Grid,exports.useCubeTexture=W.useCubeTexture,exports.useFBX=Q.useFBX,exports.useGLTF=X.useGLTF,exports.useKTX2=K.useKTX2,exports.useProgress=N.useProgress,exports.IsObject=U.IsObject,exports.useTexture=U.useTexture,exports.useVideoTexture=_.useVideoTexture,exports.useFont=J.useFont,exports.calculateAspectRatio=Y.calculateAspectRatio,exports.checkIfFrameIsEmpty=Y.checkIfFrameIsEmpty,exports.getFirstItem=Y.getFirstItem,exports.useSpriteLoader=Y.useSpriteLoader,exports.Helper=Z.Helper,exports.useHelper=Z.useHelper,exports.Stats=$.Stats,exports.StatsGl=ee.StatsGl,exports.useDepthBuffer=re.useDepthBuffer,exports.useAspect=se.useAspect,exports.useCamera=te.useCamera,exports.useDetectGPU=oe.useDetectGPU,exports.Bvh=ie.Bvh,exports.useBVH=ie.useBVH,exports.useContextBridge=ae.useContextBridge,exports.useAnimations=ue.useAnimations,exports.useFBO=ce.useFBO,exports.useIntersect=ne.useIntersect,exports.useBoxProjectedEnv=pe.useBoxProjectedEnv,exports.BBAnchor=je.BBAnchor,exports.useTrailTexture=le.useTrailTexture,exports.useCubeCamera=xe.useCubeCamera,exports.Example=qe.Example,exports.SpriteAnimator=de.SpriteAnimator,exports.useSpriteAnimator=de.useSpriteAnimator,exports.CurveModifier=me.CurveModifier,exports.MeshDistortMaterial=he.MeshDistortMaterial,exports.MeshWobbleMaterial=Ce.MeshWobbleMaterial,exports.MeshReflectorMaterial=Se.MeshReflectorMaterial,exports.MeshRefractionMaterial=Me.MeshRefractionMaterial,exports.MeshTransmissionMaterial=Te.MeshTransmissionMaterial,exports.MeshDiscardMaterial=Pe.MeshDiscardMaterial,exports.PointMaterial=be.PointMaterial,exports.PointMaterialImpl=be.PointMaterialImpl,exports.shaderMaterial=fe.shaderMaterial,exports.SoftShadows=ge.SoftShadows,exports.Box=Be.Box,exports.Capsule=Be.Capsule,exports.Circle=Be.Circle,exports.Cone=Be.Cone,exports.Cylinder=Be.Cylinder,exports.Dodecahedron=Be.Dodecahedron,exports.Extrude=Be.Extrude,exports.Icosahedron=Be.Icosahedron,exports.Lathe=Be.Lathe,exports.Octahedron=Be.Octahedron,exports.Plane=Be.Plane,exports.Polyhedron=Be.Polyhedron,exports.Ring=Be.Ring,exports.Shape=Be.Shape,exports.Sphere=Be.Sphere,exports.Tetrahedron=Be.Tetrahedron,exports.Torus=Be.Torus,exports.TorusKnot=Be.TorusKnot,exports.Tube=Be.Tube,exports.RoundedBox=ve.RoundedBox,exports.ScreenQuad=Ae.ScreenQuad,exports.Center=Le.Center,exports.Resize=Re.Resize,exports.Bounds=Fe.Bounds,exports.useBounds=Fe.useBounds,exports.CameraShake=Ge.CameraShake,exports.Float=Ee.Float,exports.Stage=De.Stage,exports.Backdrop=ke.Backdrop,exports.Shadow=we.Shadow,exports.Caustics=ze.Caustics,exports.ContactShadows=Ie.ContactShadows,exports.AccumulativeShadows=Oe.AccumulativeShadows,exports.RandomizedLight=Oe.RandomizedLight,exports.accumulativeContext=Oe.accumulativeContext,exports.Reflector=ye.Reflector,exports.SpotLight=He.SpotLight,exports.SpotLightShadow=He.SpotLightShadow,exports.Environment=Ve.Environment,exports.EnvironmentCube=Ve.EnvironmentCube,exports.EnvironmentMap=Ve.EnvironmentMap,exports.EnvironmentPortal=Ve.EnvironmentPortal,exports.Lightformer=We.Lightformer,exports.Sky=Qe.Sky,exports.calcPosFromAngles=Qe.calcPosFromAngles,exports.Stars=Xe.Stars,exports.Cloud=Ke.Cloud,exports.CloudInstance=Ke.CloudInstance,exports.Clouds=Ke.Clouds,exports.Sparkles=Ne.Sparkles,exports.useEnvironment=Ue.useEnvironment,exports.useMatcapTexture=_e.useMatcapTexture,exports.useNormalTexture=Je.useNormalTexture,exports.Wireframe=Ye.Wireframe,exports.ShadowAlpha=Ze.ShadowAlpha,exports.Point=$e.Point,exports.Points=$e.Points,exports.PointsBuffer=$e.PointsBuffer,exports.PositionPoint=$e.PositionPoint,exports.Instance=er.Instance,exports.Instances=er.Instances,exports.Merged=er.Merged,exports.Segment=rr.Segment,exports.SegmentObject=rr.SegmentObject,exports.Segments=rr.Segments,exports.Detailed=sr.Detailed,exports.Preload=tr.Preload,exports.BakeShadows=or.BakeShadows,exports.meshBounds=ir.meshBounds,exports.AdaptiveDpr=ar.AdaptiveDpr,exports.AdaptiveEvents=ur.AdaptiveEvents,exports.PerformanceMonitor=cr.PerformanceMonitor,exports.usePerformanceMonitor=cr.usePerformanceMonitor,exports.RenderTexture=nr.RenderTexture,exports.RenderCubeTexture=pr.RenderCubeTexture,exports.Mask=jr.Mask,exports.useMask=jr.useMask,exports.Hud=lr.Hud,exports.Fisheye=xr.Fisheye,exports.MeshPortalMaterial=qr.MeshPortalMaterial,exports.calculateScaleFactor=dr.calculateScaleFactor;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./ScreenSpace.cjs.js"),s=require("./ScreenSizer.cjs.js"),t=require("./QuadraticBezierLine.cjs.js"),o=require("./CubicBezierLine.cjs.js"),i=require("./CatmullRomLine.cjs.js"),a=require("./Line.cjs.js"),u=require("./PositionalAudio.cjs.js"),c=require("./Text.cjs.js"),p=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),x=require("./Image.cjs.js"),l=require("./Edges.cjs.js"),d=require("./Outlines.cjs.js"),q=require("./Trail.cjs.js"),m=require("./Sampler.cjs.js"),h=require("./ComputedAttribute.cjs.js"),C=require("./Clone.cjs.js"),S=require("./MarchingCubes.cjs.js"),M=require("./Decal.cjs.js"),T=require("./Svg.cjs.js"),b=require("./Gltf.cjs.js"),P=require("./AsciiRenderer.cjs.js"),f=require("./Splat.cjs.js"),g=require("./OrthographicCamera.cjs.js"),B=require("./PerspectiveCamera.cjs.js"),v=require("./CubeCamera.cjs.js"),A=require("./DeviceOrientationControls.cjs.js"),F=require("./FlyControls.cjs.js"),L=require("./MapControls.cjs.js"),R=require("./OrbitControls.cjs.js"),G=require("./TrackballControls.cjs.js"),D=require("./ArcballControls.cjs.js"),E=require("./TransformControls.cjs.js"),k=require("./PointerLockControls.cjs.js"),w=require("./FirstPersonControls.cjs.js"),z=require("./CameraControls.cjs.js"),I=require("./MotionPathControls.cjs.js"),O=require("./GizmoHelper.cjs.js"),y=require("./GizmoViewcube.cjs.js"),H=require("./GizmoViewport.cjs.js"),V=require("./Grid.cjs.js"),W=require("./CubeTexture.cjs.js"),K=require("./Fbx.cjs.js"),Q=require("./Ktx2.cjs.js"),N=require("./Progress.cjs.js"),U=require("./Texture.cjs.js"),X=require("./VideoTexture.cjs.js"),_=require("./useFont.cjs.js"),J=require("./useSpriteLoader.cjs.js"),Y=require("./Helper.cjs.js"),Z=require("./Stats.cjs.js"),$=require("./StatsGl.cjs.js"),ee=require("./useDepthBuffer.cjs.js"),re=require("./useAspect.cjs.js"),se=require("./useCamera.cjs.js"),te=require("./DetectGPU.cjs.js"),oe=require("./Bvh.cjs.js"),ie=require("./useContextBridge.cjs.js"),ae=require("./useAnimations.cjs.js"),ue=require("./Fbo.cjs.js"),ce=require("./useIntersect.cjs.js"),pe=require("./useBoxProjectedEnv.cjs.js"),ne=require("./BBAnchor.cjs.js"),je=require("./TrailTexture.cjs.js"),xe=require("./Example.cjs.js"),le=require("./SpriteAnimator.cjs.js"),de=require("./CurveModifier.cjs.js"),qe=require("./MeshDistortMaterial.cjs.js"),me=require("./MeshWobbleMaterial.cjs.js"),he=require("./MeshReflectorMaterial.cjs.js"),Ce=require("./MeshRefractionMaterial.cjs.js"),Se=require("./MeshTransmissionMaterial.cjs.js"),Me=require("./MeshDiscardMaterial.cjs.js"),Te=require("./PointMaterial.cjs.js"),be=require("./shaderMaterial.cjs.js"),Pe=require("./softShadows.cjs.js"),fe=require("./shapes.cjs.js"),ge=require("./RoundedBox.cjs.js"),Be=require("./ScreenQuad.cjs.js"),ve=require("./Center.cjs.js"),Ae=require("./Resize.cjs.js"),Fe=require("./Bounds.cjs.js"),Le=require("./CameraShake.cjs.js"),Re=require("./Float.cjs.js"),Ge=require("./Stage.cjs.js"),De=require("./Backdrop.cjs.js"),Ee=require("./Shadow.cjs.js"),ke=require("./Caustics.cjs.js"),we=require("./ContactShadows.cjs.js"),ze=require("./AccumulativeShadows.cjs.js"),Ie=require("./Reflector.cjs.js"),Oe=require("./SpotLight.cjs.js"),ye=require("./Environment.cjs.js"),He=require("./Lightformer.cjs.js"),Ve=require("./Sky.cjs.js"),We=require("./Stars.cjs.js"),Ke=require("./Cloud.cjs.js"),Qe=require("./Sparkles.cjs.js"),Ne=require("./useEnvironment.cjs.js"),Ue=require("./MatcapTexture.cjs.js"),Xe=require("./NormalTexture.cjs.js"),_e=require("./Wireframe.cjs.js"),Je=require("./ShadowAlpha.cjs.js"),Ye=require("./Points.cjs.js"),Ze=require("./Instances.cjs.js"),$e=require("./Segments.cjs.js"),er=require("./Detailed.cjs.js"),rr=require("./Preload.cjs.js"),sr=require("./BakeShadows.cjs.js"),tr=require("./meshBounds.cjs.js"),or=require("./AdaptiveDpr.cjs.js"),ir=require("./AdaptiveEvents.cjs.js"),ar=require("./PerformanceMonitor.cjs.js"),ur=require("./RenderTexture.cjs.js"),cr=require("./RenderCubeTexture.cjs.js"),pr=require("./Mask.cjs.js"),nr=require("./Hud.cjs.js"),jr=require("./Fisheye.cjs.js"),xr=require("./MeshPortalMaterial.cjs.js"),lr=require("./calculateScaleFactor.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("three"),require("@react-three/fiber"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("../helpers/constants.cjs.js"),require("meshline"),require("camera-controls"),require("maath"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("stats-gl"),require("detect-gpu"),require("three-mesh-bvh"),require("react-composer"),require("../helpers/deprecated.cjs.js"),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("@monogrid/gainmap-js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("uuid"),require("../materials/WireframeMaterial.cjs.js"),exports.Billboard=e.Billboard,exports.ScreenSpace=r.ScreenSpace,exports.ScreenSizer=s.ScreenSizer,exports.QuadraticBezierLine=t.QuadraticBezierLine,exports.CubicBezierLine=o.CubicBezierLine,exports.CatmullRomLine=i.CatmullRomLine,exports.Line=a.Line,exports.PositionalAudio=u.PositionalAudio,exports.Text=c.Text,exports.Text3D=p.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.GradientType=j.GradientType,exports.Image=x.Image,exports.Edges=l.Edges,exports.Outlines=d.Outlines,exports.Trail=q.Trail,exports.useTrail=q.useTrail,exports.Sampler=m.Sampler,exports.useSurfaceSampler=m.useSurfaceSampler,exports.ComputedAttribute=h.ComputedAttribute,exports.Clone=C.Clone,exports.MarchingCube=S.MarchingCube,exports.MarchingCubes=S.MarchingCubes,exports.MarchingPlane=S.MarchingPlane,exports.Decal=M.Decal,exports.Svg=T.Svg,exports.Gltf=b.Gltf,exports.useGLTF=b.useGLTF,exports.AsciiRenderer=P.AsciiRenderer,exports.Splat=f.Splat,exports.OrthographicCamera=g.OrthographicCamera,exports.PerspectiveCamera=B.PerspectiveCamera,exports.CubeCamera=v.CubeCamera,exports.useCubeCamera=v.useCubeCamera,exports.DeviceOrientationControls=A.DeviceOrientationControls,exports.FlyControls=F.FlyControls,exports.MapControls=L.MapControls,exports.OrbitControls=R.OrbitControls,exports.TrackballControls=G.TrackballControls,exports.ArcballControls=D.ArcballControls,exports.TransformControls=E.TransformControls,exports.PointerLockControls=k.PointerLockControls,exports.FirstPersonControls=w.FirstPersonControls,exports.CameraControls=z.CameraControls,exports.MotionPathControls=I.MotionPathControls,exports.useMotion=I.useMotion,exports.GizmoHelper=O.GizmoHelper,exports.useGizmoContext=O.useGizmoContext,exports.GizmoViewcube=y.GizmoViewcube,exports.GizmoViewport=H.GizmoViewport,exports.Grid=V.Grid,exports.CubeTexture=W.CubeTexture,exports.useCubeTexture=W.useCubeTexture,exports.Fbx=K.Fbx,exports.useFBX=K.useFBX,exports.Ktx2=Q.Ktx2,exports.useKTX2=Q.useKTX2,exports.Progress=N.Progress,exports.useProgress=N.useProgress,exports.IsObject=U.IsObject,exports.Texture=U.Texture,exports.useTexture=U.useTexture,exports.VideoTexture=X.VideoTexture,exports.useVideoTexture=X.useVideoTexture,exports.useFont=_.useFont,exports.calculateAspectRatio=J.calculateAspectRatio,exports.checkIfFrameIsEmpty=J.checkIfFrameIsEmpty,exports.getFirstItem=J.getFirstItem,exports.useSpriteLoader=J.useSpriteLoader,exports.Helper=Y.Helper,exports.useHelper=Y.useHelper,exports.Stats=Z.Stats,exports.StatsGl=$.StatsGl,exports.useDepthBuffer=ee.useDepthBuffer,exports.useAspect=re.useAspect,exports.useCamera=se.useCamera,exports.DetectGPU=te.DetectGPU,exports.useDetectGPU=te.useDetectGPU,exports.Bvh=oe.Bvh,exports.useBVH=oe.useBVH,exports.useContextBridge=ie.useContextBridge,exports.useAnimations=ae.useAnimations,exports.Fbo=ue.Fbo,exports.useFBO=ue.useFBO,exports.useIntersect=ce.useIntersect,exports.useBoxProjectedEnv=pe.useBoxProjectedEnv,exports.BBAnchor=ne.BBAnchor,exports.TrailTexture=je.TrailTexture,exports.useTrailTexture=je.useTrailTexture,exports.Example=xe.Example,exports.SpriteAnimator=le.SpriteAnimator,exports.useSpriteAnimator=le.useSpriteAnimator,exports.CurveModifier=de.CurveModifier,exports.MeshDistortMaterial=qe.MeshDistortMaterial,exports.MeshWobbleMaterial=me.MeshWobbleMaterial,exports.MeshReflectorMaterial=he.MeshReflectorMaterial,exports.MeshRefractionMaterial=Ce.MeshRefractionMaterial,exports.MeshTransmissionMaterial=Se.MeshTransmissionMaterial,exports.MeshDiscardMaterial=Me.MeshDiscardMaterial,exports.PointMaterial=Te.PointMaterial,exports.PointMaterialImpl=Te.PointMaterialImpl,exports.shaderMaterial=be.shaderMaterial,exports.SoftShadows=Pe.SoftShadows,exports.Box=fe.Box,exports.Capsule=fe.Capsule,exports.Circle=fe.Circle,exports.Cone=fe.Cone,exports.Cylinder=fe.Cylinder,exports.Dodecahedron=fe.Dodecahedron,exports.Extrude=fe.Extrude,exports.Icosahedron=fe.Icosahedron,exports.Lathe=fe.Lathe,exports.Octahedron=fe.Octahedron,exports.Plane=fe.Plane,exports.Polyhedron=fe.Polyhedron,exports.Ring=fe.Ring,exports.Shape=fe.Shape,exports.Sphere=fe.Sphere,exports.Tetrahedron=fe.Tetrahedron,exports.Torus=fe.Torus,exports.TorusKnot=fe.TorusKnot,exports.Tube=fe.Tube,exports.RoundedBox=ge.RoundedBox,exports.ScreenQuad=Be.ScreenQuad,exports.Center=ve.Center,exports.Resize=Ae.Resize,exports.Bounds=Fe.Bounds,exports.useBounds=Fe.useBounds,exports.CameraShake=Le.CameraShake,exports.Float=Re.Float,exports.Stage=Ge.Stage,exports.Backdrop=De.Backdrop,exports.Shadow=Ee.Shadow,exports.Caustics=ke.Caustics,exports.ContactShadows=we.ContactShadows,exports.AccumulativeShadows=ze.AccumulativeShadows,exports.RandomizedLight=ze.RandomizedLight,exports.accumulativeContext=ze.accumulativeContext,exports.Reflector=Ie.Reflector,exports.SpotLight=Oe.SpotLight,exports.SpotLightShadow=Oe.SpotLightShadow,exports.Environment=ye.Environment,exports.EnvironmentCube=ye.EnvironmentCube,exports.EnvironmentMap=ye.EnvironmentMap,exports.EnvironmentPortal=ye.EnvironmentPortal,exports.Lightformer=He.Lightformer,exports.Sky=Ve.Sky,exports.calcPosFromAngles=Ve.calcPosFromAngles,exports.Stars=We.Stars,exports.Cloud=Ke.Cloud,exports.CloudInstance=Ke.CloudInstance,exports.Clouds=Ke.Clouds,exports.Sparkles=Qe.Sparkles,exports.useEnvironment=Ne.useEnvironment,exports.MatcapTexture=Ue.MatcapTexture,exports.useMatcapTexture=Ue.useMatcapTexture,exports.NormalTexture=Xe.NormalTexture,exports.useNormalTexture=Xe.useNormalTexture,exports.Wireframe=_e.Wireframe,exports.ShadowAlpha=Je.ShadowAlpha,exports.Point=Ye.Point,exports.Points=Ye.Points,exports.PointsBuffer=Ye.PointsBuffer,exports.PositionPoint=Ye.PositionPoint,exports.Instance=Ze.Instance,exports.Instances=Ze.Instances,exports.Merged=Ze.Merged,exports.Segment=$e.Segment,exports.SegmentObject=$e.SegmentObject,exports.Segments=$e.Segments,exports.Detailed=er.Detailed,exports.Preload=rr.Preload,exports.BakeShadows=sr.BakeShadows,exports.meshBounds=tr.meshBounds,exports.AdaptiveDpr=or.AdaptiveDpr,exports.AdaptiveEvents=ir.AdaptiveEvents,exports.PerformanceMonitor=ar.PerformanceMonitor,exports.usePerformanceMonitor=ar.usePerformanceMonitor,exports.RenderTexture=ur.RenderTexture,exports.RenderCubeTexture=cr.RenderCubeTexture,exports.Mask=pr.Mask,exports.useMask=pr.useMask,exports.Hud=nr.Hud,exports.Fisheye=jr.Fisheye,exports.MeshPortalMaterial=xr.MeshPortalMaterial,exports.calculateScaleFactor=lr.calculateScaleFactor;
package/core/index.d.ts CHANGED
@@ -41,13 +41,12 @@ export * from './GizmoHelper';
41
41
  export * from './GizmoViewcube';
42
42
  export * from './GizmoViewport';
43
43
  export * from './Grid';
44
- export * from './useCubeTexture';
45
- export * from './useFBX';
46
- export * from './useGLTF';
47
- export * from './useKTX2';
48
- export * from './useProgress';
49
- export * from './useTexture';
50
- export * from './useVideoTexture';
44
+ export * from './CubeTexture';
45
+ export * from './Fbx';
46
+ export * from './Ktx2';
47
+ export * from './Progress';
48
+ export * from './Texture';
49
+ export * from './VideoTexture';
51
50
  export * from './useFont';
52
51
  export * from './useSpriteLoader';
53
52
  export * from './Helper';
@@ -56,16 +55,15 @@ export * from './StatsGl';
56
55
  export * from './useDepthBuffer';
57
56
  export * from './useAspect';
58
57
  export * from './useCamera';
59
- export * from './useDetectGPU';
60
- export * from './useBVH';
58
+ export * from './DetectGPU';
59
+ export * from './Bvh';
61
60
  export * from './useContextBridge';
62
61
  export * from './useAnimations';
63
- export * from './useFBO';
62
+ export * from './Fbo';
64
63
  export * from './useIntersect';
65
64
  export * from './useBoxProjectedEnv';
66
65
  export * from './BBAnchor';
67
- export * from './useTrailTexture';
68
- export * from './useCubeCamera';
66
+ export * from './TrailTexture';
69
67
  export * from './Example';
70
68
  export * from './SpriteAnimator';
71
69
  export * from './CurveModifier';
@@ -101,8 +99,8 @@ export * from './Stars';
101
99
  export * from './Cloud';
102
100
  export * from './Sparkles';
103
101
  export * from './useEnvironment';
104
- export * from './useMatcapTexture';
105
- export * from './useNormalTexture';
102
+ export * from './MatcapTexture';
103
+ export * from './NormalTexture';
106
104
  export * from './Wireframe';
107
105
  export * from './ShadowAlpha';
108
106
  export * from './Points';
package/core/index.js CHANGED
@@ -20,12 +20,12 @@ export { Clone } from './Clone.js';
20
20
  export { MarchingCube, MarchingCubes, MarchingPlane } from './MarchingCubes.js';
21
21
  export { Decal } from './Decal.js';
22
22
  export { Svg } from './Svg.js';
23
- export { Gltf } from './Gltf.js';
23
+ export { Gltf, useGLTF } from './Gltf.js';
24
24
  export { AsciiRenderer } from './AsciiRenderer.js';
25
25
  export { Splat } from './Splat.js';
26
26
  export { OrthographicCamera } from './OrthographicCamera.js';
27
27
  export { PerspectiveCamera } from './PerspectiveCamera.js';
28
- export { CubeCamera } from './CubeCamera.js';
28
+ export { CubeCamera, useCubeCamera } from './CubeCamera.js';
29
29
  export { DeviceOrientationControls } from './DeviceOrientationControls.js';
30
30
  export { FlyControls } from './FlyControls.js';
31
31
  export { MapControls } from './MapControls.js';
@@ -41,13 +41,12 @@ export { GizmoHelper, useGizmoContext } from './GizmoHelper.js';
41
41
  export { GizmoViewcube } from './GizmoViewcube.js';
42
42
  export { GizmoViewport } from './GizmoViewport.js';
43
43
  export { Grid } from './Grid.js';
44
- export { useCubeTexture } from './useCubeTexture.js';
45
- export { useFBX } from './useFBX.js';
46
- export { useGLTF } from './useGLTF.js';
47
- export { useKTX2 } from './useKTX2.js';
48
- export { useProgress } from './useProgress.js';
49
- export { IsObject, useTexture } from './useTexture.js';
50
- export { useVideoTexture } from './useVideoTexture.js';
44
+ export { CubeTexture, useCubeTexture } from './CubeTexture.js';
45
+ export { Fbx, useFBX } from './Fbx.js';
46
+ export { Ktx2, useKTX2 } from './Ktx2.js';
47
+ export { Progress, useProgress } from './Progress.js';
48
+ export { IsObject, Texture, useTexture } from './Texture.js';
49
+ export { VideoTexture, useVideoTexture } from './VideoTexture.js';
51
50
  export { useFont } from './useFont.js';
52
51
  export { calculateAspectRatio, checkIfFrameIsEmpty, getFirstItem, useSpriteLoader } from './useSpriteLoader.js';
53
52
  export { Helper, useHelper } from './Helper.js';
@@ -56,16 +55,15 @@ export { StatsGl } from './StatsGl.js';
56
55
  export { useDepthBuffer } from './useDepthBuffer.js';
57
56
  export { useAspect } from './useAspect.js';
58
57
  export { useCamera } from './useCamera.js';
59
- export { useDetectGPU } from './useDetectGPU.js';
60
- export { Bvh, useBVH } from './useBVH.js';
58
+ export { DetectGPU, useDetectGPU } from './DetectGPU.js';
59
+ export { Bvh, useBVH } from './Bvh.js';
61
60
  export { useContextBridge } from './useContextBridge.js';
62
61
  export { useAnimations } from './useAnimations.js';
63
- export { useFBO } from './useFBO.js';
62
+ export { Fbo, useFBO } from './Fbo.js';
64
63
  export { useIntersect } from './useIntersect.js';
65
64
  export { useBoxProjectedEnv } from './useBoxProjectedEnv.js';
66
65
  export { BBAnchor } from './BBAnchor.js';
67
- export { useTrailTexture } from './useTrailTexture.js';
68
- export { useCubeCamera } from './useCubeCamera.js';
66
+ export { TrailTexture, useTrailTexture } from './TrailTexture.js';
69
67
  export { Example } from './Example.js';
70
68
  export { SpriteAnimator, useSpriteAnimator } from './SpriteAnimator.js';
71
69
  export { CurveModifier } from './CurveModifier.js';
@@ -101,8 +99,8 @@ export { Stars } from './Stars.js';
101
99
  export { Cloud, CloudInstance, Clouds } from './Cloud.js';
102
100
  export { Sparkles } from './Sparkles.js';
103
101
  export { useEnvironment } from './useEnvironment.js';
104
- export { useMatcapTexture } from './useMatcapTexture.js';
105
- export { useNormalTexture } from './useNormalTexture.js';
102
+ export { MatcapTexture, useMatcapTexture } from './MatcapTexture.js';
103
+ export { NormalTexture, useNormalTexture } from './NormalTexture.js';
106
104
  export { Wireframe } from './Wireframe.js';
107
105
  export { ShadowAlpha } from './ShadowAlpha.js';
108
106
  export { Point, Points, PointsBuffer, PositionPoint } from './Points.js';
@@ -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);exports.useDepthBuffer=function({size:r=256,frames:n=1/0}={}){const c=t.useThree((e=>e.viewport.dpr)),{width:i,height:o}=t.useThree((e=>e.size)),a=r||i*c,f=r||o*c,p=s.useMemo((()=>{const r=new e.DepthTexture(a,f);return r.format=e.DepthFormat,r.type=e.UnsignedShortType,{depthTexture:r}}),[a,f]);let d=0;const h=u.useFBO(a,f,p);return t.useFrame((e=>{(n===1/0||d<n)&&(e.gl.setRenderTarget(h),e.gl.render(e.scene,e.camera),e.gl.setRenderTarget(null),d++)})),h.depthTexture};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("three"),r=require("react"),t=require("@react-three/fiber"),u=require("./Fbo.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({size:r=256,frames:n=1/0}={}){const c=t.useThree((e=>e.viewport.dpr)),{width:o,height:i}=t.useThree((e=>e.size)),a=r||o*c,f=r||i*c,p=s.useMemo((()=>{const r=new e.DepthTexture(a,f);return r.format=e.DepthFormat,r.type=e.UnsignedShortType,{depthTexture:r}}),[a,f]);let d=0;const h=u.useFBO(a,f,p);return t.useFrame((e=>{(n===1/0||d<n)&&(e.gl.setRenderTarget(h),e.gl.render(e.scene,e.camera),e.gl.setRenderTarget(null),d++)})),h.depthTexture};
@@ -1,7 +1,7 @@
1
1
  import { DepthTexture, DepthFormat, UnsignedShortType } from 'three';
2
2
  import * as React from 'react';
3
3
  import { useThree, useFrame } from '@react-three/fiber';
4
- import { useFBO } from './useFBO.js';
4
+ import { useFBO } from './Fbo.js';
5
5
 
6
6
  function useDepthBuffer({
7
7
  size = 256,