@react-three/drei 9.0.2 → 9.1.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/README.md +51 -3
- package/core/ContactShadows.cjs.js +1 -1
- package/core/ContactShadows.js +5 -3
- package/core/DeviceOrientationControls.cjs.js +1 -1
- package/core/DeviceOrientationControls.js +0 -1
- package/core/Effects.cjs.js +1 -1
- package/core/Effects.js +25 -28
- package/core/FlyControls.cjs.js +1 -1
- package/core/FlyControls.js +0 -1
- package/core/MapControls.cjs.js +1 -1
- package/core/MapControls.js +0 -1
- package/core/MeshDistortMaterial.cjs.js +1 -1
- package/core/MeshDistortMaterial.js +0 -1
- package/core/MeshWobbleMaterial.cjs.js +1 -1
- package/core/MeshWobbleMaterial.js +0 -1
- package/core/RoundedBox.cjs.js +1 -1
- package/core/RoundedBox.js +1 -2
- package/core/Shadow.cjs.js +1 -1
- package/core/Shadow.js +1 -5
- package/core/Sky.cjs.js +1 -1
- package/core/Sky.js +0 -1
- package/core/Stars.cjs.js +1 -1
- package/core/Stars.js +1 -4
- package/core/TransformControls.cjs.js +1 -1
- package/core/TransformControls.js +0 -1
- package/index.cjs.js +1 -1
- package/index.js +1 -0
- package/package.json +1 -1
- package/web/ScrollControls.cjs.js +1 -1
- package/web/ScrollControls.js +3 -4
- package/web/View.cjs.js +1 -0
- package/web/View.d.ts +17 -0
- package/web/View.js +125 -0
- package/web/index.cjs.js +1 -1
- package/web/index.d.ts +1 -0
- package/web/index.js +1 -0
package/README.md
CHANGED
|
@@ -130,6 +130,10 @@ The `native` route of the library **does not** export `Html` or `Loader`. The de
|
|
|
130
130
|
<li><a href="#adaptiveevents">AdaptiveEvents</a></li>
|
|
131
131
|
<li><a href="#usebvh">useBVH</a></li>
|
|
132
132
|
</ul>
|
|
133
|
+
<li><a href="#portals">Portals</a></li>
|
|
134
|
+
<ul>
|
|
135
|
+
<li><a href="#view">View</a></li>
|
|
136
|
+
</ul>
|
|
133
137
|
</ul>
|
|
134
138
|
</td>
|
|
135
139
|
<td valign="top">
|
|
@@ -597,11 +601,15 @@ Make sure to set the `makeDefault` prop on your controls, in that case you do no
|
|
|
597
601
|
|
|
598
602
|
#### Effects
|
|
599
603
|
|
|
600
|
-
Abstraction around threes own [EffectComposer](https://threejs.org/docs/#examples/en/postprocessing/EffectComposer).
|
|
604
|
+
Abstraction around threes own [EffectComposer](https://threejs.org/docs/#examples/en/postprocessing/EffectComposer). By default it will prepend a render-pass and a gammacorrection-pass. Children are cloned, `attach` is given to them automatically. You can only use passes or effects in there.
|
|
601
605
|
|
|
602
606
|
```jsx
|
|
607
|
+
import { SSAOPass } from "three-stdlib"
|
|
608
|
+
|
|
609
|
+
extend({ SSAOPass })
|
|
610
|
+
|
|
603
611
|
<Effects multisamping={8} renderIndex={1} disableGamma={false} disableRenderPass={false}>
|
|
604
|
-
<
|
|
612
|
+
<sSAOPass args={[scene, camera, 100, 100]} kernelRadius={1.2} kernelSize={0} />
|
|
605
613
|
</Effects>
|
|
606
614
|
```
|
|
607
615
|
|
|
@@ -1414,7 +1422,7 @@ useFBX(url)
|
|
|
1414
1422
|
|
|
1415
1423
|
function SuzanneFBX() {
|
|
1416
1424
|
let fbx = useFBX('suzanne/suzanne.fbx')
|
|
1417
|
-
return <primitive object={fbx}
|
|
1425
|
+
return <primitive object={fbx} />
|
|
1418
1426
|
}
|
|
1419
1427
|
```
|
|
1420
1428
|
|
|
@@ -1693,6 +1701,46 @@ useBVH(mesh)
|
|
|
1693
1701
|
<mesh ref={mesh} ... />
|
|
1694
1702
|
```
|
|
1695
1703
|
|
|
1704
|
+
# Portals
|
|
1705
|
+
|
|
1706
|
+
#### View
|
|
1707
|
+
|
|
1708
|
+
<p>
|
|
1709
|
+
<a href="https://codesandbox.io/s/bp6tmc"><img width="20%" src="https://codesandbox.io/api/v1/sandboxes/bp6tmc/screenshot.png" alt="Demo"/></a>
|
|
1710
|
+
<a href="https://codesandbox.io/s/1wmlew"><img width="20%" src="https://codesandbox.io/api/v1/sandboxes/1wmlew/screenshot.png" alt="Demo"/></a>
|
|
1711
|
+
</p>
|
|
1712
|
+
|
|
1713
|
+
Views use gl.scissor to cut the viewport into segments. You tie a view to a tracking div which then controls the position and bounds of the viewport. This allows you to have multiple views with a single, performant canvas. These views will follow their tracking elements, scroll along, resize, etc.
|
|
1714
|
+
|
|
1715
|
+
It is advisable to re-connect the event system to a parent that contains both the canvas and the html content. This ensures that both are accessible/selectable and even allows you to mount controls or other deeper integrations into your view.
|
|
1716
|
+
|
|
1717
|
+
```tsx
|
|
1718
|
+
<View
|
|
1719
|
+
/** The tracking element, the view will be cut according to its whereabouts */
|
|
1720
|
+
track: React.MutableRefObject<HTMLElement>
|
|
1721
|
+
/** Views take over the render loop, optional render index (1 by default) */
|
|
1722
|
+
index?: number
|
|
1723
|
+
/** If you know your view is always at the same place set this to 1 to avoid needless getBoundingClientRect overhead. The default is Infinity, which is best for css animations */
|
|
1724
|
+
frames?: number
|
|
1725
|
+
/** The scene to render, if you leave this undefined it will render the default scene */
|
|
1726
|
+
children?: React.ReactNode
|
|
1727
|
+
/>
|
|
1728
|
+
```
|
|
1729
|
+
|
|
1730
|
+
```jsx
|
|
1731
|
+
const main = useRef()
|
|
1732
|
+
const div = useRef()
|
|
1733
|
+
return (
|
|
1734
|
+
<main ref={main}>
|
|
1735
|
+
<h1>Html content here</h1>
|
|
1736
|
+
<div ref={div} style={{ width: 200, height: 200 }} />
|
|
1737
|
+
<Canvas onCreated={(state) => state.events.connect(main.current)}>
|
|
1738
|
+
<View track={div}>
|
|
1739
|
+
<mesh />
|
|
1740
|
+
<OrbitControls />
|
|
1741
|
+
</View>
|
|
1742
|
+
```
|
|
1743
|
+
|
|
1696
1744
|
# Staging
|
|
1697
1745
|
|
|
1698
1746
|
#### Center
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("react"),t=require("three"),a=require("@react-three/fiber"),n=require("three-stdlib");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 a=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,a.get?a:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var i=o(e),l=u(r),s=u(t);const c=l.forwardRef((({scale:e=10,frames:r=1/0,opacity:t=1,width:o=1,height:u=1,blur:c=1,far:d=10,resolution:f=512,smooth:h=!0,color:m="#000000",...p},g)=>{const v=a.useThree((({scene:e})=>e)),b=a.useThree((({gl:e})=>e)),M=l.useRef(null);o*=Array.isArray(e)?e[0]:e||1,u*=Array.isArray(e)?e[1]:e||1;const[y,w,T,S,x,R,j]=l.useMemo((()=>{const e=new s.WebGLRenderTarget(f,f),r=new s.WebGLRenderTarget(f,f);r.texture.generateMipmaps=e.texture.generateMipmaps=!1;const t=new s.PlaneBufferGeometry(o,u).rotateX(Math.PI/2),a=new s.Mesh(t),i=new s.MeshDepthMaterial;i.depthTest=i.depthWrite=!1,i.onBeforeCompile=e=>{e.uniforms={...e.uniforms,ucolor:{value:new s.Color(m).convertSRGBToLinear()}},e.fragmentShader=e.fragmentShader.replace("void main() {","uniform vec3 ucolor;\n void main() {\n "),e.fragmentShader=e.fragmentShader.replace("vec4( vec3( 1.0 - fragCoordZ ), opacity );","vec4( ucolor, ( 1.0 - fragCoordZ ) * 1.0 );")};const l=new s.ShaderMaterial(n.HorizontalBlurShader),c=new s.ShaderMaterial(n.VerticalBlurShader);return c.depthTest=l.depthTest=!1,[e,t,i,a,l,c,r]}),[f,o,u,e]),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("react"),t=require("three"),a=require("@react-three/fiber"),n=require("three-stdlib");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 a=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,a.get?a:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var i=o(e),l=u(r),s=u(t);const c=l.forwardRef((({scale:e=10,frames:r=1/0,opacity:t=1,width:o=1,height:u=1,blur:c=1,far:d=10,resolution:f=512,smooth:h=!0,color:m="#000000",...p},g)=>{const v=a.useThree((({scene:e})=>e)),b=a.useThree((({gl:e})=>e)),M=l.useRef(null);o*=Array.isArray(e)?e[0]:e||1,u*=Array.isArray(e)?e[1]:e||1;const[y,w,T,S,x,R,j]=l.useMemo((()=>{const e=new s.WebGLRenderTarget(f,f),r=new s.WebGLRenderTarget(f,f);r.texture.generateMipmaps=e.texture.generateMipmaps=!1;const t=new s.PlaneBufferGeometry(o,u).rotateX(Math.PI/2),a=new s.Mesh(t),i=new s.MeshDepthMaterial;i.depthTest=i.depthWrite=!1,i.onBeforeCompile=e=>{e.uniforms={...e.uniforms,ucolor:{value:new s.Color(m).convertSRGBToLinear()}},e.fragmentShader=e.fragmentShader.replace("void main() {","uniform vec3 ucolor;\n void main() {\n "),e.fragmentShader=e.fragmentShader.replace("vec4( vec3( 1.0 - fragCoordZ ), opacity );","vec4( ucolor, ( 1.0 - fragCoordZ ) * 1.0 );")};const l=new s.ShaderMaterial(n.HorizontalBlurShader),c=new s.ShaderMaterial(n.VerticalBlurShader);return c.depthTest=l.depthTest=!1,[e,t,i,a,l,c,r]}),[f,o,u,e,m]),O=e=>{S.visible=!0,S.material=x,x.uniforms.tDiffuse.value=y.texture,x.uniforms.h.value=1*e/256,b.setRenderTarget(j),b.render(S,M.current),S.material=R,R.uniforms.tDiffuse.value=j.texture,R.uniforms.v.value=1*e/256,b.setRenderTarget(y),b.render(S,M.current),S.visible=!1};let P=0;return a.useFrame((()=>{if(M.current&&(r===1/0||P<r)){const e=v.background;v.background=null;const r=v.overrideMaterial;v.overrideMaterial=T,b.setRenderTarget(y),b.render(v,M.current),v.overrideMaterial=r,O(c),h&&O(.4*c),b.setRenderTarget(null),v.background=e,P++}})),l.createElement("group",i.default({"rotation-x":Math.PI/2},p,{ref:g}),l.createElement("mesh",{geometry:w,scale:[1,-1,1],rotation:[-Math.PI/2,0,0]},l.createElement("meshBasicMaterial",{map:y.texture,transparent:!0,opacity:t})),l.createElement("orthographicCamera",{ref:M,args:[-o/2,o/2,u/2,-u/2,0,d]}))}));exports.ContactShadows=c;
|
package/core/ContactShadows.js
CHANGED
|
@@ -52,8 +52,9 @@ const ContactShadows = /*#__PURE__*/React.forwardRef(({
|
|
|
52
52
|
const verticalBlurMaterial = new THREE.ShaderMaterial(VerticalBlurShader);
|
|
53
53
|
verticalBlurMaterial.depthTest = horizontalBlurMaterial.depthTest = false;
|
|
54
54
|
return [renderTarget, planeGeometry, depthMaterial, blurPlane, horizontalBlurMaterial, verticalBlurMaterial, renderTargetBlur];
|
|
55
|
-
}, [resolution, width, height, scale]);
|
|
56
|
-
|
|
55
|
+
}, [resolution, width, height, scale, color]);
|
|
56
|
+
|
|
57
|
+
const blurShadows = blur => {
|
|
57
58
|
blurPlane.visible = true;
|
|
58
59
|
blurPlane.material = horizontalBlurMaterial;
|
|
59
60
|
horizontalBlurMaterial.uniforms.tDiffuse.value = renderTarget.texture;
|
|
@@ -66,7 +67,8 @@ const ContactShadows = /*#__PURE__*/React.forwardRef(({
|
|
|
66
67
|
gl.setRenderTarget(renderTarget);
|
|
67
68
|
gl.render(blurPlane, shadowCamera.current);
|
|
68
69
|
blurPlane.visible = false;
|
|
69
|
-
}
|
|
70
|
+
};
|
|
71
|
+
|
|
70
72
|
let count = 0;
|
|
71
73
|
useFrame(() => {
|
|
72
74
|
if (shadowCamera.current && (frames === Infinity || count < frames)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@react-three/fiber"),r=require("react"),n=require("three-stdlib");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(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 o=u(e),a=i(r);const l=a.forwardRef(((e,r)=>{const{camera:u,onChange:i,...l}=e,c=t.useThree((e=>e.camera)),s=t.useThree((e=>e.invalidate)),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@react-three/fiber"),r=require("react"),n=require("three-stdlib");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(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 o=u(e),a=i(r);const l=a.forwardRef(((e,r)=>{const{camera:u,onChange:i,...l}=e,c=t.useThree((e=>e.camera)),s=t.useThree((e=>e.invalidate)),f=u||c,[d]=a.useState((()=>new n.DeviceOrientationControls(f)));return a.useEffect((()=>{const e=e=>{s(),i&&i(e)};return null==d||null==d.addEventListener||d.addEventListener("change",e),()=>null==d||null==d.removeEventListener?void 0:d.removeEventListener("change",e)}),[i,d,s]),t.useFrame((()=>null==d?void 0:d.update())),a.useEffect((()=>{const e=d;return null==e||e.connect(),()=>null==e?void 0:e.dispose()}),[d]),d?a.createElement("primitive",o.default({ref:r,object:d},l)):null}));exports.DeviceOrientationControls=l;
|
package/core/Effects.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("react"),t=require("three"),a=require("@react-three/fiber"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("react"),t=require("three"),a=require("@react-three/fiber"),n=require("three-stdlib"),s=require("react-merge-refs");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var a=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,a.get?a:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var i=u(e),o=c(r),d=u(s);a.extend({EffectComposer:n.EffectComposer,RenderPass:n.RenderPass,ShaderPass:n.ShaderPass});const l=o.forwardRef((({children:e,multisamping:r=8,renderIndex:s=1,disableGamma:u=!1,disableRenderPass:c=!1,...l},f)=>{const h=o.useRef(),m=a.useThree((e=>e.scene)),p=a.useThree((e=>e.camera)),b=a.useThree((e=>e.gl)),g=a.useThree((e=>e.size)),[E]=o.useState((()=>{const e=new t.WebGLRenderTarget(g.width,g.height,{format:t.RGBAFormat,encoding:b.outputEncoding});return e.samples=r,e}));o.useEffect((()=>{var e,r;null==(e=h.current)||e.setSize(g.width,g.height),null==(r=h.current)||r.setPixelRatio(b.getPixelRatio())}),[b,g]),a.useFrame((()=>{var e;return null==(e=h.current)?void 0:e.render()}),s);const P=[];return c||P.push(o.createElement("renderPass",{key:"renderpass",args:[m,p]})),u||P.push(o.createElement("shaderPass",{key:"gammapass",args:[n.GammaCorrectionShader]})),o.Children.forEach(e,((e,r)=>P.push(o.cloneElement(e,{key:r,attach:`passes-${r}`})))),o.createElement("effectComposer",i.default({ref:d.default([f,h]),args:[b,E]},l),P)}));exports.Effects=l,exports.isWebGL2Available=()=>{try{var e=document.createElement("canvas");return!(!window.WebGL2RenderingContext||!e.getContext("webgl2"))}catch(e){return!1}};
|
package/core/Effects.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { WebGLRenderTarget, RGBAFormat
|
|
3
|
+
import { WebGLRenderTarget, RGBAFormat } from 'three';
|
|
4
4
|
import { extend, useThree, useFrame } from '@react-three/fiber';
|
|
5
5
|
import { EffectComposer, RenderPass, ShaderPass, GammaCorrectionShader } from 'three-stdlib';
|
|
6
6
|
import mergeRefs from 'react-merge-refs';
|
|
@@ -27,27 +27,17 @@ const Effects = /*#__PURE__*/React.forwardRef(({
|
|
|
27
27
|
...props
|
|
28
28
|
}, ref) => {
|
|
29
29
|
const composer = React.useRef();
|
|
30
|
-
const scene = useThree(
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const
|
|
34
|
-
camera
|
|
35
|
-
}) => camera);
|
|
36
|
-
const gl = useThree(({
|
|
37
|
-
gl
|
|
38
|
-
}) => gl);
|
|
39
|
-
const size = useThree(({
|
|
40
|
-
size
|
|
41
|
-
}) => size);
|
|
30
|
+
const scene = useThree(state => state.scene);
|
|
31
|
+
const camera = useThree(state => state.camera);
|
|
32
|
+
const gl = useThree(state => state.gl);
|
|
33
|
+
const size = useThree(state => state.size);
|
|
42
34
|
const [target] = React.useState(() => {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
return t;
|
|
50
|
-
}
|
|
35
|
+
const t = new WebGLRenderTarget(size.width, size.height, {
|
|
36
|
+
format: RGBAFormat,
|
|
37
|
+
encoding: gl.outputEncoding
|
|
38
|
+
});
|
|
39
|
+
t.samples = multisamping;
|
|
40
|
+
return t;
|
|
51
41
|
});
|
|
52
42
|
React.useEffect(() => {
|
|
53
43
|
var _composer$current, _composer$current2;
|
|
@@ -60,16 +50,23 @@ const Effects = /*#__PURE__*/React.forwardRef(({
|
|
|
60
50
|
|
|
61
51
|
return (_composer$current3 = composer.current) == null ? void 0 : _composer$current3.render();
|
|
62
52
|
}, renderIndex);
|
|
53
|
+
const passes = [];
|
|
54
|
+
if (!disableRenderPass) passes.push( /*#__PURE__*/React.createElement("renderPass", {
|
|
55
|
+
key: "renderpass",
|
|
56
|
+
args: [scene, camera]
|
|
57
|
+
}));
|
|
58
|
+
if (!disableGamma) passes.push( /*#__PURE__*/React.createElement("shaderPass", {
|
|
59
|
+
key: "gammapass",
|
|
60
|
+
args: [GammaCorrectionShader]
|
|
61
|
+
}));
|
|
62
|
+
React.Children.forEach(children, (el, index) => passes.push( /*#__PURE__*/React.cloneElement(el, {
|
|
63
|
+
key: index,
|
|
64
|
+
attach: `passes-${index}`
|
|
65
|
+
})));
|
|
63
66
|
return /*#__PURE__*/React.createElement("effectComposer", _extends({
|
|
64
67
|
ref: mergeRefs([ref, composer]),
|
|
65
68
|
args: [gl, target]
|
|
66
|
-
}, props),
|
|
67
|
-
attach: "passes",
|
|
68
|
-
args: [scene, camera]
|
|
69
|
-
}), !disableGamma && /*#__PURE__*/React.createElement("shaderPass", {
|
|
70
|
-
attach: "passes",
|
|
71
|
-
args: [GammaCorrectionShader]
|
|
72
|
-
}), children);
|
|
69
|
+
}, props), passes);
|
|
73
70
|
});
|
|
74
71
|
|
|
75
72
|
export { Effects, isWebGL2Available };
|
package/core/FlyControls.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@react-three/fiber"),r=require("react"),n=require("three-stdlib");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function l(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 o=u(e),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@react-three/fiber"),r=require("react"),n=require("three-stdlib");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function l(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 o=u(e),a=l(r);const i=a.forwardRef((({domElement:e,...r},u)=>{const{onChange:l,...i}=r,c=t.useThree((e=>e.invalidate)),s=t.useThree((e=>e.camera)),d=t.useThree((e=>e.gl)),f=t.useThree((e=>e.events)),v=e||f.connected||d.domElement,[b]=a.useState((()=>new n.FlyControls(s,v)));return a.useEffect((()=>{const e=e=>{c(),l&&l(e)};return null==b||null==b.addEventListener||b.addEventListener("change",e),()=>null==b||null==b.removeEventListener?void 0:b.removeEventListener("change",e)}),[l,b,c]),t.useFrame(((e,t)=>null==b?void 0:b.update(t))),b?a.createElement("primitive",o.default({ref:u,object:b},i)):null}));exports.FlyControls=i;
|
package/core/FlyControls.js
CHANGED
|
@@ -29,7 +29,6 @@ const FlyControls = /*#__PURE__*/React.forwardRef(({
|
|
|
29
29
|
useFrame((_, delta) => controls == null ? void 0 : controls.update(delta));
|
|
30
30
|
return controls ? /*#__PURE__*/React.createElement("primitive", _extends({
|
|
31
31
|
ref: ref,
|
|
32
|
-
dispose: undefined,
|
|
33
32
|
object: controls
|
|
34
33
|
}, rest)) : null;
|
|
35
34
|
});
|
package/core/MapControls.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@react-three/fiber"),r=require("react"),n=require("three-stdlib");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 s=a(e),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("@react-three/fiber"),r=require("react"),n=require("three-stdlib");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 s=a(e),u=o(r);const i=u.forwardRef(((e={enableDamping:!0},r)=>{const{domElement:a,camera:o,onChange:i,onStart:c,onEnd:d,...l}=e,f=t.useThree((e=>e.invalidate)),m=t.useThree((e=>e.camera)),v=t.useThree((e=>e.gl)),b=t.useThree((e=>e.events)),p=a||b.connected||v.domElement,E=o||m,h=u.useMemo((()=>new n.MapControls(E)),[E]);return u.useEffect((()=>{h.connect(p);const e=e=>{f(),i&&i(e)};return h.addEventListener("change",e),c&&h.addEventListener("start",c),d&&h.addEventListener("end",d),()=>{h.dispose(),h.removeEventListener("change",e),c&&h.removeEventListener("start",c),d&&h.removeEventListener("end",d)}}),[i,c,d,h,f,p]),t.useFrame((()=>h.update())),u.createElement("primitive",s.default({ref:r,object:h,enableDamping:!0},l))}));exports.MapControls=i;
|
package/core/MapControls.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three"),i=require("@react-three/fiber");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c=o(e),v=s(t);class n extends r.MeshPhysicalMaterial{constructor(e={}){super(e),this.setValues(e),this._time={value:0},this._distort={value:.4},this._radius={value:1}}onBeforeCompile(e){e.uniforms.time=this._time,e.uniforms.radius=this._radius,e.uniforms.distort=this._distort,e.vertexShader=`\n uniform float time;\n uniform float radius;\n uniform float distort;\n #define GLSLIFY 1\nvec3 mod289(vec3 x){return x-floor(x*(1.0/289.0))*289.0;}vec4 mod289(vec4 x){return x-floor(x*(1.0/289.0))*289.0;}vec4 permute(vec4 x){return mod289(((x*34.0)+1.0)*x);}vec4 taylorInvSqrt(vec4 r){return 1.79284291400159-0.85373472095314*r;}float snoise(vec3 v){const vec2 C=vec2(1.0/6.0,1.0/3.0);const vec4 D=vec4(0.0,0.5,1.0,2.0);vec3 i=floor(v+dot(v,C.yyy));vec3 x0=v-i+dot(i,C.xxx);vec3 g=step(x0.yzx,x0.xyz);vec3 l=1.0-g;vec3 i1=min(g.xyz,l.zxy);vec3 i2=max(g.xyz,l.zxy);vec3 x1=x0-i1+C.xxx;vec3 x2=x0-i2+C.yyy;vec3 x3=x0-D.yyy;i=mod289(i);vec4 p=permute(permute(permute(i.z+vec4(0.0,i1.z,i2.z,1.0))+i.y+vec4(0.0,i1.y,i2.y,1.0))+i.x+vec4(0.0,i1.x,i2.x,1.0));float n_=0.142857142857;vec3 ns=n_*D.wyz-D.xzx;vec4 j=p-49.0*floor(p*ns.z*ns.z);vec4 x_=floor(j*ns.z);vec4 y_=floor(j-7.0*x_);vec4 x=x_*ns.x+ns.yyyy;vec4 y=y_*ns.x+ns.yyyy;vec4 h=1.0-abs(x)-abs(y);vec4 b0=vec4(x.xy,y.xy);vec4 b1=vec4(x.zw,y.zw);vec4 s0=floor(b0)*2.0+1.0;vec4 s1=floor(b1)*2.0+1.0;vec4 sh=-step(h,vec4(0.0));vec4 a0=b0.xzyw+s0.xzyw*sh.xxyy;vec4 a1=b1.xzyw+s1.xzyw*sh.zzww;vec3 p0=vec3(a0.xy,h.x);vec3 p1=vec3(a0.zw,h.y);vec3 p2=vec3(a1.xy,h.z);vec3 p3=vec3(a1.zw,h.w);vec4 norm=taylorInvSqrt(vec4(dot(p0,p0),dot(p1,p1),dot(p2,p2),dot(p3,p3)));p0*=norm.x;p1*=norm.y;p2*=norm.z;p3*=norm.w;vec4 m=max(0.6-vec4(dot(x0,x0),dot(x1,x1),dot(x2,x2),dot(x3,x3)),0.0);m=m*m;return 42.0*dot(m*m,vec4(dot(p0,x0),dot(p1,x1),dot(p2,x2),dot(p3,x3)));}\n ${e.vertexShader}\n `,e.vertexShader=e.vertexShader.replace("#include <begin_vertex>","\n float updateTime = time / 50.0;\n float noise = snoise(vec3(position / 2.0 + updateTime * 5.0));\n vec3 transformed = vec3(position * (noise * pow(distort, 2.0) + radius));\n ")}get time(){return this._time.value}set time(e){this._time.value=e}get distort(){return this._distort.value}set distort(e){this._distort.value=e}get radius(){return this._radius.value}set radius(e){this._radius.value=e}}const x=v.forwardRef((({speed:e=1,...t},r)=>{const[o]=v.useState((()=>new n));return i.useFrame((t=>o&&(o.time=t.clock.getElapsedTime()*e))),v.createElement("primitive",c.default({
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three"),i=require("@react-three/fiber");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c=o(e),v=s(t);class n extends r.MeshPhysicalMaterial{constructor(e={}){super(e),this.setValues(e),this._time={value:0},this._distort={value:.4},this._radius={value:1}}onBeforeCompile(e){e.uniforms.time=this._time,e.uniforms.radius=this._radius,e.uniforms.distort=this._distort,e.vertexShader=`\n uniform float time;\n uniform float radius;\n uniform float distort;\n #define GLSLIFY 1\nvec3 mod289(vec3 x){return x-floor(x*(1.0/289.0))*289.0;}vec4 mod289(vec4 x){return x-floor(x*(1.0/289.0))*289.0;}vec4 permute(vec4 x){return mod289(((x*34.0)+1.0)*x);}vec4 taylorInvSqrt(vec4 r){return 1.79284291400159-0.85373472095314*r;}float snoise(vec3 v){const vec2 C=vec2(1.0/6.0,1.0/3.0);const vec4 D=vec4(0.0,0.5,1.0,2.0);vec3 i=floor(v+dot(v,C.yyy));vec3 x0=v-i+dot(i,C.xxx);vec3 g=step(x0.yzx,x0.xyz);vec3 l=1.0-g;vec3 i1=min(g.xyz,l.zxy);vec3 i2=max(g.xyz,l.zxy);vec3 x1=x0-i1+C.xxx;vec3 x2=x0-i2+C.yyy;vec3 x3=x0-D.yyy;i=mod289(i);vec4 p=permute(permute(permute(i.z+vec4(0.0,i1.z,i2.z,1.0))+i.y+vec4(0.0,i1.y,i2.y,1.0))+i.x+vec4(0.0,i1.x,i2.x,1.0));float n_=0.142857142857;vec3 ns=n_*D.wyz-D.xzx;vec4 j=p-49.0*floor(p*ns.z*ns.z);vec4 x_=floor(j*ns.z);vec4 y_=floor(j-7.0*x_);vec4 x=x_*ns.x+ns.yyyy;vec4 y=y_*ns.x+ns.yyyy;vec4 h=1.0-abs(x)-abs(y);vec4 b0=vec4(x.xy,y.xy);vec4 b1=vec4(x.zw,y.zw);vec4 s0=floor(b0)*2.0+1.0;vec4 s1=floor(b1)*2.0+1.0;vec4 sh=-step(h,vec4(0.0));vec4 a0=b0.xzyw+s0.xzyw*sh.xxyy;vec4 a1=b1.xzyw+s1.xzyw*sh.zzww;vec3 p0=vec3(a0.xy,h.x);vec3 p1=vec3(a0.zw,h.y);vec3 p2=vec3(a1.xy,h.z);vec3 p3=vec3(a1.zw,h.w);vec4 norm=taylorInvSqrt(vec4(dot(p0,p0),dot(p1,p1),dot(p2,p2),dot(p3,p3)));p0*=norm.x;p1*=norm.y;p2*=norm.z;p3*=norm.w;vec4 m=max(0.6-vec4(dot(x0,x0),dot(x1,x1),dot(x2,x2),dot(x3,x3)),0.0);m=m*m;return 42.0*dot(m*m,vec4(dot(p0,x0),dot(p1,x1),dot(p2,x2),dot(p3,x3)));}\n ${e.vertexShader}\n `,e.vertexShader=e.vertexShader.replace("#include <begin_vertex>","\n float updateTime = time / 50.0;\n float noise = snoise(vec3(position / 2.0 + updateTime * 5.0));\n vec3 transformed = vec3(position * (noise * pow(distort, 2.0) + radius));\n ")}get time(){return this._time.value}set time(e){this._time.value=e}get distort(){return this._distort.value}set distort(e){this._distort.value=e}get radius(){return this._radius.value}set radius(e){this._radius.value=e}}const x=v.forwardRef((({speed:e=1,...t},r)=>{const[o]=v.useState((()=>new n));return i.useFrame((t=>o&&(o.time=t.clock.getElapsedTime()*e))),v.createElement("primitive",c.default({object:o,ref:r,attach:"material"},t))}));exports.MeshDistortMaterial=x;
|
|
@@ -70,7 +70,6 @@ const MeshDistortMaterial = /*#__PURE__*/React.forwardRef(({
|
|
|
70
70
|
const [material] = React.useState(() => new DistortMaterialImpl());
|
|
71
71
|
useFrame(state => material && (material.time = state.clock.getElapsedTime() * speed));
|
|
72
72
|
return /*#__PURE__*/React.createElement("primitive", _extends({
|
|
73
|
-
dispose: undefined,
|
|
74
73
|
object: material,
|
|
75
74
|
ref: ref,
|
|
76
75
|
attach: "material"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three"),a=require("@react-three/fiber");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var n=i(e),s=o(t);class c extends r.MeshStandardMaterial{constructor(e={}){super(e),this.setValues(e),this._time={value:0},this._factor={value:1}}onBeforeCompile(e){e.uniforms.time=this._time,e.uniforms.factor=this._factor,e.vertexShader=`\n uniform float time;\n uniform float factor;\n ${e.vertexShader}\n `,e.vertexShader=e.vertexShader.replace("#include <begin_vertex>","float theta = sin( time + position.y ) / 2.0 * factor;\n float c = cos( theta );\n float s = sin( theta );\n mat3 m = mat3( c, 0, s, 0, 1, 0, -s, 0, c );\n vec3 transformed = vec3( position ) * m;\n vNormal = vNormal * m;")}get time(){return this._time.value}set time(e){this._time.value=e}get factor(){return this._factor.value}set factor(e){this._factor.value=e}}const u=s.forwardRef((({speed:e=1,...t},r)=>{const[i]=s.useState((()=>new c));return a.useFrame((t=>i&&(i.time=t.clock.getElapsedTime()*e))),s.createElement("primitive",n.default({
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three"),a=require("@react-three/fiber");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var n=i(e),s=o(t);class c extends r.MeshStandardMaterial{constructor(e={}){super(e),this.setValues(e),this._time={value:0},this._factor={value:1}}onBeforeCompile(e){e.uniforms.time=this._time,e.uniforms.factor=this._factor,e.vertexShader=`\n uniform float time;\n uniform float factor;\n ${e.vertexShader}\n `,e.vertexShader=e.vertexShader.replace("#include <begin_vertex>","float theta = sin( time + position.y ) / 2.0 * factor;\n float c = cos( theta );\n float s = sin( theta );\n mat3 m = mat3( c, 0, s, 0, 1, 0, -s, 0, c );\n vec3 transformed = vec3( position ) * m;\n vNormal = vNormal * m;")}get time(){return this._time.value}set time(e){this._time.value=e}get factor(){return this._factor.value}set factor(e){this._factor.value=e}}const u=s.forwardRef((({speed:e=1,...t},r)=>{const[i]=s.useState((()=>new c));return a.useFrame((t=>i&&(i.time=t.clock.getElapsedTime()*e))),s.createElement("primitive",n.default({object:i,ref:r,attach:"material"},t))}));exports.MeshWobbleMaterial=u;
|
|
@@ -56,7 +56,6 @@ const MeshWobbleMaterial = /*#__PURE__*/React.forwardRef(({
|
|
|
56
56
|
const [material] = React.useState(() => new WobbleMaterialImpl());
|
|
57
57
|
useFrame(state => material && (material.time = state.clock.getElapsedTime() * speed));
|
|
58
58
|
return /*#__PURE__*/React.createElement("primitive", _extends({
|
|
59
|
-
dispose: undefined,
|
|
60
59
|
object: material,
|
|
61
60
|
ref: ref,
|
|
62
61
|
attach: "material"
|
package/core/RoundedBox.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(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=n(e),s=a(t);const c=1e-5;const o=s.forwardRef((function({args:[e=1,t=1,n=1]=[],radius:a=.05,steps:o=1,smoothness:f=4,children:i,...l},b){const d=s.useMemo((()=>function(e,t,n){const a=new r.Shape,u=n-c;return a.absarc(c,c,c,-Math.PI/2,-Math.PI,!0),a.absarc(c,t-2*u,c,Math.PI,Math.PI/2,!0),a.absarc(e-2*u,t-2*u,c,Math.PI/2,0,!0),a.absarc(e-2*u,c,c,0,-Math.PI/2,!0),a}(e,t,a)),[e,t,a]),h=s.useMemo((()=>({depth:n-2*a,bevelEnabled:!0,bevelSegments:2*f,steps:o,bevelSize:a-c,bevelThickness:a,curveSegments:f})),[n,a,f]),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(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=n(e),s=a(t);const c=1e-5;const o=s.forwardRef((function({args:[e=1,t=1,n=1]=[],radius:a=.05,steps:o=1,smoothness:f=4,children:i,...l},b){const d=s.useMemo((()=>function(e,t,n){const a=new r.Shape,u=n-c;return a.absarc(c,c,c,-Math.PI/2,-Math.PI,!0),a.absarc(c,t-2*u,c,Math.PI,Math.PI/2,!0),a.absarc(e-2*u,t-2*u,c,Math.PI/2,0,!0),a.absarc(e-2*u,c,c,0,-Math.PI/2,!0),a}(e,t,a)),[e,t,a]),h=s.useMemo((()=>({depth:n-2*a,bevelEnabled:!0,bevelSegments:2*f,steps:o,bevelSize:a-c,bevelThickness:a,curveSegments:f})),[n,a,f]),p=s.useRef();return s.useLayoutEffect((()=>{p.current&&p.current.center()}),[d,h]),s.createElement("mesh",u.default({ref:b},l),s.createElement("extrudeGeometry",{ref:p,args:[d,h]}),i)}));exports.RoundedBox=o;
|
package/core/RoundedBox.js
CHANGED
|
@@ -40,8 +40,7 @@ const RoundedBox = /*#__PURE__*/React.forwardRef(function RoundedBox({
|
|
|
40
40
|
}, [shape, params]);
|
|
41
41
|
return /*#__PURE__*/React.createElement("mesh", _extends({
|
|
42
42
|
ref: ref
|
|
43
|
-
}, rest), /*#__PURE__*/React.createElement("
|
|
44
|
-
attach: "geometry",
|
|
43
|
+
}, rest), /*#__PURE__*/React.createElement("extrudeGeometry", {
|
|
45
44
|
ref: geomRef,
|
|
46
45
|
args: [shape, params]
|
|
47
46
|
}), children);
|
package/core/Shadow.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var n=a(e),c=o(t);const l=c.forwardRef((({fog:e=!1,colorStop:t=0,color:a="black",opacity:o=.5,...l},i)=>{const u=c.useMemo((()=>{const e=document.createElement("canvas");e.width=128,e.height=128;const o=e.getContext("2d"),n=o.createRadialGradient(e.width/2,e.height/2,0,e.width/2,e.height/2,e.width/2);return n.addColorStop(t,new r.Color(a).getStyle()),n.addColorStop(1,"rgba(0,0,0,0)"),o.fillStyle=n,o.fillRect(0,0,e.width,e.height),e}),[a,t]);return c.createElement("mesh",n.default({ref:i},l),c.createElement("
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}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 a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var n=a(e),c=o(t);const l=c.forwardRef((({fog:e=!1,colorStop:t=0,color:a="black",opacity:o=.5,...l},i)=>{const u=c.useMemo((()=>{const e=document.createElement("canvas");e.width=128,e.height=128;const o=e.getContext("2d"),n=o.createRadialGradient(e.width/2,e.height/2,0,e.width/2,e.height/2,e.width/2);return n.addColorStop(t,new r.Color(a).getStyle()),n.addColorStop(1,"rgba(0,0,0,0)"),o.fillStyle=n,o.fillRect(0,0,e.width,e.height),e}),[a,t]);return c.createElement("mesh",n.default({ref:i},l),c.createElement("planeGeometry",null),c.createElement("meshBasicMaterial",{transparent:!0,opacity:o,fog:e},c.createElement("canvasTexture",{attach:"map",args:[u]})))}));exports.Shadow=l;
|
package/core/Shadow.js
CHANGED
|
@@ -23,11 +23,7 @@ const Shadow = /*#__PURE__*/React.forwardRef(({
|
|
|
23
23
|
}, [color, colorStop]);
|
|
24
24
|
return /*#__PURE__*/React.createElement("mesh", _extends({
|
|
25
25
|
ref: ref
|
|
26
|
-
}, props), /*#__PURE__*/React.createElement("
|
|
27
|
-
attach: "geometry",
|
|
28
|
-
args: [1, 1]
|
|
29
|
-
}), /*#__PURE__*/React.createElement("meshBasicMaterial", {
|
|
30
|
-
attach: "material",
|
|
26
|
+
}, props), /*#__PURE__*/React.createElement("planeGeometry", null), /*#__PURE__*/React.createElement("meshBasicMaterial", {
|
|
31
27
|
transparent: true,
|
|
32
28
|
opacity: opacity,
|
|
33
29
|
fog: fog
|
package/core/Sky.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three-stdlib"),i=require("three");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),t=require("react"),r=require("three-stdlib"),i=require("three");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var u=n(e),o=a(t);function c(e,t,r=new i.Vector3){const n=Math.PI*(e-.5),a=2*Math.PI*(t-.5);return r.x=Math.cos(a),r.y=Math.sin(n),r.z=Math.sin(a),r}const l=o.forwardRef((({inclination:e=.6,azimuth:t=.1,distance:n=1e3,mieCoefficient:a=.005,mieDirectionalG:l=.8,rayleigh:s=.5,turbidity:f=10,sunPosition:m=c(e,t),...d},b)=>{const h=o.useMemo((()=>(new i.Vector3).setScalar(n)),[n]),[y]=o.useState((()=>new r.Sky));return o.createElement("primitive",u.default({object:y,ref:b,"material-uniforms-mieCoefficient-value":a,"material-uniforms-mieDirectionalG-value":l,"material-uniforms-rayleigh-value":s,"material-uniforms-sunPosition-value":m,"material-uniforms-turbidity-value":f,scale:h},d))}));exports.Sky=l,exports.calcPosFromAngles=c;
|
package/core/Sky.js
CHANGED
|
@@ -25,7 +25,6 @@ const Sky = /*#__PURE__*/React.forwardRef(({
|
|
|
25
25
|
const scale = React.useMemo(() => new Vector3().setScalar(distance), [distance]);
|
|
26
26
|
const [sky] = React.useState(() => new Sky$1());
|
|
27
27
|
return /*#__PURE__*/React.createElement("primitive", _extends({
|
|
28
|
-
dispose: undefined,
|
|
29
28
|
object: sky,
|
|
30
29
|
ref: ref,
|
|
31
30
|
"material-uniforms-mieCoefficient-value": mieCoefficient,
|
package/core/Stars.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("three");function n(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 a=n(e);class o extends r.ShaderMaterial{constructor(){super({uniforms:{time:{value:0},fade:{value:1}},vertexShader:"\n uniform float time;\n attribute float size;\n varying vec3 vColor;\n void main() {\n vColor = color;\n vec4 mvPosition = modelViewMatrix * vec4(position, 0.5);\n gl_PointSize = size * (30.0 / -mvPosition.z) * (3.0 + sin(mvPosition.x + 2.0 * time + 100.0));\n gl_Position = projectionMatrix * mvPosition;\n }",fragmentShader:"\n uniform sampler2D pointTexture;\n uniform float fade;\n varying vec3 vColor;\n void main() {\n float opacity = 1.0;\n if (fade == 1.0) {\n float d = distance(gl_PointCoord, vec2(0.5, 0.5));\n opacity = 1.0 / (1.0 + exp(16.0 * (d - 0.25)));\n }\n gl_FragColor = vec4(vColor, opacity);\n\n #include <tonemapping_fragment>\n\t #include <encodings_fragment>\n }"})}}const i=e=>(new r.Vector3).setFromSpherical(new r.Spherical(e,Math.acos(1-2*Math.random()),2*Math.random()*Math.PI)),c=a.forwardRef((({radius:e=100,depth:n=50,count:c=5e3,saturation:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@react-three/fiber"),r=require("three");function n(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 a=n(e);class o extends r.ShaderMaterial{constructor(){super({uniforms:{time:{value:0},fade:{value:1}},vertexShader:"\n uniform float time;\n attribute float size;\n varying vec3 vColor;\n void main() {\n vColor = color;\n vec4 mvPosition = modelViewMatrix * vec4(position, 0.5);\n gl_PointSize = size * (30.0 / -mvPosition.z) * (3.0 + sin(mvPosition.x + 2.0 * time + 100.0));\n gl_Position = projectionMatrix * mvPosition;\n }",fragmentShader:"\n uniform sampler2D pointTexture;\n uniform float fade;\n varying vec3 vColor;\n void main() {\n float opacity = 1.0;\n if (fade == 1.0) {\n float d = distance(gl_PointCoord, vec2(0.5, 0.5));\n opacity = 1.0 / (1.0 + exp(16.0 * (d - 0.25)));\n }\n gl_FragColor = vec4(vColor, opacity);\n\n #include <tonemapping_fragment>\n\t #include <encodings_fragment>\n }"})}}const i=e=>(new r.Vector3).setFromSpherical(new r.Spherical(e,Math.acos(1-2*Math.random()),2*Math.random()*Math.PI)),c=a.forwardRef((({radius:e=100,depth:n=50,count:c=5e3,saturation:l=0,factor:s=4,fade:u=!1},f)=>{const m=a.useRef(),[d,v,p]=a.useMemo((()=>{const t=[],a=[],o=Array.from({length:c},(()=>(.5+.5*Math.random())*s)),u=new r.Color;let f=e+n;const m=n/c;for(let e=0;e<c;e++)f-=m*Math.random(),t.push(...i(f).toArray()),u.setHSL(e/c,l,.9),a.push(u.r,u.g,u.b);return[new Float32Array(t),new Float32Array(a),new Float32Array(o)]}),[c,n,s,e,l]);t.useFrame((e=>m.current&&(m.current.uniforms.time.value=e.clock.getElapsedTime())));const[g]=a.useState((()=>new o));return a.createElement("points",{ref:f},a.createElement("bufferGeometry",null,a.createElement("bufferAttribute",{attach:"attributes-position",args:[d,3]}),a.createElement("bufferAttribute",{attach:"attributes-color",args:[v,3]}),a.createElement("bufferAttribute",{attach:"attributes-size",args:[p,1]})),a.createElement("primitive",{ref:m,object:g,attach:"material",blending:r.AdditiveBlending,"uniforms-fade-value":u,transparent:!0,vertexColors:!0}))}));exports.Stars=c;
|
package/core/Stars.js
CHANGED
|
@@ -83,9 +83,7 @@ const Stars = /*#__PURE__*/React.forwardRef(({
|
|
|
83
83
|
const [starfieldMaterial] = React.useState(() => new StarfieldMaterial());
|
|
84
84
|
return /*#__PURE__*/React.createElement("points", {
|
|
85
85
|
ref: ref
|
|
86
|
-
}, /*#__PURE__*/React.createElement("bufferGeometry", {
|
|
87
|
-
attach: "geometry"
|
|
88
|
-
}, /*#__PURE__*/React.createElement("bufferAttribute", {
|
|
86
|
+
}, /*#__PURE__*/React.createElement("bufferGeometry", null, /*#__PURE__*/React.createElement("bufferAttribute", {
|
|
89
87
|
attach: "attributes-position",
|
|
90
88
|
args: [position, 3]
|
|
91
89
|
}), /*#__PURE__*/React.createElement("bufferAttribute", {
|
|
@@ -95,7 +93,6 @@ const Stars = /*#__PURE__*/React.forwardRef(({
|
|
|
95
93
|
attach: "attributes-size",
|
|
96
94
|
args: [size, 1]
|
|
97
95
|
})), /*#__PURE__*/React.createElement("primitive", {
|
|
98
|
-
dispose: undefined,
|
|
99
96
|
ref: material,
|
|
100
97
|
object: starfieldMaterial,
|
|
101
98
|
attach: "material",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),n=require("@react-three/fiber"),t=require("lodash.omit"),r=require("lodash.pick"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),n=require("@react-three/fiber"),t=require("lodash.omit"),r=require("lodash.pick"),a=require("react"),u=require("three"),o=require("three-stdlib");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}var i=l(e),c=l(t),d=l(r),f=s(a),v=s(u);const m=f.forwardRef((({children:e,domElement:t,onChange:r,onMouseDown:a,onMouseUp:u,onObjectChange:l,object:s,...m},h)=>{const E=["enabled","axis","mode","translationSnap","rotationSnap","scaleSnap","space","size","showX","showY","showZ"],{camera:b,...g}=m,L=d.default(g,E),p=c.default(g,E),j=n.useThree((e=>e.controls)),O=n.useThree((e=>e.gl)),w=n.useThree((e=>e.events)),q=n.useThree((e=>e.camera)),T=n.useThree((e=>e.invalidate)),y=b||q,C=t||w.connected||O.domElement,D=f.useMemo((()=>new o.TransformControls(y,C)),[y,C]),M=f.useRef();return f.useLayoutEffect((()=>(s?D.attach(s instanceof v.Object3D?s:s.current):M.current instanceof v.Object3D&&D.attach(M.current),()=>{D.detach()})),[s,e,D]),f.useEffect((()=>{if(j){const e=e=>j.enabled=!e.value;return D.addEventListener("dragging-changed",e),()=>D.removeEventListener("dragging-changed",e)}}),[D,j]),f.useEffect((()=>{const e=e=>{T(),r&&r(e)};return null==D||null==D.addEventListener||D.addEventListener("change",e),a&&(null==D||null==D.addEventListener||D.addEventListener("mouseDown",a)),u&&(null==D||null==D.addEventListener||D.addEventListener("mouseUp",u)),l&&(null==D||null==D.addEventListener||D.addEventListener("objectChange",l)),()=>{null==D||null==D.removeEventListener||D.removeEventListener("change",e),a&&(null==D||null==D.removeEventListener||D.removeEventListener("mouseDown",a)),u&&(null==D||null==D.removeEventListener||D.removeEventListener("mouseUp",u)),l&&(null==D||null==D.removeEventListener||D.removeEventListener("objectChange",l))}}),[r,a,u,l,D,T]),D?f.createElement(f.Fragment,null,f.createElement("primitive",i.default({ref:h,object:D},L)),f.createElement("group",i.default({ref:M},p),e)):null}));exports.TransformControls=m;
|
|
@@ -69,7 +69,6 @@ const TransformControls = /*#__PURE__*/React.forwardRef(({
|
|
|
69
69
|
}, [onChange, onMouseDown, onMouseUp, onObjectChange, controls, invalidate]);
|
|
70
70
|
return controls ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("primitive", _extends({
|
|
71
71
|
ref: ref,
|
|
72
|
-
dispose: undefined,
|
|
73
72
|
object: controls
|
|
74
73
|
}, transformProps)), /*#__PURE__*/React.createElement("group", _extends({
|
|
75
74
|
ref: group
|