@react-three/drei 9.50.5 → 9.51.1

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 CHANGED
@@ -87,6 +87,7 @@ The `native` route of the library **does not** export `Html` or `Loader`. The de
87
87
  <li><a href="#meshwobblematerial">MeshWobbleMaterial</a></li>
88
88
  <li><a href="#meshdistortmaterial">MeshDistortMaterial</a></li>
89
89
  <li><a href="#meshrefractionmaterial">MeshRefractionMaterial</a></li>
90
+ <li><a href="#meshtransmissionmaterial">MeshTransmissionMaterial</a></li>
90
91
  <li><a href="#pointmaterial">PointMaterial</a></li>
91
92
  <li><a href="#softshadows">SoftShadows</a></li>
92
93
  <li><a href="#shadermaterial">shaderMaterial</a></li>
@@ -1458,7 +1459,7 @@ If you want it to reflect other objects in the scene you best pair it with a cub
1458
1459
  <CubeCamera>
1459
1460
  {(texture) => (
1460
1461
  <mesh geometry={diamondGeometry} {...props}>
1461
- <RefractionMaterial envMap={texture} />
1462
+ <MeshRefractionMaterial envMap={texture} />
1462
1463
  </mesh>
1463
1464
  )}
1464
1465
  </CubeCamera>
@@ -1470,7 +1471,44 @@ Otherwise just pass it an environment map.
1470
1471
  const texture = useLoader(RGBELoader, "/textures/royal_esplanade_1k.hdr")
1471
1472
  return (
1472
1473
  <mesh geometry={diamondGeometry} {...props}>
1473
- <RefractionMaterial envMap={texture} />
1474
+ <MeshRefractionMaterial envMap={texture} />
1475
+ ```
1476
+
1477
+ #### MeshTransmissionMaterial
1478
+
1479
+ <p>
1480
+ <a href="https://codesandbox.io/s/hmgdjq"><img width="20%" src="https://codesandbox.io/api/v1/sandboxes/hmgdjq/screenshot.png" alt="Demo"/></a>
1481
+ </p>
1482
+
1483
+ A more convincing transmission shader with RGB shift (based on THREE.MeshPhysicalMaterial). This material can be expensive, it causes an additional render of the scene. Low samples and low resolution will make it faster.
1484
+
1485
+ ```tsx
1486
+ type MeshTransmissionMaterialProps = {
1487
+ /** Refraction shift, default: 0 */
1488
+ refraction?: number
1489
+ /** RGB color shift, default: 0.3 */
1490
+ rgbShift?: number
1491
+ /** Noise, default: 0.03 */
1492
+ noise?: number
1493
+ /** Color saturation, default: 1 */
1494
+ saturation?: number
1495
+ /** Color contrast, default: 1 */
1496
+ contrast?: number
1497
+ /** Resolution of the local buffer, default: 1024 */
1498
+ resolution?: number
1499
+ /** Refraction samples, default: 10 */
1500
+ samples?: number
1501
+ /** Buffer scene background (can be a texture, a cubetexture or a color), default: null */
1502
+ background?: THREE.Texture
1503
+ /** The scene rendered into a texture (use it to share a texture between materials), default: null */
1504
+ buffer?: THREE.Texture
1505
+ }
1506
+ ```
1507
+
1508
+ ```jsx
1509
+ return (
1510
+ <mesh geometry={geometry} {...props}>
1511
+ <MeshTransmissionMaterial />
1474
1512
  ```
1475
1513
 
1476
1514
  #### PointMaterial
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/extends"),r=require("three"),t=require("react"),n=require("@react-three/fiber"),a=require("./useFBO.cjs.js");function 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 n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var i=o(e),s=u(r),f=u(t);class l extends s.MeshPhysicalMaterial{constructor({samples:e=10,...r}={}){super(r),this.uniforms={refraction:{value:0},rgbShift:{value:.3},noise:{value:.03},saturation:{value:1},contrast:{value:1},buffer:{value:null},resolution:{value:new s.Vector2}},this.onBeforeCompile=r=>{r.uniforms={...r.uniforms,...this.uniforms},r.fragmentShader="uniform float rgbShift;\n uniform vec2 resolution;\n uniform float refraction;\n uniform float noise;\n uniform float saturation;\n uniform float contrast;\n uniform sampler2D buffer;\n \n float random(vec2 p) {\n return fract(sin(dot(p.xy ,vec2(12.9898,78.233))) * 43758.5453);\n }\n \n vec3 sat(vec3 rgb, float adjustment) {\n const vec3 W = vec3(0.2125, 0.7154, 0.0721);\n vec3 intensity = vec3(dot(rgb, W));\n return mix(intensity, rgb, adjustment);\n }\n "+r.fragmentShader,r.fragmentShader=r.fragmentShader.replace("#include <output_fragment>",`vec2 uv = gl_FragCoord.xy / resolution.xy;\n vec2 refractNormal = vNormal.xy * (1.0 - vNormal.xy * 0.85);\n vec3 refractCol = vec3(0.0);\n float slide;\n #pragma unroll_loop_start\n for (int i = 0; i < ${e}; i ++) {\n slide = float(UNROLLED_LOOP_INDEX) / float(${e}) * 0.1 + random(uv) * noise; \n refractCol.r += texture2D(buffer, uv - refractNormal * (refraction + slide * 1.0) * rgbShift).r;\n refractCol.g += texture2D(buffer, uv - refractNormal * (refraction + slide * 2.0) * rgbShift).g;\n refractCol.b += texture2D(buffer, uv - refractNormal * (refraction + slide * 3.0) * rgbShift).b;\n refractCol = sat(refractCol, saturation);\n }\n #pragma unroll_loop_end\n outgoingLight *= refractCol / float(${e}) * contrast;\n #include <output_fragment>`)},Object.keys(this.uniforms).forEach((e=>Object.defineProperty(this,e,{get:()=>this.uniforms[e].value,set:r=>this.uniforms[e].value=r})))}}const c=f.forwardRef((({buffer:e,samples:r=10,resolution:t=1024,background:o,...u},s)=>{n.extend({MeshTransmissionMaterial:l});const c=f.useRef(null),{size:m,viewport:d}=n.useThree(),v=a.useFBO(t),g=f.useMemo((()=>({samples:r})),[r]);let b,h,p;return n.useFrame((r=>{e||(p=c.current.__r3f.parent,p&&(h=p.visible,p.visible=!1,r.gl.setRenderTarget(v),b=r.scene.background,o&&(r.scene.background=o),r.gl.render(r.scene,r.camera),r.scene.background=b,r.gl.setRenderTarget(null),p.visible=h))})),f.useImperativeHandle(s,(()=>c.current),[]),f.createElement("meshTransmissionMaterial",i.default({args:[g],ref:c,buffer:e||v.texture,resolution:[m.width*d.dpr,m.height*d.dpr]},u))}));exports.MeshTransmissionMaterial=c;
@@ -0,0 +1,28 @@
1
+ import * as THREE from 'three';
2
+ import * as React from 'react';
3
+ import { ReactThreeFiber } from '@react-three/fiber';
4
+ declare type MeshTransmissionMaterialType = Omit<JSX.IntrinsicElements['meshPhysicalMaterial'], 'args'> & {
5
+ refraction?: number;
6
+ rgbShift?: number;
7
+ noise?: number;
8
+ saturation?: number;
9
+ contrast?: number;
10
+ resolution?: ReactThreeFiber.Vector2;
11
+ buffer?: THREE.Texture;
12
+ args?: [{
13
+ samples: number;
14
+ }];
15
+ };
16
+ declare global {
17
+ namespace JSX {
18
+ interface IntrinsicElements {
19
+ meshTransmissionMaterial: MeshTransmissionMaterialType;
20
+ }
21
+ }
22
+ }
23
+ export declare const MeshTransmissionMaterial: React.ForwardRefExoticComponent<Pick<Omit<MeshTransmissionMaterialType, "args" | "resolution"> & {
24
+ resolution?: number | undefined;
25
+ samples?: number | undefined;
26
+ background?: THREE.Texture | undefined;
27
+ }, "attach" | "children" | "key" | "onUpdate" | "saturation" | "background" | "buffer" | keyof THREE.MeshPhysicalMaterial | "resolution" | "samples" | "refraction" | "rgbShift" | "noise" | "contrast"> & React.RefAttributes<unknown>>;
28
+ export {};
@@ -0,0 +1,139 @@
1
+ import _extends from '@babel/runtime/helpers/esm/extends';
2
+ import * as THREE from 'three';
3
+ import * as React from 'react';
4
+ import { extend, useThree, useFrame } from '@react-three/fiber';
5
+ import { useFBO } from './useFBO.js';
6
+
7
+ class MeshTransmissionMaterialImpl extends THREE.MeshPhysicalMaterial {
8
+ constructor({
9
+ samples = 10,
10
+ ...args
11
+ } = {}) {
12
+ super(args);
13
+ this.uniforms = {
14
+ refraction: {
15
+ value: 0
16
+ },
17
+ rgbShift: {
18
+ value: 0.3
19
+ },
20
+ noise: {
21
+ value: 0.03
22
+ },
23
+ saturation: {
24
+ value: 1.0
25
+ },
26
+ contrast: {
27
+ value: 1.0
28
+ },
29
+ buffer: {
30
+ value: null
31
+ },
32
+ resolution: {
33
+ value: new THREE.Vector2()
34
+ }
35
+ };
36
+
37
+ this.onBeforeCompile = shader => {
38
+ shader.uniforms = { ...shader.uniforms,
39
+ ...this.uniforms
40
+ };
41
+ shader.fragmentShader = `uniform float rgbShift;
42
+ uniform vec2 resolution;
43
+ uniform float refraction;
44
+ uniform float noise;
45
+ uniform float saturation;
46
+ uniform float contrast;
47
+ uniform sampler2D buffer;
48
+
49
+ float random(vec2 p) {
50
+ return fract(sin(dot(p.xy ,vec2(12.9898,78.233))) * 43758.5453);
51
+ }
52
+
53
+ vec3 sat(vec3 rgb, float adjustment) {
54
+ const vec3 W = vec3(0.2125, 0.7154, 0.0721);
55
+ vec3 intensity = vec3(dot(rgb, W));
56
+ return mix(intensity, rgb, adjustment);
57
+ }
58
+ ` + shader.fragmentShader;
59
+ shader.fragmentShader = shader.fragmentShader.replace('#include <output_fragment>', `vec2 uv = gl_FragCoord.xy / resolution.xy;
60
+ vec2 refractNormal = vNormal.xy * (1.0 - vNormal.xy * 0.85);
61
+ vec3 refractCol = vec3(0.0);
62
+ float slide;
63
+ #pragma unroll_loop_start
64
+ for (int i = 0; i < ${samples}; i ++) {
65
+ slide = float(UNROLLED_LOOP_INDEX) / float(${samples}) * 0.1 + random(uv) * noise;
66
+ refractCol.r += texture2D(buffer, uv - refractNormal * (refraction + slide * 1.0) * rgbShift).r;
67
+ refractCol.g += texture2D(buffer, uv - refractNormal * (refraction + slide * 2.0) * rgbShift).g;
68
+ refractCol.b += texture2D(buffer, uv - refractNormal * (refraction + slide * 3.0) * rgbShift).b;
69
+ refractCol = sat(refractCol, saturation);
70
+ }
71
+ #pragma unroll_loop_end
72
+ outgoingLight *= refractCol / float(${samples}) * contrast;
73
+ #include <output_fragment>`);
74
+ };
75
+
76
+ Object.keys(this.uniforms).forEach(name => Object.defineProperty(this, name, {
77
+ get: () => this.uniforms[name].value,
78
+ set: v => this.uniforms[name].value = v
79
+ }));
80
+ }
81
+
82
+ }
83
+
84
+ const MeshTransmissionMaterial = /*#__PURE__*/React.forwardRef(({
85
+ buffer,
86
+ samples = 10,
87
+ resolution = 1024,
88
+ background,
89
+ ...props
90
+ }, fref) => {
91
+ extend({
92
+ MeshTransmissionMaterial: MeshTransmissionMaterialImpl
93
+ });
94
+ const ref = React.useRef(null);
95
+ const {
96
+ size,
97
+ viewport
98
+ } = useThree();
99
+ const fbo = useFBO(resolution);
100
+ const config = React.useMemo(() => ({
101
+ samples
102
+ }), [samples]);
103
+ let oldBg;
104
+ let oldVis;
105
+ let parent;
106
+ useFrame(state => {
107
+ if (!buffer) {
108
+ parent = ref.current.__r3f.parent;
109
+
110
+ if (parent) {
111
+ // Hide the outer groups contents
112
+ oldVis = parent.visible;
113
+ parent.visible = false; // Set render target to the local buffer
114
+
115
+ state.gl.setRenderTarget(fbo); // Save the current background and set the HDR as the new BG
116
+ // This is what creates the reflections
117
+
118
+ oldBg = state.scene.background;
119
+ if (background) state.scene.background = background; // Render into the buffer
120
+
121
+ state.gl.render(state.scene, state.camera); // Set old state back
122
+
123
+ state.scene.background = oldBg;
124
+ state.gl.setRenderTarget(null);
125
+ parent.visible = oldVis;
126
+ }
127
+ }
128
+ }); // Forward ref
129
+
130
+ React.useImperativeHandle(fref, () => ref.current, []);
131
+ return /*#__PURE__*/React.createElement("meshTransmissionMaterial", _extends({
132
+ args: [config],
133
+ ref: ref,
134
+ buffer: buffer || fbo.texture,
135
+ resolution: [size.width * viewport.dpr, size.height * viewport.dpr]
136
+ }, props));
137
+ });
138
+
139
+ export { MeshTransmissionMaterial };
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"),u=require("./PositionalAudio.cjs.js"),a=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"),d=require("./Sampler.cjs.js"),q=require("./ComputedAttribute.cjs.js"),m=require("./Clone.cjs.js"),h=require("./MarchingCubes.cjs.js"),C=require("./Decal.cjs.js"),S=require("./Svg.cjs.js"),M=require("./Gltf.cjs.js"),T=require("./AsciiRenderer.cjs.js"),f=require("./OrthographicCamera.cjs.js"),P=require("./PerspectiveCamera.cjs.js"),b=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"),k=require("./ArcballControls.cjs.js"),G=require("./TransformControls.cjs.js"),R=require("./PointerLockControls.cjs.js"),D=require("./FirstPersonControls.cjs.js"),E=require("./GizmoHelper.cjs.js"),w=require("./GizmoViewcube.cjs.js"),z=require("./GizmoViewport.cjs.js"),F=require("./Grid.cjs.js"),O=require("./useCubeTexture.cjs.js"),I=require("./useFBX.cjs.js"),H=require("./useGLTF.cjs.js"),V=require("./useKTX2.cjs.js"),y=require("./useProgress.cjs.js"),Q=require("./useTexture.cjs.js"),X=require("./useVideoTexture.cjs.js"),K=require("./Stats.cjs.js"),W=require("./useDepthBuffer.cjs.js"),N=require("./useAspect.cjs.js"),U=require("./useCamera.cjs.js"),_=require("./useDetectGPU.cjs.js"),J=require("./useHelper.cjs.js"),Y=require("./useBVH.cjs.js"),Z=require("./useContextBridge.cjs.js"),$=require("./useAnimations.cjs.js"),ee=require("./useFBO.cjs.js"),re=require("./useIntersect.cjs.js"),se=require("./useBoxProjectedEnv.cjs.js"),te=require("./BBAnchor.cjs.js"),oe=require("./useTrailTexture.cjs.js"),ie=require("./CurveModifier.cjs.js"),ue=require("./MeshDistortMaterial.cjs.js"),ae=require("./MeshWobbleMaterial.cjs.js"),ce=require("./MeshReflectorMaterial.cjs.js"),ne=require("./MeshRefractionMaterial.cjs.js"),je=require("./PointMaterial.cjs.js"),pe=require("./shaderMaterial.cjs.js"),xe=require("./softShadows.cjs.js"),le=require("./shapes.cjs.js"),de=require("./RoundedBox.cjs.js"),qe=require("./ScreenQuad.cjs.js"),me=require("./Center.cjs.js"),he=require("./Bounds.cjs.js"),Ce=require("./CameraShake.cjs.js"),Se=require("./Float.cjs.js"),Me=require("./Stage.cjs.js"),Te=require("./Backdrop.cjs.js"),fe=require("./Shadow.cjs.js"),Pe=require("./ContactShadows.cjs.js"),be=require("./AccumulativeShadows.cjs.js"),Be=require("./Reflector.cjs.js"),ge=require("./SpotLight.cjs.js"),ve=require("./Environment.cjs.js"),Ae=require("./Lightformer.cjs.js"),Le=require("./Sky.cjs.js"),ke=require("./Stars.cjs.js"),Ge=require("./Cloud.cjs.js"),Re=require("./Sparkles.cjs.js"),De=require("./useMatcapTexture.cjs.js"),Ee=require("./useNormalTexture.cjs.js"),we=require("./Points.cjs.js"),ze=require("./Instances.cjs.js"),Fe=require("./Segments.cjs.js"),Oe=require("./Detailed.cjs.js"),Ie=require("./Preload.cjs.js"),He=require("./BakeShadows.cjs.js"),Ve=require("./meshBounds.cjs.js"),ye=require("./AdaptiveDpr.cjs.js"),Qe=require("./AdaptiveEvents.cjs.js"),Xe=require("./PerformanceMonitor.cjs.js"),Ke=require("./RenderTexture.cjs.js"),We=require("./Mask.cjs.js"),Ne=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("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("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.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=u.PositionalAudio,exports.Text=a.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=d.Sampler,exports.useSurfaceSampler=d.useSurfaceSampler,exports.ComputedAttribute=q.ComputedAttribute,exports.Clone=m.Clone,exports.MarchingCube=h.MarchingCube,exports.MarchingCubes=h.MarchingCubes,exports.MarchingPlane=h.MarchingPlane,exports.Decal=C.Decal,exports.Svg=S.Svg,exports.Gltf=M.Gltf,exports.AsciiRenderer=T.AsciiRenderer,exports.OrthographicCamera=f.OrthographicCamera,exports.PerspectiveCamera=P.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=B.DeviceOrientationControls,exports.FlyControls=g.FlyControls,exports.MapControls=v.MapControls,exports.OrbitControls=A.OrbitControls,exports.TrackballControls=L.TrackballControls,exports.ArcballControls=k.ArcballControls,exports.TransformControls=G.TransformControls,exports.PointerLockControls=R.PointerLockControls,exports.FirstPersonControls=D.FirstPersonControls,exports.GizmoHelper=E.GizmoHelper,exports.useGizmoContext=E.useGizmoContext,exports.GizmoViewcube=w.GizmoViewcube,exports.GizmoViewport=z.GizmoViewport,exports.Grid=F.Grid,exports.useCubeTexture=O.useCubeTexture,exports.useFBX=I.useFBX,exports.useGLTF=H.useGLTF,exports.useKTX2=V.useKTX2,exports.useProgress=y.useProgress,exports.IsObject=Q.IsObject,exports.useTexture=Q.useTexture,exports.useVideoTexture=X.useVideoTexture,exports.Stats=K.Stats,exports.useDepthBuffer=W.useDepthBuffer,exports.useAspect=N.useAspect,exports.useCamera=U.useCamera,exports.useDetectGPU=_.useDetectGPU,exports.useHelper=J.useHelper,exports.useBVH=Y.useBVH,exports.useContextBridge=Z.useContextBridge,exports.useAnimations=$.useAnimations,exports.useFBO=ee.useFBO,exports.useIntersect=re.useIntersect,exports.useBoxProjectedEnv=se.useBoxProjectedEnv,exports.BBAnchor=te.BBAnchor,exports.useTrailTexture=oe.useTrailTexture,exports.CurveModifier=ie.CurveModifier,exports.MeshDistortMaterial=ue.MeshDistortMaterial,exports.MeshWobbleMaterial=ae.MeshWobbleMaterial,exports.MeshReflectorMaterial=ce.MeshReflectorMaterial,exports.MeshRefractionMaterial=ne.MeshRefractionMaterial,exports.PointMaterial=je.PointMaterial,exports.PointMaterialImpl=je.PointMaterialImpl,exports.shaderMaterial=pe.shaderMaterial,exports.SoftShadows=xe.SoftShadows,exports.softShadows=xe.softShadows,exports.Box=le.Box,exports.Capsule=le.Capsule,exports.Circle=le.Circle,exports.Cone=le.Cone,exports.Cylinder=le.Cylinder,exports.Dodecahedron=le.Dodecahedron,exports.Extrude=le.Extrude,exports.Icosahedron=le.Icosahedron,exports.Lathe=le.Lathe,exports.Octahedron=le.Octahedron,exports.Plane=le.Plane,exports.Polyhedron=le.Polyhedron,exports.Ring=le.Ring,exports.Sphere=le.Sphere,exports.Tetrahedron=le.Tetrahedron,exports.Torus=le.Torus,exports.TorusKnot=le.TorusKnot,exports.Tube=le.Tube,exports.RoundedBox=de.RoundedBox,exports.ScreenQuad=qe.ScreenQuad,exports.Center=me.Center,exports.Bounds=he.Bounds,exports.useBounds=he.useBounds,exports.CameraShake=Ce.CameraShake,exports.Float=Se.Float,exports.Stage=Me.Stage,exports.Backdrop=Te.Backdrop,exports.Shadow=fe.Shadow,exports.ContactShadows=Pe.ContactShadows,exports.AccumulativeShadows=be.AccumulativeShadows,exports.RandomizedLight=be.RandomizedLight,exports.accumulativeContext=be.accumulativeContext,exports.Reflector=Be.Reflector,exports.SpotLight=ge.SpotLight,exports.SpotLightShadow=ge.SpotLightShadow,exports.Environment=ve.Environment,exports.EnvironmentCube=ve.EnvironmentCube,exports.EnvironmentMap=ve.EnvironmentMap,exports.EnvironmentPortal=ve.EnvironmentPortal,exports.useEnvironment=ve.useEnvironment,exports.Lightformer=Ae.Lightformer,exports.Sky=Le.Sky,exports.calcPosFromAngles=Le.calcPosFromAngles,exports.Stars=ke.Stars,exports.Cloud=Ge.Cloud,exports.Sparkles=Re.Sparkles,exports.useMatcapTexture=De.useMatcapTexture,exports.useNormalTexture=Ee.useNormalTexture,exports.Point=we.Point,exports.Points=we.Points,exports.PointsBuffer=we.PointsBuffer,exports.PositionPoint=we.PositionPoint,exports.Instance=ze.Instance,exports.Instances=ze.Instances,exports.Merged=ze.Merged,exports.Segment=Fe.Segment,exports.SegmentObject=Fe.SegmentObject,exports.Segments=Fe.Segments,exports.Detailed=Oe.Detailed,exports.Preload=Ie.Preload,exports.BakeShadows=He.BakeShadows,exports.meshBounds=Ve.meshBounds,exports.AdaptiveDpr=ye.AdaptiveDpr,exports.AdaptiveEvents=Qe.AdaptiveEvents,exports.PerformanceMonitor=Xe.PerformanceMonitor,exports.usePerformanceMonitor=Xe.usePerformanceMonitor,exports.RenderTexture=Ke.RenderTexture,exports.Mask=We.Mask,exports.useMask=We.useMask,exports.Hud=Ne.Hud;
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"),u=require("./PositionalAudio.cjs.js"),a=require("./Text.cjs.js"),n=require("./Text3D.cjs.js"),c=require("./Effects.cjs.js"),j=require("./GradientTexture.cjs.js"),p=require("./Image.cjs.js"),x=require("./Edges.cjs.js"),l=require("./Trail.cjs.js"),d=require("./Sampler.cjs.js"),q=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"),P=require("./PerspectiveCamera.cjs.js"),b=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"),k=require("./ArcballControls.cjs.js"),G=require("./TransformControls.cjs.js"),R=require("./PointerLockControls.cjs.js"),D=require("./FirstPersonControls.cjs.js"),E=require("./GizmoHelper.cjs.js"),w=require("./GizmoViewcube.cjs.js"),z=require("./GizmoViewport.cjs.js"),F=require("./Grid.cjs.js"),O=require("./useCubeTexture.cjs.js"),I=require("./useFBX.cjs.js"),H=require("./useGLTF.cjs.js"),V=require("./useKTX2.cjs.js"),y=require("./useProgress.cjs.js"),Q=require("./useTexture.cjs.js"),X=require("./useVideoTexture.cjs.js"),K=require("./Stats.cjs.js"),W=require("./useDepthBuffer.cjs.js"),N=require("./useAspect.cjs.js"),U=require("./useCamera.cjs.js"),_=require("./useDetectGPU.cjs.js"),J=require("./useHelper.cjs.js"),Y=require("./useBVH.cjs.js"),Z=require("./useContextBridge.cjs.js"),$=require("./useAnimations.cjs.js"),ee=require("./useFBO.cjs.js"),re=require("./useIntersect.cjs.js"),se=require("./useBoxProjectedEnv.cjs.js"),te=require("./BBAnchor.cjs.js"),oe=require("./useTrailTexture.cjs.js"),ie=require("./CurveModifier.cjs.js"),ue=require("./MeshDistortMaterial.cjs.js"),ae=require("./MeshWobbleMaterial.cjs.js"),ne=require("./MeshReflectorMaterial.cjs.js"),ce=require("./MeshRefractionMaterial.cjs.js"),je=require("./MeshTransmissionMaterial.cjs.js"),pe=require("./PointMaterial.cjs.js"),xe=require("./shaderMaterial.cjs.js"),le=require("./softShadows.cjs.js"),de=require("./shapes.cjs.js"),qe=require("./RoundedBox.cjs.js"),me=require("./ScreenQuad.cjs.js"),he=require("./Center.cjs.js"),Ce=require("./Bounds.cjs.js"),Me=require("./CameraShake.cjs.js"),Se=require("./Float.cjs.js"),Te=require("./Stage.cjs.js"),fe=require("./Backdrop.cjs.js"),Pe=require("./Shadow.cjs.js"),be=require("./ContactShadows.cjs.js"),Be=require("./AccumulativeShadows.cjs.js"),ge=require("./Reflector.cjs.js"),ve=require("./SpotLight.cjs.js"),Ae=require("./Environment.cjs.js"),Le=require("./Lightformer.cjs.js"),ke=require("./Sky.cjs.js"),Ge=require("./Stars.cjs.js"),Re=require("./Cloud.cjs.js"),De=require("./Sparkles.cjs.js"),Ee=require("./useMatcapTexture.cjs.js"),we=require("./useNormalTexture.cjs.js"),ze=require("./Points.cjs.js"),Fe=require("./Instances.cjs.js"),Oe=require("./Segments.cjs.js"),Ie=require("./Detailed.cjs.js"),He=require("./Preload.cjs.js"),Ve=require("./BakeShadows.cjs.js"),ye=require("./meshBounds.cjs.js"),Qe=require("./AdaptiveDpr.cjs.js"),Xe=require("./AdaptiveEvents.cjs.js"),Ke=require("./PerformanceMonitor.cjs.js"),We=require("./RenderTexture.cjs.js"),Ne=require("./Mask.cjs.js"),Ue=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("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("../helpers/environment-assets.cjs.js"),require("../materials/SpotLightMaterial.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=u.PositionalAudio,exports.Text=a.Text,exports.Text3D=n.Text3D,exports.Effects=c.Effects,exports.isWebGL2Available=c.isWebGL2Available,exports.GradientTexture=j.GradientTexture,exports.Image=p.Image,exports.Edges=x.Edges,exports.Trail=l.Trail,exports.useTrail=l.useTrail,exports.Sampler=d.Sampler,exports.useSurfaceSampler=d.useSurfaceSampler,exports.ComputedAttribute=q.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=P.PerspectiveCamera,exports.CubeCamera=b.CubeCamera,exports.DeviceOrientationControls=B.DeviceOrientationControls,exports.FlyControls=g.FlyControls,exports.MapControls=v.MapControls,exports.OrbitControls=A.OrbitControls,exports.TrackballControls=L.TrackballControls,exports.ArcballControls=k.ArcballControls,exports.TransformControls=G.TransformControls,exports.PointerLockControls=R.PointerLockControls,exports.FirstPersonControls=D.FirstPersonControls,exports.GizmoHelper=E.GizmoHelper,exports.useGizmoContext=E.useGizmoContext,exports.GizmoViewcube=w.GizmoViewcube,exports.GizmoViewport=z.GizmoViewport,exports.Grid=F.Grid,exports.useCubeTexture=O.useCubeTexture,exports.useFBX=I.useFBX,exports.useGLTF=H.useGLTF,exports.useKTX2=V.useKTX2,exports.useProgress=y.useProgress,exports.IsObject=Q.IsObject,exports.useTexture=Q.useTexture,exports.useVideoTexture=X.useVideoTexture,exports.Stats=K.Stats,exports.useDepthBuffer=W.useDepthBuffer,exports.useAspect=N.useAspect,exports.useCamera=U.useCamera,exports.useDetectGPU=_.useDetectGPU,exports.useHelper=J.useHelper,exports.useBVH=Y.useBVH,exports.useContextBridge=Z.useContextBridge,exports.useAnimations=$.useAnimations,exports.useFBO=ee.useFBO,exports.useIntersect=re.useIntersect,exports.useBoxProjectedEnv=se.useBoxProjectedEnv,exports.BBAnchor=te.BBAnchor,exports.useTrailTexture=oe.useTrailTexture,exports.CurveModifier=ie.CurveModifier,exports.MeshDistortMaterial=ue.MeshDistortMaterial,exports.MeshWobbleMaterial=ae.MeshWobbleMaterial,exports.MeshReflectorMaterial=ne.MeshReflectorMaterial,exports.MeshRefractionMaterial=ce.MeshRefractionMaterial,exports.MeshTransmissionMaterial=je.MeshTransmissionMaterial,exports.PointMaterial=pe.PointMaterial,exports.PointMaterialImpl=pe.PointMaterialImpl,exports.shaderMaterial=xe.shaderMaterial,exports.SoftShadows=le.SoftShadows,exports.softShadows=le.softShadows,exports.Box=de.Box,exports.Capsule=de.Capsule,exports.Circle=de.Circle,exports.Cone=de.Cone,exports.Cylinder=de.Cylinder,exports.Dodecahedron=de.Dodecahedron,exports.Extrude=de.Extrude,exports.Icosahedron=de.Icosahedron,exports.Lathe=de.Lathe,exports.Octahedron=de.Octahedron,exports.Plane=de.Plane,exports.Polyhedron=de.Polyhedron,exports.Ring=de.Ring,exports.Sphere=de.Sphere,exports.Tetrahedron=de.Tetrahedron,exports.Torus=de.Torus,exports.TorusKnot=de.TorusKnot,exports.Tube=de.Tube,exports.RoundedBox=qe.RoundedBox,exports.ScreenQuad=me.ScreenQuad,exports.Center=he.Center,exports.Bounds=Ce.Bounds,exports.useBounds=Ce.useBounds,exports.CameraShake=Me.CameraShake,exports.Float=Se.Float,exports.Stage=Te.Stage,exports.Backdrop=fe.Backdrop,exports.Shadow=Pe.Shadow,exports.ContactShadows=be.ContactShadows,exports.AccumulativeShadows=Be.AccumulativeShadows,exports.RandomizedLight=Be.RandomizedLight,exports.accumulativeContext=Be.accumulativeContext,exports.Reflector=ge.Reflector,exports.SpotLight=ve.SpotLight,exports.SpotLightShadow=ve.SpotLightShadow,exports.Environment=Ae.Environment,exports.EnvironmentCube=Ae.EnvironmentCube,exports.EnvironmentMap=Ae.EnvironmentMap,exports.EnvironmentPortal=Ae.EnvironmentPortal,exports.useEnvironment=Ae.useEnvironment,exports.Lightformer=Le.Lightformer,exports.Sky=ke.Sky,exports.calcPosFromAngles=ke.calcPosFromAngles,exports.Stars=Ge.Stars,exports.Cloud=Re.Cloud,exports.Sparkles=De.Sparkles,exports.useMatcapTexture=Ee.useMatcapTexture,exports.useNormalTexture=we.useNormalTexture,exports.Point=ze.Point,exports.Points=ze.Points,exports.PointsBuffer=ze.PointsBuffer,exports.PositionPoint=ze.PositionPoint,exports.Instance=Fe.Instance,exports.Instances=Fe.Instances,exports.Merged=Fe.Merged,exports.Segment=Oe.Segment,exports.SegmentObject=Oe.SegmentObject,exports.Segments=Oe.Segments,exports.Detailed=Ie.Detailed,exports.Preload=He.Preload,exports.BakeShadows=Ve.BakeShadows,exports.meshBounds=ye.meshBounds,exports.AdaptiveDpr=Qe.AdaptiveDpr,exports.AdaptiveEvents=Xe.AdaptiveEvents,exports.PerformanceMonitor=Ke.PerformanceMonitor,exports.usePerformanceMonitor=Ke.usePerformanceMonitor,exports.RenderTexture=We.RenderTexture,exports.Mask=Ne.Mask,exports.useMask=Ne.useMask,exports.Hud=Ue.Hud;
package/core/index.d.ts CHANGED
@@ -62,6 +62,7 @@ export * from './MeshDistortMaterial';
62
62
  export * from './MeshWobbleMaterial';
63
63
  export * from './MeshReflectorMaterial';
64
64
  export * from './MeshRefractionMaterial';
65
+ export * from './MeshTransmissionMaterial';
65
66
  export * from './PointMaterial';
66
67
  export * from './shaderMaterial';
67
68
  export * from './softShadows';
package/core/index.js CHANGED
@@ -62,6 +62,7 @@ export { MeshDistortMaterial } from './MeshDistortMaterial.js';
62
62
  export { MeshWobbleMaterial } from './MeshWobbleMaterial.js';
63
63
  export { MeshReflectorMaterial } from './MeshReflectorMaterial.js';
64
64
  export { MeshRefractionMaterial } from './MeshRefractionMaterial.js';
65
+ export { MeshTransmissionMaterial } from './MeshTransmissionMaterial.js';
65
66
  export { PointMaterial, PointMaterialImpl } from './PointMaterial.js';
66
67
  export { shaderMaterial } from './shaderMaterial.js';
67
68
  export { SoftShadows, softShadows } from './softShadows.js';