@react-three/drei 9.61.4 → 9.62.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 +41 -1
- package/core/Wireframe.cjs.js +1 -0
- package/core/Wireframe.d.ts +17 -0
- package/core/Wireframe.js +161 -0
- package/core/index.cjs.js +1 -1
- package/core/index.d.ts +1 -0
- package/core/index.js +2 -0
- package/index.cjs.js +1 -1
- package/index.js +1 -0
- package/materials/WireframeMaterial.cjs.js +1 -0
- package/materials/WireframeMaterial.d.ts +48 -0
- package/materials/WireframeMaterial.js +235 -0
- package/native/index.cjs.js +1 -1
- package/native/index.js +2 -0
- package/package.json +1 -1
- package/web/index.cjs.js +1 -1
- package/web/index.js +2 -0
package/README.md
CHANGED
|
@@ -105,6 +105,7 @@ The `native` route of the library **does not** export `Html` or `Loader`. The de
|
|
|
105
105
|
<li><a href="#cycleraycast">CycleRaycast</a></li>
|
|
106
106
|
<li><a href="#select">Select</a></li>
|
|
107
107
|
<li><a href="#stats">Stats</a></li>
|
|
108
|
+
<li><a href="#wireframe">Wireframe</a></li>
|
|
108
109
|
<li><a href="#usedepthbuffer">useDepthBuffer</a></li>
|
|
109
110
|
<li><a href="#usecontextbridge">useContextBridge</a></li>
|
|
110
111
|
<li><a href="#usefbo">useFBO</a></li>
|
|
@@ -1994,6 +1995,45 @@ useEffect(() => {
|
|
|
1994
1995
|
return <Stats parent={parent} />
|
|
1995
1996
|
```
|
|
1996
1997
|
|
|
1998
|
+
#### Wireframe
|
|
1999
|
+
|
|
2000
|
+
[](https://drei.vercel.app/?path=/story/staging-wireframe--wireframe-st)
|
|
2001
|
+
|
|
2002
|
+
Renders an Antialiased, shader based wireframe on or around a geometry.
|
|
2003
|
+
|
|
2004
|
+
```jsx
|
|
2005
|
+
<mesh>
|
|
2006
|
+
<geometry />
|
|
2007
|
+
<material />
|
|
2008
|
+
|
|
2009
|
+
<Wireframe /> // Will apply wireframe on top of existing material on this mesh
|
|
2010
|
+
</mesh>
|
|
2011
|
+
|
|
2012
|
+
// OR
|
|
2013
|
+
<Wireframe
|
|
2014
|
+
geometry={geometry | geometryRef} // Will create the wireframe based on input geometry.
|
|
2015
|
+
|
|
2016
|
+
// Other props
|
|
2017
|
+
simplify={false} // Remove some edges from wireframes
|
|
2018
|
+
fill={"#00ff00"} // Color of the inside of the wireframe
|
|
2019
|
+
fillMix={0} // Mix between the base color and the Wireframe 'fill'. 0 = base; 1 = wireframe
|
|
2020
|
+
fillOpacity={0.25} // Opacity of the inner fill
|
|
2021
|
+
stroke={"#ff0000"} // Color of the stroke
|
|
2022
|
+
strokeOpacity={1} // Opacity of the stroke
|
|
2023
|
+
thickness={0.05} // Thinkness of the lines
|
|
2024
|
+
colorBackfaces={false} // Whether to draw lines that are facing away from the camera
|
|
2025
|
+
backfaceStroke={"#0000ff"} // Color of the lines that are facing away from the camera
|
|
2026
|
+
dashInvert={true} // Invert the dashes
|
|
2027
|
+
dash={false} // Whether to draw lines as dashes
|
|
2028
|
+
dashRepeats={4} // Number of dashes in one seqment
|
|
2029
|
+
dashLength={0.5} // Length of each dash
|
|
2030
|
+
squeeze={false} // Narrow the centers of each line segment
|
|
2031
|
+
squeezeMin={0.2} // Smallest width to squueze to
|
|
2032
|
+
squeezeMax={1} // Largest width to squeeze from
|
|
2033
|
+
/>
|
|
2034
|
+
|
|
2035
|
+
```
|
|
2036
|
+
|
|
1997
2037
|
#### useDepthBuffer
|
|
1998
2038
|
|
|
1999
2039
|
<p>
|
|
@@ -2334,7 +2374,7 @@ const envMap = useCubeTexture(['px.png', 'nx.png', 'py.png', 'ny.png', 'pz.png',
|
|
|
2334
2374
|
|
|
2335
2375
|
#### useVideoTexture
|
|
2336
2376
|
|
|
2337
|
-
[](https://drei.pmnd.rs/?path=/story/loaders-videotexture)
|
|
2377
|
+
[](https://drei.pmnd.rs/?path=/story/loaders-videotexture) 
|
|
2338
2378
|
|
|
2339
2379
|
<p>
|
|
2340
2380
|
<a href="https://codesandbox.io/s/39hg8"><img width="20%" src="https://codesandbox.io/api/v1/sandboxes/39hg8/screenshot.png" alt="Demo"/></a>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("react"),t=require("three"),n=require("@react-three/fiber"),o=require("../materials/WireframeMaterial.cjs.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(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)}require("./shaderMaterial.cjs.js");var u=i(e),f=a(r),s=a(t);function c(e){return void 0!==(null==e?void 0:e.current)}function l(e){const r=null!=(t=e)&&t.current?e.current:e;var t;if(function(e){return!(null==e||!e.isBufferGeometry)}(r))return r;{const e=r.parent;if(function(e){return!(null==e||!e.geometry)}(e))return e.geometry}}function m(e,r){if(e.index){console.warn("Wireframe: Requires non-indexed geometry, converting to non-indexed geometry.");const r=e.toNonIndexed();e.copy(r),e.setIndex(null)}const t=function(e,r){const t=e.getAttribute("position").count,n=[];for(let e=0;e<t;e++){const t=r?1:0;e%2==0?n.push(0,0,1,0,1,0,1,0,t):n.push(0,1,0,0,0,1,1,0,t)}return new s.BufferAttribute(Float32Array.from(n),3)}(e,r);e.setAttribute("barycentric",t)}function d({geometry:e,simplify:r=!1,...t}){const[n,o]=f.useState(null);f.useLayoutEffect((()=>{const t=l(e);if(!t)throw new Error("Wireframe: geometry prop must be a BufferGeometry or a ref to a BufferGeometry.");m(t,r),c(e)&&o(t)}),[r,e]);const i=c(e)?n:e;return f.createElement(f.Fragment,null,i&&f.createElement("mesh",{geometry:i},f.createElement("meshWireframeMaterial",u.default({attach:"material",transparent:!0,side:s.DoubleSide,polygonOffset:!0,polygonOffsetFactor:-4},t,{extensions:{derivatives:!0,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1}}))))}function y({simplify:e=!1,...r}){const t=f.useRef(null),n=f.useMemo((()=>function(){const e={};for(const r in o.WireframeMaterialShaders.uniforms)e[r]={value:o.WireframeMaterialShaders.uniforms[r]};return e}()),[o.WireframeMaterialShaders.uniforms]);return o.useWireframeUniforms(n,r),f.useLayoutEffect((()=>{const r=l(t);if(!r)throw new Error("Wireframe: Must be a child of a Mesh, Line or Points object or specify a geometry prop.");m(r,e)}),[e]),f.useLayoutEffect((()=>{const e=t.current.parent;o.setWireframeOverride(e.material,n)}),[]),f.createElement("object3D",{ref:t})}a(n).extend({MeshWireframeMaterial:o.WireframeMaterial}),exports.Wireframe=function({geometry:e,...r}){return e?f.createElement(d,u.default({geometry:e},r)):f.createElement(y,r)};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as THREE from 'three';
|
|
3
|
+
import * as FIBER from '@react-three/fiber';
|
|
4
|
+
import { WireframeMaterialProps } from '../materials/WireframeMaterial';
|
|
5
|
+
declare global {
|
|
6
|
+
namespace JSX {
|
|
7
|
+
interface IntrinsicElements {
|
|
8
|
+
meshWireframeMaterial: FIBER.MaterialNode<THREE.ShaderMaterial, WireframeMaterialProps>;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
interface WireframeProps {
|
|
13
|
+
geometry?: THREE.BufferGeometry | React.RefObject<THREE.BufferGeometry>;
|
|
14
|
+
simplify?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare function Wireframe({ geometry: customGeometry, ...props }: WireframeProps & WireframeMaterialProps): JSX.Element;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import * as THREE from 'three';
|
|
4
|
+
import * as FIBER from '@react-three/fiber';
|
|
5
|
+
import { WireframeMaterial, WireframeMaterialShaders, useWireframeUniforms, setWireframeOverride } from '../materials/WireframeMaterial.js';
|
|
6
|
+
|
|
7
|
+
FIBER.extend({
|
|
8
|
+
MeshWireframeMaterial: WireframeMaterial
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
function isWithGeometry(object) {
|
|
12
|
+
return !!(object != null && object.geometry);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
function isGeometry(object) {
|
|
16
|
+
return !!(object != null && object.isBufferGeometry);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function isRefObject(object) {
|
|
20
|
+
return !!(object != null && object.current);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function isRef(object) {
|
|
24
|
+
return (object == null ? void 0 : object.current) !== undefined;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
function getUniforms() {
|
|
28
|
+
const u = {};
|
|
29
|
+
|
|
30
|
+
for (const key in WireframeMaterialShaders.uniforms) {
|
|
31
|
+
u[key] = {
|
|
32
|
+
value: WireframeMaterialShaders.uniforms[key]
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
return u;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function getBarycentricCoordinates(geometry, removeEdge) {
|
|
40
|
+
const position = geometry.getAttribute('position');
|
|
41
|
+
const count = position.count;
|
|
42
|
+
const barycentric = [];
|
|
43
|
+
|
|
44
|
+
for (let i = 0; i < count; i++) {
|
|
45
|
+
const even = i % 2 === 0;
|
|
46
|
+
const Q = removeEdge ? 1 : 0;
|
|
47
|
+
|
|
48
|
+
if (even) {
|
|
49
|
+
barycentric.push(0, 0, 1, 0, 1, 0, 1, 0, Q);
|
|
50
|
+
} else {
|
|
51
|
+
barycentric.push(0, 1, 0, 0, 0, 1, 1, 0, Q);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return new THREE.BufferAttribute(Float32Array.from(barycentric), 3);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function getInputGeometry(inputGeometry) {
|
|
59
|
+
const geo = isRefObject(inputGeometry) ? inputGeometry.current : inputGeometry;
|
|
60
|
+
|
|
61
|
+
if (!isGeometry(geo)) {
|
|
62
|
+
const parent = geo.parent;
|
|
63
|
+
|
|
64
|
+
if (isWithGeometry(parent)) {
|
|
65
|
+
return parent.geometry;
|
|
66
|
+
}
|
|
67
|
+
} else {
|
|
68
|
+
return geo;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function setBarycentricCoordinates(geometry, simplify) {
|
|
73
|
+
if (geometry.index) {
|
|
74
|
+
console.warn('Wireframe: Requires non-indexed geometry, converting to non-indexed geometry.');
|
|
75
|
+
const nonIndexedGeo = geometry.toNonIndexed();
|
|
76
|
+
geometry.copy(nonIndexedGeo);
|
|
77
|
+
geometry.setIndex(null);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const newBarycentric = getBarycentricCoordinates(geometry, simplify);
|
|
81
|
+
geometry.setAttribute('barycentric', newBarycentric);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function WireframeWithCustomGeo({
|
|
85
|
+
geometry: customGeometry,
|
|
86
|
+
simplify = false,
|
|
87
|
+
...props
|
|
88
|
+
}) {
|
|
89
|
+
const [geometry, setGeometry] = React.useState(null);
|
|
90
|
+
React.useLayoutEffect(() => {
|
|
91
|
+
const geom = getInputGeometry(customGeometry);
|
|
92
|
+
|
|
93
|
+
if (!geom) {
|
|
94
|
+
throw new Error('Wireframe: geometry prop must be a BufferGeometry or a ref to a BufferGeometry.');
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
setBarycentricCoordinates(geom, simplify);
|
|
98
|
+
|
|
99
|
+
if (isRef(customGeometry)) {
|
|
100
|
+
setGeometry(geom);
|
|
101
|
+
}
|
|
102
|
+
}, [simplify, customGeometry]);
|
|
103
|
+
const drawnGeo = isRef(customGeometry) ? geometry : customGeometry;
|
|
104
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, drawnGeo && /*#__PURE__*/React.createElement("mesh", {
|
|
105
|
+
geometry: drawnGeo
|
|
106
|
+
}, /*#__PURE__*/React.createElement("meshWireframeMaterial", _extends({
|
|
107
|
+
attach: "material",
|
|
108
|
+
transparent: true,
|
|
109
|
+
side: THREE.DoubleSide,
|
|
110
|
+
polygonOffset: true //
|
|
111
|
+
,
|
|
112
|
+
polygonOffsetFactor: -4
|
|
113
|
+
}, props, {
|
|
114
|
+
extensions: {
|
|
115
|
+
derivatives: true,
|
|
116
|
+
fragDepth: false,
|
|
117
|
+
drawBuffers: false,
|
|
118
|
+
shaderTextureLOD: false
|
|
119
|
+
}
|
|
120
|
+
}))));
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
function WireframeWithoutCustomGeo({
|
|
124
|
+
simplify = false,
|
|
125
|
+
...props
|
|
126
|
+
}) {
|
|
127
|
+
const objectRef = React.useRef(null);
|
|
128
|
+
const uniforms = React.useMemo(() => getUniforms(), [WireframeMaterialShaders.uniforms]);
|
|
129
|
+
useWireframeUniforms(uniforms, props);
|
|
130
|
+
React.useLayoutEffect(() => {
|
|
131
|
+
const geom = getInputGeometry(objectRef);
|
|
132
|
+
|
|
133
|
+
if (!geom) {
|
|
134
|
+
throw new Error('Wireframe: Must be a child of a Mesh, Line or Points object or specify a geometry prop.');
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
setBarycentricCoordinates(geom, simplify);
|
|
138
|
+
}, [simplify]);
|
|
139
|
+
React.useLayoutEffect(() => {
|
|
140
|
+
const parentMesh = objectRef.current.parent;
|
|
141
|
+
setWireframeOverride(parentMesh.material, uniforms);
|
|
142
|
+
}, []);
|
|
143
|
+
return /*#__PURE__*/React.createElement("object3D", {
|
|
144
|
+
ref: objectRef
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
function Wireframe({
|
|
149
|
+
geometry: customGeometry,
|
|
150
|
+
...props
|
|
151
|
+
}) {
|
|
152
|
+
if (customGeometry) {
|
|
153
|
+
return /*#__PURE__*/React.createElement(WireframeWithCustomGeo, _extends({
|
|
154
|
+
geometry: customGeometry
|
|
155
|
+
}, props));
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
return /*#__PURE__*/React.createElement(WireframeWithoutCustomGeo, props);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export { Wireframe };
|
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("./QuadraticBezierLine.cjs.js"),t=require("./CubicBezierLine.cjs.js"),o=require("./CatmullRomLine.cjs.js"),i=require("./Line.cjs.js"),a=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),c=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),p=require("./Image.cjs.js"),x=require("./Edges.cjs.js"),l=require("./Trail.cjs.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Billboard.cjs.js"),r=require("./ScreenSpace.cjs.js"),s=require("./QuadraticBezierLine.cjs.js"),t=require("./CubicBezierLine.cjs.js"),o=require("./CatmullRomLine.cjs.js"),i=require("./Line.cjs.js"),a=require("./PositionalAudio.cjs.js"),u=require("./Text.cjs.js"),c=require("./Text3D.cjs.js"),n=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),p=require("./Image.cjs.js"),x=require("./Edges.cjs.js"),l=require("./Trail.cjs.js"),q=require("./Sampler.cjs.js"),d=require("./ComputedAttribute.cjs.js"),m=require("./Clone.cjs.js"),h=require("./MarchingCubes.cjs.js"),C=require("./Decal.cjs.js"),M=require("./Svg.cjs.js"),S=require("./Gltf.cjs.js"),T=require("./AsciiRenderer.cjs.js"),f=require("./OrthographicCamera.cjs.js"),B=require("./PerspectiveCamera.cjs.js"),P=require("./CubeCamera.cjs.js"),b=require("./DeviceOrientationControls.cjs.js"),g=require("./FlyControls.cjs.js"),v=require("./MapControls.cjs.js"),A=require("./OrbitControls.cjs.js"),L=require("./TrackballControls.cjs.js"),D=require("./ArcballControls.cjs.js"),k=require("./TransformControls.cjs.js"),G=require("./PointerLockControls.cjs.js"),E=require("./FirstPersonControls.cjs.js"),R=require("./CameraControls.cjs.js"),w=require("./GizmoHelper.cjs.js"),z=require("./GizmoViewcube.cjs.js"),F=require("./GizmoViewport.cjs.js"),O=require("./Grid.cjs.js"),I=require("./useCubeTexture.cjs.js"),H=require("./useFBX.cjs.js"),V=require("./useGLTF.cjs.js"),y=require("./useKTX2.cjs.js"),W=require("./useProgress.cjs.js"),Q=require("./useTexture.cjs.js"),X=require("./useVideoTexture.cjs.js"),K=require("./Stats.cjs.js"),N=require("./useDepthBuffer.cjs.js"),U=require("./useAspect.cjs.js"),_=require("./useCamera.cjs.js"),J=require("./useDetectGPU.cjs.js"),Y=require("./useHelper.cjs.js"),Z=require("./useBVH.cjs.js"),$=require("./useContextBridge.cjs.js"),ee=require("./useAnimations.cjs.js"),re=require("./useFBO.cjs.js"),se=require("./useIntersect.cjs.js"),te=require("./useBoxProjectedEnv.cjs.js"),oe=require("./BBAnchor.cjs.js"),ie=require("./useTrailTexture.cjs.js"),ae=require("./CurveModifier.cjs.js"),ue=require("./MeshDistortMaterial.cjs.js"),ce=require("./MeshWobbleMaterial.cjs.js"),ne=require("./MeshReflectorMaterial.cjs.js"),je=require("./MeshRefractionMaterial.cjs.js"),pe=require("./MeshTransmissionMaterial.cjs.js"),xe=require("./MeshDiscardMaterial.cjs.js"),le=require("./PointMaterial.cjs.js"),qe=require("./shaderMaterial.cjs.js"),de=require("./softShadows.cjs.js"),me=require("./shapes.cjs.js"),he=require("./RoundedBox.cjs.js"),Ce=require("./ScreenQuad.cjs.js"),Me=require("./Center.cjs.js"),Se=require("./Bounds.cjs.js"),Te=require("./CameraShake.cjs.js"),fe=require("./Float.cjs.js"),Be=require("./Stage.cjs.js"),Pe=require("./Backdrop.cjs.js"),be=require("./Shadow.cjs.js"),ge=require("./Caustics.cjs.js"),ve=require("./ContactShadows.cjs.js"),Ae=require("./AccumulativeShadows.cjs.js"),Le=require("./Reflector.cjs.js"),De=require("./SpotLight.cjs.js"),ke=require("./Environment.cjs.js"),Ge=require("./Lightformer.cjs.js"),Ee=require("./Sky.cjs.js"),Re=require("./Stars.cjs.js"),we=require("./Cloud.cjs.js"),ze=require("./Sparkles.cjs.js"),Fe=require("./useEnvironment.cjs.js"),Oe=require("./useMatcapTexture.cjs.js"),Ie=require("./useNormalTexture.cjs.js"),He=require("./Wireframe.cjs.js"),Ve=require("./Points.cjs.js"),ye=require("./Instances.cjs.js"),We=require("./Segments.cjs.js"),Qe=require("./Detailed.cjs.js"),Xe=require("./Preload.cjs.js"),Ke=require("./BakeShadows.cjs.js"),Ne=require("./meshBounds.cjs.js"),Ue=require("./AdaptiveDpr.cjs.js"),_e=require("./AdaptiveEvents.cjs.js"),Je=require("./PerformanceMonitor.cjs.js"),Ye=require("./RenderTexture.cjs.js"),Ze=require("./Mask.cjs.js"),$e=require("./Hud.cjs.js");require("@babel/runtime/helpers/extends"),require("react"),require("@react-three/fiber"),require("react-merge-refs"),require("three"),require("three-stdlib"),require("troika-three-text"),require("suspend-react"),require("meshline"),require("lodash.pick"),require("lodash.omit"),require("camera-controls"),require("zustand"),require("stats.js"),require("../helpers/useEffectfulState.cjs.js"),require("detect-gpu"),require("three-mesh-bvh"),require("../materials/BlurPass.cjs.js"),require("../materials/ConvolutionMaterial.cjs.js"),require("../materials/MeshReflectorMaterial.cjs.js"),require("../materials/MeshRefractionMaterial.cjs.js"),require("../materials/DiscardMaterial.cjs.js"),require("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.cjs.js"),require("../materials/WireframeMaterial.cjs.js"),require("react-composer"),exports.Billboard=e.Billboard,exports.ScreenSpace=r.ScreenSpace,exports.QuadraticBezierLine=s.QuadraticBezierLine,exports.CubicBezierLine=t.CubicBezierLine,exports.CatmullRomLine=o.CatmullRomLine,exports.Line=i.Line,exports.PositionalAudio=a.PositionalAudio,exports.Text=u.Text,exports.Text3D=c.Text3D,exports.Effects=n.Effects,exports.isWebGL2Available=n.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=p.Image,exports.Edges=x.Edges,exports.Trail=l.Trail,exports.useTrail=l.useTrail,exports.Sampler=q.Sampler,exports.useSurfaceSampler=q.useSurfaceSampler,exports.ComputedAttribute=d.ComputedAttribute,exports.Clone=m.Clone,exports.MarchingCube=h.MarchingCube,exports.MarchingCubes=h.MarchingCubes,exports.MarchingPlane=h.MarchingPlane,exports.Decal=C.Decal,exports.Svg=M.Svg,exports.Gltf=S.Gltf,exports.AsciiRenderer=T.AsciiRenderer,exports.OrthographicCamera=f.OrthographicCamera,exports.PerspectiveCamera=B.PerspectiveCamera,exports.CubeCamera=P.CubeCamera,exports.DeviceOrientationControls=b.DeviceOrientationControls,exports.FlyControls=g.FlyControls,exports.MapControls=v.MapControls,exports.OrbitControls=A.OrbitControls,exports.TrackballControls=L.TrackballControls,exports.ArcballControls=D.ArcballControls,exports.TransformControls=k.TransformControls,exports.PointerLockControls=G.PointerLockControls,exports.FirstPersonControls=E.FirstPersonControls,exports.CameraControls=R.CameraControls,exports.GizmoHelper=w.GizmoHelper,exports.useGizmoContext=w.useGizmoContext,exports.GizmoViewcube=z.GizmoViewcube,exports.GizmoViewport=F.GizmoViewport,exports.Grid=O.Grid,exports.useCubeTexture=I.useCubeTexture,exports.useFBX=H.useFBX,exports.useGLTF=V.useGLTF,exports.useKTX2=y.useKTX2,exports.useProgress=W.useProgress,exports.IsObject=Q.IsObject,exports.useTexture=Q.useTexture,exports.useVideoTexture=X.useVideoTexture,exports.Stats=K.Stats,exports.useDepthBuffer=N.useDepthBuffer,exports.useAspect=U.useAspect,exports.useCamera=_.useCamera,exports.useDetectGPU=J.useDetectGPU,exports.useHelper=Y.useHelper,exports.Bvh=Z.Bvh,exports.useBVH=Z.useBVH,exports.useContextBridge=$.useContextBridge,exports.useAnimations=ee.useAnimations,exports.useFBO=re.useFBO,exports.useIntersect=se.useIntersect,exports.useBoxProjectedEnv=te.useBoxProjectedEnv,exports.BBAnchor=oe.BBAnchor,exports.useTrailTexture=ie.useTrailTexture,exports.CurveModifier=ae.CurveModifier,exports.MeshDistortMaterial=ue.MeshDistortMaterial,exports.MeshWobbleMaterial=ce.MeshWobbleMaterial,exports.MeshReflectorMaterial=ne.MeshReflectorMaterial,exports.MeshRefractionMaterial=je.MeshRefractionMaterial,exports.MeshTransmissionMaterial=pe.MeshTransmissionMaterial,exports.MeshDiscardMaterial=xe.MeshDiscardMaterial,exports.PointMaterial=le.PointMaterial,exports.PointMaterialImpl=le.PointMaterialImpl,exports.shaderMaterial=qe.shaderMaterial,exports.SoftShadows=de.SoftShadows,exports.Box=me.Box,exports.Capsule=me.Capsule,exports.Circle=me.Circle,exports.Cone=me.Cone,exports.Cylinder=me.Cylinder,exports.Dodecahedron=me.Dodecahedron,exports.Extrude=me.Extrude,exports.Icosahedron=me.Icosahedron,exports.Lathe=me.Lathe,exports.Octahedron=me.Octahedron,exports.Plane=me.Plane,exports.Polyhedron=me.Polyhedron,exports.Ring=me.Ring,exports.Shape=me.Shape,exports.Sphere=me.Sphere,exports.Tetrahedron=me.Tetrahedron,exports.Torus=me.Torus,exports.TorusKnot=me.TorusKnot,exports.Tube=me.Tube,exports.RoundedBox=he.RoundedBox,exports.ScreenQuad=Ce.ScreenQuad,exports.Center=Me.Center,exports.Bounds=Se.Bounds,exports.useBounds=Se.useBounds,exports.CameraShake=Te.CameraShake,exports.Float=fe.Float,exports.Stage=Be.Stage,exports.Backdrop=Pe.Backdrop,exports.Shadow=be.Shadow,exports.Caustics=ge.Caustics,exports.ContactShadows=ve.ContactShadows,exports.AccumulativeShadows=Ae.AccumulativeShadows,exports.RandomizedLight=Ae.RandomizedLight,exports.accumulativeContext=Ae.accumulativeContext,exports.Reflector=Le.Reflector,exports.SpotLight=De.SpotLight,exports.SpotLightShadow=De.SpotLightShadow,exports.Environment=ke.Environment,exports.EnvironmentCube=ke.EnvironmentCube,exports.EnvironmentMap=ke.EnvironmentMap,exports.EnvironmentPortal=ke.EnvironmentPortal,exports.Lightformer=Ge.Lightformer,exports.Sky=Ee.Sky,exports.calcPosFromAngles=Ee.calcPosFromAngles,exports.Stars=Re.Stars,exports.Cloud=we.Cloud,exports.Sparkles=ze.Sparkles,exports.useEnvironment=Fe.useEnvironment,exports.useMatcapTexture=Oe.useMatcapTexture,exports.useNormalTexture=Ie.useNormalTexture,exports.Wireframe=He.Wireframe,exports.Point=Ve.Point,exports.Points=Ve.Points,exports.PointsBuffer=Ve.PointsBuffer,exports.PositionPoint=Ve.PositionPoint,exports.Instance=ye.Instance,exports.Instances=ye.Instances,exports.Merged=ye.Merged,exports.Segment=We.Segment,exports.SegmentObject=We.SegmentObject,exports.Segments=We.Segments,exports.Detailed=Qe.Detailed,exports.Preload=Xe.Preload,exports.BakeShadows=Ke.BakeShadows,exports.meshBounds=Ne.meshBounds,exports.AdaptiveDpr=Ue.AdaptiveDpr,exports.AdaptiveEvents=_e.AdaptiveEvents,exports.PerformanceMonitor=Je.PerformanceMonitor,exports.usePerformanceMonitor=Je.usePerformanceMonitor,exports.RenderTexture=Ye.RenderTexture,exports.Mask=Ze.Mask,exports.useMask=Ze.useMask,exports.Hud=$e.Hud;
|
package/core/index.d.ts
CHANGED
|
@@ -92,6 +92,7 @@ export * from './Sparkles';
|
|
|
92
92
|
export * from './useEnvironment';
|
|
93
93
|
export * from './useMatcapTexture';
|
|
94
94
|
export * from './useNormalTexture';
|
|
95
|
+
export * from './Wireframe';
|
|
95
96
|
export * from './Points';
|
|
96
97
|
export * from './Instances';
|
|
97
98
|
export * from './Segments';
|
package/core/index.js
CHANGED
|
@@ -92,6 +92,7 @@ export { Sparkles } from './Sparkles.js';
|
|
|
92
92
|
export { useEnvironment } from './useEnvironment.js';
|
|
93
93
|
export { useMatcapTexture } from './useMatcapTexture.js';
|
|
94
94
|
export { useNormalTexture } from './useNormalTexture.js';
|
|
95
|
+
export { Wireframe } from './Wireframe.js';
|
|
95
96
|
export { Point, Points, PointsBuffer, PositionPoint } from './Points.js';
|
|
96
97
|
export { Instance, Instances, Merged } from './Instances.js';
|
|
97
98
|
export { Segment, SegmentObject, Segments } from './Segments.js';
|
|
@@ -129,4 +130,5 @@ import '../materials/MeshRefractionMaterial.js';
|
|
|
129
130
|
import '../materials/DiscardMaterial.js';
|
|
130
131
|
import '../helpers/environment-assets.js';
|
|
131
132
|
import '../materials/SpotLightMaterial.js';
|
|
133
|
+
import '../materials/WireframeMaterial.js';
|
|
132
134
|
import 'react-composer';
|