@react-three/drei 7.25.4 → 7.27.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 +1661 -0
- package/core/ArcballControls.d.ts +1 -1
- package/core/Backdrop.js +3 -1
- package/core/BakeShadows.cjs.js +1 -1
- package/core/BakeShadows.js +3 -3
- package/core/Bounds.cjs.js +1 -1
- package/core/Bounds.js +2 -2
- package/core/DeviceOrientationControls.d.ts +1 -1
- package/core/Instances.cjs.js +1 -1
- package/core/Instances.js +1 -1
- package/core/Line.d.ts +1 -1
- package/core/MapControls.d.ts +1 -1
- package/core/MeshDistortMaterial.d.ts +1 -1
- package/core/MeshReflectorMaterial.cjs.js +1 -0
- package/core/MeshReflectorMaterial.d.ts +25 -0
- package/core/MeshReflectorMaterial.js +180 -0
- package/core/MeshWobbleMaterial.d.ts +1 -1
- package/core/OrbitControls.d.ts +1 -1
- package/core/PositionalAudio.d.ts +1 -1
- package/core/QuadraticBezierLine.js +5 -1
- package/core/Reflector.cjs.js +1 -1
- package/core/Reflector.d.ts +4 -5
- package/core/Reflector.js +34 -49
- package/core/SpotLight.d.ts +1 -1
- package/core/Text.d.ts +1 -1
- package/core/TrackballControls.d.ts +1 -1
- package/core/TransformControls.d.ts +1 -1
- package/core/index.cjs.js +1 -1
- package/core/index.d.ts +1 -0
- package/core/index.js +4 -1
- package/core/useDetectGPU.cjs.js +1 -1
- package/core/useDetectGPU.d.ts +1 -1
- package/core/useDetectGPU.js +1 -5
- package/index.cjs.js +1 -1
- package/index.js +2 -1
- package/materials/BlurPass.cjs.js +1 -0
- package/materials/BlurPass.d.ts +23 -0
- package/materials/BlurPass.js +75 -0
- package/materials/ConvolutionMaterial.cjs.js +1 -0
- package/materials/ConvolutionMaterial.d.ts +7 -0
- package/materials/ConvolutionMaterial.js +97 -0
- package/materials/MeshReflectorMaterial.cjs.js +1 -1
- package/materials/MeshReflectorMaterial.d.ts +10 -66
- package/materials/MeshReflectorMaterial.js +65 -313
- package/native/index.cjs.js +1 -1
- package/native/index.d.ts +0 -1
- package/native/index.js +4 -1
- package/package.json +3 -1
- package/web/PresentationControls.cjs.js +1 -0
- package/web/PresentationControls.d.ts +14 -0
- package/web/PresentationControls.js +73 -0
- package/web/ScrollControls.cjs.js +1 -1
- package/web/ScrollControls.js +1 -1
- package/web/index.cjs.js +1 -1
- package/web/index.d.ts +1 -1
- package/web/index.js +7 -1
- package/materials/index.cjs.js +0 -1
- package/materials/index.d.ts +0 -1
- package/materials/index.js +0 -2
package/core/Reflector.js
CHANGED
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { Plane, Vector3, Matrix4, Vector4, PerspectiveCamera, LinearFilter, RGBFormat, WebGLRenderTarget, DepthTexture, DepthFormat, UnsignedShortType
|
|
3
|
+
import { Plane, Vector3, Matrix4, Vector4, PerspectiveCamera, LinearFilter, RGBFormat, WebGLRenderTarget, DepthTexture, DepthFormat, UnsignedShortType } from 'three';
|
|
4
4
|
import { extend, useThree, useFrame } from '@react-three/fiber';
|
|
5
5
|
import mergeRefs from 'react-merge-refs';
|
|
6
|
+
import { BlurPass } from '../materials/BlurPass.js';
|
|
6
7
|
import { MeshReflectorMaterial } from '../materials/MeshReflectorMaterial.js';
|
|
7
8
|
|
|
8
9
|
extend({
|
|
9
10
|
MeshReflectorMaterial
|
|
10
11
|
});
|
|
11
|
-
const MIPMAP_NUM = 8;
|
|
12
12
|
const Reflector = /*#__PURE__*/React.forwardRef(({
|
|
13
13
|
mixBlur = 0.0,
|
|
14
14
|
mixStrength = 0.5,
|
|
15
15
|
resolution = 256,
|
|
16
|
+
blur = [0, 0],
|
|
16
17
|
args = [1, 1],
|
|
17
18
|
minDepthThreshold = 0.9,
|
|
18
19
|
maxDepthThreshold = 1,
|
|
@@ -25,6 +26,9 @@ const Reflector = /*#__PURE__*/React.forwardRef(({
|
|
|
25
26
|
distortionMap,
|
|
26
27
|
...props
|
|
27
28
|
}, ref) => {
|
|
29
|
+
React.useEffect(() => {
|
|
30
|
+
console.warn('Reflector has been deprecated and will be removed next major. Replace it with <MeshReflectorMaterial />!');
|
|
31
|
+
}, []);
|
|
28
32
|
const gl = useThree(({
|
|
29
33
|
gl
|
|
30
34
|
}) => gl);
|
|
@@ -34,6 +38,8 @@ const Reflector = /*#__PURE__*/React.forwardRef(({
|
|
|
34
38
|
const scene = useThree(({
|
|
35
39
|
scene
|
|
36
40
|
}) => scene);
|
|
41
|
+
blur = Array.isArray(blur) ? blur : [blur, blur];
|
|
42
|
+
const hasBlur = blur[0] + blur[1] > 0;
|
|
37
43
|
const meshRef = React.useRef(null);
|
|
38
44
|
const [reflectorPlane] = React.useState(() => new Plane());
|
|
39
45
|
const [normal] = React.useState(() => new Vector3());
|
|
@@ -47,24 +53,6 @@ const Reflector = /*#__PURE__*/React.forwardRef(({
|
|
|
47
53
|
const [q] = React.useState(() => new Vector4());
|
|
48
54
|
const [textureMatrix] = React.useState(() => new Matrix4());
|
|
49
55
|
const [virtualCamera] = React.useState(() => new PerspectiveCamera());
|
|
50
|
-
const [renderTargets] = React.useState(() => {
|
|
51
|
-
const renderTargets = [];
|
|
52
|
-
const pars = {
|
|
53
|
-
minFilter: LinearFilter,
|
|
54
|
-
magFilter: LinearFilter,
|
|
55
|
-
format: RGBFormat,
|
|
56
|
-
encoding: gl.outputEncoding
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
for (let i = 0; i < MIPMAP_NUM; i++) {
|
|
60
|
-
const res = Math.max(8, Math.round(resolution / Math.pow(2, i)));
|
|
61
|
-
const renderTarget = new WebGLRenderTarget(res, res, pars);
|
|
62
|
-
renderTarget.texture.generateMipmaps = false;
|
|
63
|
-
renderTargets.push(renderTarget);
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
return renderTargets;
|
|
67
|
-
});
|
|
68
56
|
const beforeRender = React.useCallback(() => {
|
|
69
57
|
reflectorWorldPosition.setFromMatrixPosition(meshRef.current.matrixWorld);
|
|
70
58
|
cameraWorldPosition.setFromMatrixPosition(camera.matrixWorld);
|
|
@@ -113,9 +101,9 @@ const Reflector = /*#__PURE__*/React.forwardRef(({
|
|
|
113
101
|
projectionMatrix.elements[2] = clipPlane.x;
|
|
114
102
|
projectionMatrix.elements[6] = clipPlane.y;
|
|
115
103
|
projectionMatrix.elements[10] = clipPlane.z + 1.0;
|
|
116
|
-
projectionMatrix.elements[14] = clipPlane.w;
|
|
117
|
-
}, [
|
|
118
|
-
const [fbo1, reflectorProps] = React.useMemo(() => {
|
|
104
|
+
projectionMatrix.elements[14] = clipPlane.w; // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
105
|
+
}, []);
|
|
106
|
+
const [fbo1, fbo2, blurpass, reflectorProps] = React.useMemo(() => {
|
|
119
107
|
const parameters = {
|
|
120
108
|
minFilter: LinearFilter,
|
|
121
109
|
magFilter: LinearFilter,
|
|
@@ -123,39 +111,44 @@ const Reflector = /*#__PURE__*/React.forwardRef(({
|
|
|
123
111
|
encoding: gl.outputEncoding
|
|
124
112
|
};
|
|
125
113
|
const fbo1 = new WebGLRenderTarget(resolution, resolution, parameters);
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
114
|
+
fbo1.depthBuffer = true;
|
|
115
|
+
fbo1.depthTexture = new DepthTexture(resolution, resolution);
|
|
116
|
+
fbo1.depthTexture.format = DepthFormat;
|
|
117
|
+
fbo1.depthTexture.type = UnsignedShortType;
|
|
118
|
+
const fbo2 = new WebGLRenderTarget(resolution, resolution, parameters);
|
|
119
|
+
const blurpass = new BlurPass({
|
|
120
|
+
gl,
|
|
121
|
+
resolution,
|
|
122
|
+
width: blur[0],
|
|
123
|
+
height: blur[1],
|
|
124
|
+
minDepthThreshold,
|
|
125
|
+
maxDepthThreshold,
|
|
126
|
+
depthScale,
|
|
127
|
+
depthToBlurRatioBias
|
|
128
|
+
});
|
|
139
129
|
const reflectorProps = {
|
|
140
130
|
mirror,
|
|
141
131
|
textureMatrix,
|
|
142
132
|
mixBlur,
|
|
143
133
|
tDiffuse: fbo1.texture,
|
|
144
134
|
tDepth: fbo1.depthTexture,
|
|
135
|
+
tDiffuseBlur: fbo2.texture,
|
|
136
|
+
hasBlur,
|
|
145
137
|
mixStrength,
|
|
146
138
|
minDepthThreshold,
|
|
147
139
|
maxDepthThreshold,
|
|
148
140
|
depthScale,
|
|
149
141
|
depthToBlurRatioBias,
|
|
142
|
+
transparent: true,
|
|
150
143
|
debug,
|
|
151
144
|
distortion,
|
|
152
145
|
distortionMap,
|
|
146
|
+
'defines-USE_BLUR': hasBlur ? '' : undefined,
|
|
153
147
|
'defines-USE_DEPTH': depthScale > 0 ? '' : undefined,
|
|
154
|
-
'defines-USE_DISTORTION': distortionMap ? '' : undefined
|
|
155
|
-
...mipmaps
|
|
148
|
+
'defines-USE_DISTORTION': distortionMap ? '' : undefined
|
|
156
149
|
};
|
|
157
|
-
return [fbo1, reflectorProps];
|
|
158
|
-
}, [gl, textureMatrix, resolution, mirror, mixBlur, mixStrength, minDepthThreshold, maxDepthThreshold, depthScale, depthToBlurRatioBias, debug, distortion, distortionMap
|
|
150
|
+
return [fbo1, fbo2, blurpass, reflectorProps];
|
|
151
|
+
}, [gl, blur, textureMatrix, resolution, mirror, hasBlur, mixBlur, mixStrength, minDepthThreshold, maxDepthThreshold, depthScale, depthToBlurRatioBias, debug, distortion, distortionMap]);
|
|
159
152
|
useFrame(() => {
|
|
160
153
|
if (!(meshRef != null && meshRef.current)) return;
|
|
161
154
|
meshRef.current.visible = false;
|
|
@@ -168,15 +161,7 @@ const Reflector = /*#__PURE__*/React.forwardRef(({
|
|
|
168
161
|
gl.state.buffers.depth.setMask(true);
|
|
169
162
|
if (!gl.autoClear) gl.clear();
|
|
170
163
|
gl.render(scene, virtualCamera);
|
|
171
|
-
|
|
172
|
-
if (mixBlur !== 0) {
|
|
173
|
-
renderTargets.forEach(fbo => {
|
|
174
|
-
gl.setRenderTarget(fbo);
|
|
175
|
-
gl.state.buffers.depth.setMask(true);
|
|
176
|
-
gl.render(scene, virtualCamera);
|
|
177
|
-
});
|
|
178
|
-
}
|
|
179
|
-
|
|
164
|
+
if (hasBlur) blurpass.render(gl, fbo1, fbo2);
|
|
180
165
|
gl.xr.enabled = currentXrEnabled;
|
|
181
166
|
gl.shadowMap.autoUpdate = currentShadowAutoUpdate;
|
|
182
167
|
meshRef.current.visible = true;
|
package/core/SpotLight.d.ts
CHANGED
|
@@ -7,5 +7,5 @@ declare const SpotLight: React.ForwardRefExoticComponent<Pick<Omit<import("@reac
|
|
|
7
7
|
attenuation?: number | undefined;
|
|
8
8
|
anglePower?: number | undefined;
|
|
9
9
|
color?: string | number | undefined;
|
|
10
|
-
}, "visible" | "attach" | "attachArray" | "attachObject" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | "color" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "distance" | "target" | "intensity" | "isLight" | "shadow" | "shadowCameraFov" | "shadowCameraLeft" | "shadowCameraRight" | "shadowCameraTop" | "shadowCameraBottom" | "shadowCameraNear" | "shadowCameraFar" | "shadowBias" | "shadowMapWidth" | "shadowMapHeight" | "
|
|
10
|
+
}, "visible" | "attach" | "attachArray" | "attachObject" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | "color" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "distance" | "decay" | "target" | "angle" | "intensity" | "isLight" | "shadow" | "shadowCameraFov" | "shadowCameraLeft" | "shadowCameraRight" | "shadowCameraTop" | "shadowCameraBottom" | "shadowCameraNear" | "shadowCameraFar" | "shadowBias" | "shadowMapWidth" | "shadowMapHeight" | "power" | "depthBuffer" | "penumbra" | "isSpotLight" | "attenuation" | "anglePower"> & React.RefAttributes<SpotLightImpl>>;
|
|
11
11
|
export { SpotLight };
|
package/core/Text.d.ts
CHANGED
|
@@ -45,5 +45,5 @@ export declare const Text: React.ForwardRefExoticComponent<Pick<Omit<ReactThreeF
|
|
|
45
45
|
strokeOpacity?: number | undefined;
|
|
46
46
|
fillOpacity?: number | undefined;
|
|
47
47
|
debugSDF?: boolean | undefined;
|
|
48
|
-
onSync?: ((troika:
|
|
48
|
+
onSync?: ((troika: TextMeshImpl) => void) | undefined;
|
|
49
49
|
}, "visible" | "attach" | "attachArray" | "attachObject" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | "color" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "font" | "material" | "direction" | "fontSize" | "letterSpacing" | "lineHeight" | "maxWidth" | "outlineColor" | "outlineWidth" | "overflowWrap" | "textAlign" | "whiteSpace" | "fillOpacity" | "strokeOpacity" | "strokeWidth" | "geometry" | "morphTargetInfluences" | "morphTargetDictionary" | "isMesh" | "updateMorphTargets" | "anchorX" | "anchorY" | "onSync" | "clipRect" | "depthOffset" | "outlineOffsetX" | "outlineOffsetY" | "outlineBlur" | "outlineOpacity" | "strokeColor" | "debugSDF"> & React.RefAttributes<unknown>>;
|
|
@@ -12,4 +12,4 @@ export declare type TrackballControlsProps = ReactThreeFiber.Overwrite<ReactThre
|
|
|
12
12
|
onStart?: (e?: THREE.Event) => void;
|
|
13
13
|
onEnd?: (e?: THREE.Event) => void;
|
|
14
14
|
}>;
|
|
15
|
-
export declare const TrackballControls: React.ForwardRefExoticComponent<Pick<TrackballControlsProps, "object" | "attach" | "attachArray" | "attachObject" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | "onChange" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "camera" | "screen" | "reset" | "enabled" | "
|
|
15
|
+
export declare const TrackballControls: React.ForwardRefExoticComponent<Pick<TrackballControlsProps, "object" | "attach" | "attachArray" | "attachObject" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | "onChange" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "camera" | "screen" | "reset" | "enabled" | "update" | "onStart" | "keys" | "target" | "connect" | "makeDefault" | "domElement" | "minDistance" | "maxDistance" | "zoomSpeed" | "rotateSpeed" | "panSpeed" | "mouseButtons" | "onEnd" | "regress" | "noRotate" | "noZoom" | "noPan" | "staticMoving" | "dynamicDampingFactor" | "cursorZoom" | "handleResize"> & React.RefAttributes<TrackballControlsImpl>>;
|
|
@@ -22,4 +22,4 @@ export declare type TransformControlsProps = ReactThreeFiber.Object3DNode<Transf
|
|
|
22
22
|
onMouseUp?: (e?: THREE.Event) => void;
|
|
23
23
|
onObjectChange?: (e?: THREE.Event) => void;
|
|
24
24
|
};
|
|
25
|
-
export declare const TransformControls: React.ForwardRefExoticComponent<Pick<TransformControlsProps, "object" | "visible" | "attach" | "attachArray" | "attachObject" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "isGroup" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | "onChange" | "onMouseDown" | "onMouseUp" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "camera" | "size" | "space" | "enabled" | "
|
|
25
|
+
export declare const TransformControls: React.ForwardRefExoticComponent<Pick<TransformControlsProps, "object" | "visible" | "attach" | "attachArray" | "attachObject" | "args" | "children" | "key" | "onUpdate" | "position" | "up" | "scale" | "rotation" | "matrix" | "quaternion" | "layers" | "dispose" | "type" | "isGroup" | "id" | "uuid" | "name" | "parent" | "modelViewMatrix" | "normalMatrix" | "matrixWorld" | "matrixAutoUpdate" | "matrixWorldNeedsUpdate" | "castShadow" | "receiveShadow" | "frustumCulled" | "renderOrder" | "animations" | "userData" | "customDepthMaterial" | "customDistanceMaterial" | "isObject3D" | "onBeforeRender" | "onAfterRender" | "applyMatrix4" | "applyQuaternion" | "setRotationFromAxisAngle" | "setRotationFromEuler" | "setRotationFromMatrix" | "setRotationFromQuaternion" | "rotateOnAxis" | "rotateOnWorldAxis" | "rotateX" | "rotateY" | "rotateZ" | "translateOnAxis" | "translateX" | "translateY" | "translateZ" | "localToWorld" | "worldToLocal" | "lookAt" | "add" | "remove" | "clear" | "getObjectById" | "getObjectByName" | "getObjectByProperty" | "getWorldPosition" | "getWorldQuaternion" | "getWorldScale" | "getWorldDirection" | "raycast" | "traverse" | "traverseVisible" | "traverseAncestors" | "updateMatrix" | "updateMatrixWorld" | "updateWorldMatrix" | "toJSON" | "clone" | "copy" | "addEventListener" | "hasEventListener" | "removeEventListener" | "dispatchEvent" | "onChange" | "onMouseDown" | "onMouseUp" | keyof import("@react-three/fiber/dist/declarations/src/core/events").EventHandlers | "camera" | "size" | "space" | "enabled" | "update" | "axis" | "setSize" | "isTransformControls" | "detach" | "getMode" | "setMode" | "setTranslationSnap" | "setRotationSnap" | "setScaleSnap" | "setSpace" | "onObjectChange" | "mode" | "translationSnap" | "rotationSnap" | "scaleSnap" | "showX" | "showY" | "showZ"> & React.RefAttributes<TransformControlsImpl<THREE.Camera>>>;
|
package/core/index.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./QuadraticBezierLine.cjs.js"),s=require("./CubicBezierLine.cjs.js"),t=require("./Line.cjs.js"),o=require("./PositionalAudio.cjs.js"),i=require("./Text.cjs.js"),u=require("./Effects.cjs.js"),a=require("./GradientTexture.cjs.js"),c=require("./Image.cjs.js"),j=require("./OrthographicCamera.cjs.js"),p=require("./PerspectiveCamera.cjs.js"),n=require("./CubeCamera.cjs.js"),l=require("./DeviceOrientationControls.cjs.js"),x=require("./FlyControls.cjs.js"),q=require("./MapControls.cjs.js"),d=require("./OrbitControls.cjs.js"),h=require("./TrackballControls.cjs.js"),C=require("./ArcballControls.cjs.js"),m=require("./TransformControls.cjs.js"),B=require("./PointerLockControls.cjs.js"),S=require("./FirstPersonControls.cjs.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./QuadraticBezierLine.cjs.js"),s=require("./CubicBezierLine.cjs.js"),t=require("./Line.cjs.js"),o=require("./PositionalAudio.cjs.js"),i=require("./Text.cjs.js"),u=require("./Effects.cjs.js"),a=require("./GradientTexture.cjs.js"),c=require("./Image.cjs.js"),j=require("./OrthographicCamera.cjs.js"),p=require("./PerspectiveCamera.cjs.js"),n=require("./CubeCamera.cjs.js"),l=require("./DeviceOrientationControls.cjs.js"),x=require("./FlyControls.cjs.js"),q=require("./MapControls.cjs.js"),d=require("./OrbitControls.cjs.js"),h=require("./TrackballControls.cjs.js"),C=require("./ArcballControls.cjs.js"),m=require("./TransformControls.cjs.js"),B=require("./PointerLockControls.cjs.js"),S=require("./FirstPersonControls.cjs.js"),f=require("./GizmoHelper.cjs.js"),b=require("./GizmoViewcube.cjs.js"),P=require("./GizmoViewport.cjs.js"),M=require("./useCubeTexture.cjs.js"),T=require("./useFBX.cjs.js"),g=require("./useGLTF.cjs.js"),v=require("./useProgress.cjs.js"),D=require("./useTexture.cjs.js"),L=require("./Stats.cjs.js"),A=require("./DepthBuffer.cjs.js"),G=require("./useDepthBuffer.cjs.js"),k=require("./useAspect.cjs.js"),F=require("./useCamera.cjs.js"),w=require("./useDetectGPU.cjs.js"),z=require("./useHelper.cjs.js"),I=require("./useBVH.cjs.js"),O=require("./useContextBridge.cjs.js"),E=require("./useAnimations.cjs.js"),R=require("./useFBO.cjs.js"),y=require("./useIntersect.cjs.js"),H=require("./useSimplification.cjs.js"),V=require("./useTessellation.cjs.js"),Q=require("./useEdgeSplit.cjs.js"),W=require("./CurveModifier.cjs.js"),N=require("./MeshDistortMaterial.cjs.js"),U=require("./MeshWobbleMaterial.cjs.js"),X=require("./MeshReflectorMaterial.cjs.js"),K=require("./PointMaterial.cjs.js"),_=require("./shaderMaterial.cjs.js"),J=require("./softShadows.cjs.js"),Y=require("./shapes.cjs.js"),Z=require("./RoundedBox.cjs.js"),$=require("./ScreenQuad.cjs.js"),ee=require("./Center.cjs.js"),re=require("./Bounds.cjs.js"),se=require("./CameraShake.cjs.js"),te=require("./Float.cjs.js"),oe=require("./Stage.cjs.js"),ie=require("./Backdrop.cjs.js"),ue=require("./Shadow.cjs.js"),ae=require("./ContactShadows.cjs.js"),ce=require("./Reflector.cjs.js"),je=require("./SpotLight.cjs.js"),pe=require("./Environment.cjs.js"),ne=require("./Sky.cjs.js"),le=require("./Stars.cjs.js"),xe=require("./Cloud.cjs.js"),qe=require("./useMatcapTexture.cjs.js"),de=require("./useNormalTexture.cjs.js"),he=require("./Points.cjs.js"),Ce=require("./Instances.cjs.js"),me=require("./Segments.cjs.js"),Be=require("./Detailed.cjs.js"),Se=require("./Preload.cjs.js"),fe=require("./BakeShadows.cjs.js"),be=require("./meshBounds.cjs.js"),Pe=require("./AdaptiveDpr.cjs.js"),Me=require("./AdaptiveEvents.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("lodash.omit"),require("lodash.pick"),require("zustand"),require("three/examples/js/libs/stats.min"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("use-asset"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("../assets/cloud.base64.cjs.js"),require("../helpers/matcap-assets.cjs.js"),require("../helpers/normal-assets.cjs.js"),require("../helpers/Position.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.QuadraticBezierLine=r.QuadraticBezierLine,exports.CubicBezierLine=s.CubicBezierLine,exports.Line=t.Line,exports.PositionalAudio=o.PositionalAudio,exports.Text=i.Text,exports.Effects=u.Effects,exports.isWebGL2Available=u.isWebGL2Available,exports.GradientTexture=a.GradientTexture,exports.Image=c.Image,exports.OrthographicCamera=j.OrthographicCamera,exports.PerspectiveCamera=p.PerspectiveCamera,exports.CubeCamera=n.CubeCamera,exports.DeviceOrientationControls=l.DeviceOrientationControls,exports.FlyControls=x.FlyControls,exports.MapControls=q.MapControls,exports.OrbitControls=d.OrbitControls,exports.TrackballControls=h.TrackballControls,exports.ArcballControls=C.ArcballControls,exports.TransformControls=m.TransformControls,exports.PointerLockControls=B.PointerLockControls,exports.FirstPersonControls=S.FirstPersonControls,exports.GizmoHelper=f.GizmoHelper,exports.useGizmoContext=f.useGizmoContext,exports.GizmoViewcube=b.GizmoViewcube,exports.GizmoViewport=P.GizmoViewport,exports.useCubeTexture=M.useCubeTexture,exports.useFBX=T.useFBX,exports.useGLTF=g.useGLTF,exports.useProgress=v.useProgress,exports.IsObject=D.IsObject,exports.useTexture=D.useTexture,exports.Stats=L.Stats,exports.DepthBuffer=A.DepthBuffer,exports.useDepthBuffer=G.useDepthBuffer,exports.useAspect=k.useAspect,exports.useCamera=F.useCamera,exports.useDetectGPU=w.useDetectGPU,exports.useHelper=z.useHelper,exports.useBVH=I.useBVH,exports.useContextBridge=O.useContextBridge,exports.useAnimations=E.useAnimations,exports.useFBO=R.useFBO,exports.useIntersect=y.useIntersect,exports.useSimplification=H.useSimplification,exports.useTessellation=V.useTessellation,exports.useEdgeSplit=Q.useEdgeSplit,exports.CurveModifier=W.CurveModifier,exports.MeshDistortMaterial=N.MeshDistortMaterial,exports.MeshWobbleMaterial=U.MeshWobbleMaterial,exports.MeshReflectorMaterial=X.MeshReflectorMaterial,exports.PointMaterial=K.PointMaterial,exports.PointMaterialImpl=K.PointMaterialImpl,exports.shaderMaterial=_.shaderMaterial,exports.softShadows=J.softShadows,exports.Box=Y.Box,exports.Circle=Y.Circle,exports.Cone=Y.Cone,exports.Cylinder=Y.Cylinder,exports.Dodecahedron=Y.Dodecahedron,exports.Extrude=Y.Extrude,exports.Icosahedron=Y.Icosahedron,exports.Lathe=Y.Lathe,exports.Octahedron=Y.Octahedron,exports.Parametric=Y.Parametric,exports.Plane=Y.Plane,exports.Polyhedron=Y.Polyhedron,exports.Ring=Y.Ring,exports.Sphere=Y.Sphere,exports.Tetrahedron=Y.Tetrahedron,exports.Torus=Y.Torus,exports.TorusKnot=Y.TorusKnot,exports.Tube=Y.Tube,exports.RoundedBox=Z.RoundedBox,exports.ScreenQuad=$.ScreenQuad,exports.Center=ee.Center,exports.Bounds=re.Bounds,exports.useBounds=re.useBounds,exports.CameraShake=se.CameraShake,exports.Float=te.Float,exports.Stage=oe.Stage,exports.Backdrop=ie.Backdrop,exports.Shadow=ue.Shadow,exports.ContactShadows=ae.ContactShadows,exports.Reflector=ce.Reflector,exports.SpotLight=je.SpotLight,exports.Environment=pe.Environment,exports.Sky=ne.Sky,exports.calcPosFromAngles=ne.calcPosFromAngles,exports.Stars=le.Stars,exports.Cloud=xe.Cloud,exports.useMatcapTexture=qe.useMatcapTexture,exports.useNormalTexture=de.useNormalTexture,exports.Point=he.Point,exports.Points=he.Points,exports.PointsBuffer=he.PointsBuffer,exports.Instance=Ce.Instance,exports.Instances=Ce.Instances,exports.Merged=Ce.Merged,exports.Segment=me.Segment,exports.Segments=me.Segments,exports.Detailed=Be.Detailed,exports.Preload=Se.Preload,exports.BakeShadows=fe.BakeShadows,exports.meshBounds=be.meshBounds,exports.AdaptiveDpr=Pe.AdaptiveDpr,exports.AdaptiveEvents=Me.AdaptiveEvents;
|
package/core/index.d.ts
CHANGED
|
@@ -45,6 +45,7 @@ export * from './useEdgeSplit';
|
|
|
45
45
|
export * from './CurveModifier';
|
|
46
46
|
export * from './MeshDistortMaterial';
|
|
47
47
|
export * from './MeshWobbleMaterial';
|
|
48
|
+
export * from './MeshReflectorMaterial';
|
|
48
49
|
export * from './PointMaterial';
|
|
49
50
|
export * from './shaderMaterial';
|
|
50
51
|
export * from './softShadows';
|
package/core/index.js
CHANGED
|
@@ -45,6 +45,7 @@ export { useEdgeSplit } from './useEdgeSplit.js';
|
|
|
45
45
|
export { CurveModifier } from './CurveModifier.js';
|
|
46
46
|
export { MeshDistortMaterial } from './MeshDistortMaterial.js';
|
|
47
47
|
export { MeshWobbleMaterial } from './MeshWobbleMaterial.js';
|
|
48
|
+
export { MeshReflectorMaterial } from './MeshReflectorMaterial.js';
|
|
48
49
|
export { PointMaterial, PointMaterialImpl } from './PointMaterial.js';
|
|
49
50
|
export { shaderMaterial } from './shaderMaterial.js';
|
|
50
51
|
export { softShadows } from './softShadows.js';
|
|
@@ -91,8 +92,10 @@ import '../helpers/useEffectfulState.js';
|
|
|
91
92
|
import 'detect-gpu';
|
|
92
93
|
import 'use-asset';
|
|
93
94
|
import 'three-mesh-bvh';
|
|
94
|
-
import '../
|
|
95
|
+
import '../materials/BlurPass.js';
|
|
96
|
+
import '../materials/ConvolutionMaterial.js';
|
|
95
97
|
import '../materials/MeshReflectorMaterial.js';
|
|
98
|
+
import '../helpers/environment-assets.js';
|
|
96
99
|
import '../materials/SpotLightMaterial.js';
|
|
97
100
|
import '../assets/cloud.base64.js';
|
|
98
101
|
import '../helpers/matcap-assets.js';
|
package/core/useDetectGPU.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("detect-gpu"),t=require("use-asset");exports.useDetectGPU=s=>t.useAsset((()=>e.getGPUTier(s)),"useDetectGPU");
|
package/core/useDetectGPU.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { GetGPUTier, TierResult } from 'detect-gpu';
|
|
2
|
-
export declare
|
|
2
|
+
export declare const useDetectGPU: (props?: GetGPUTier | undefined) => TierResult;
|
package/core/useDetectGPU.js
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import { getGPUTier } from 'detect-gpu';
|
|
3
2
|
import { useAsset } from 'use-asset';
|
|
4
3
|
|
|
5
|
-
|
|
6
|
-
React.useState(null);
|
|
7
|
-
return useAsset(() => getGPUTier(props), 'useDetectGPU');
|
|
8
|
-
}
|
|
4
|
+
const useDetectGPU = props => useAsset(() => getGPUTier(props), 'useDetectGPU');
|
|
9
5
|
|
|
10
6
|
export { useDetectGPU };
|