@takram/three-clouds 0.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/CHANGELOG.md +5 -0
- package/README.md +1130 -0
- package/assets/local_weather.png +0 -0
- package/assets/shape.bin +1 -0
- package/assets/shape_detail.bin +1 -0
- package/assets/turbulence.png +0 -0
- package/build/index.cjs +583 -0
- package/build/index.cjs.map +1 -0
- package/build/index.js +728 -0
- package/build/index.js.map +1 -0
- package/build/r3f.cjs +2 -0
- package/build/r3f.cjs.map +1 -0
- package/build/r3f.js +205 -0
- package/build/r3f.js.map +1 -0
- package/build/shared.cjs +2189 -0
- package/build/shared.cjs.map +1 -0
- package/build/shared.js +3825 -0
- package/build/shared.js.map +1 -0
- package/package.json +77 -0
- package/src/CascadedShadowMaps.ts +288 -0
- package/src/CloudLayer.ts +85 -0
- package/src/CloudLayers.test.ts +61 -0
- package/src/CloudLayers.ts +181 -0
- package/src/CloudShape.ts +22 -0
- package/src/CloudShapeDetail.ts +22 -0
- package/src/CloudsEffect.ts +810 -0
- package/src/CloudsMaterial.ts +467 -0
- package/src/CloudsPass.ts +285 -0
- package/src/CloudsResolveMaterial.ts +108 -0
- package/src/DensityProfile.ts +38 -0
- package/src/LocalWeather.ts +21 -0
- package/src/PassBase.ts +28 -0
- package/src/Procedural3DTexture.ts +94 -0
- package/src/ProceduralTexture.ts +94 -0
- package/src/ShaderArrayPass.ts +32 -0
- package/src/ShadowMaterial.ts +141 -0
- package/src/ShadowPass.ts +185 -0
- package/src/ShadowResolveMaterial.ts +72 -0
- package/src/Turbulence.ts +21 -0
- package/src/bayer.ts +23 -0
- package/src/constants.ts +8 -0
- package/src/helpers/FrustumCorners.ts +138 -0
- package/src/helpers/setArrayRenderTargetLayers.ts +32 -0
- package/src/helpers/splitFrustum.ts +59 -0
- package/src/index.ts +14 -0
- package/src/qualityPresets.ts +117 -0
- package/src/r3f/CloudLayer.tsx +95 -0
- package/src/r3f/CloudLayers.tsx +54 -0
- package/src/r3f/Clouds.tsx +278 -0
- package/src/r3f/index.ts +2 -0
- package/src/shaders/catmullRomSampling.glsl +113 -0
- package/src/shaders/cloudShape.frag +78 -0
- package/src/shaders/cloudShapeDetail.frag +56 -0
- package/src/shaders/clouds.frag +996 -0
- package/src/shaders/clouds.glsl +190 -0
- package/src/shaders/clouds.vert +69 -0
- package/src/shaders/cloudsEffect.frag +11 -0
- package/src/shaders/cloudsResolve.frag +202 -0
- package/src/shaders/cloudsResolve.vert +10 -0
- package/src/shaders/localWeather.frag +83 -0
- package/src/shaders/parameters.glsl +64 -0
- package/src/shaders/perlin.glsl +211 -0
- package/src/shaders/shadow.frag +197 -0
- package/src/shaders/shadow.vert +16 -0
- package/src/shaders/shadowResolve.frag +76 -0
- package/src/shaders/shadowResolve.vert +10 -0
- package/src/shaders/structuredSampling.glsl +101 -0
- package/src/shaders/tileableNoise.glsl +88 -0
- package/src/shaders/turbulence.frag +51 -0
- package/src/shaders/types.glsl +18 -0
- package/src/shaders/varianceClipping.glsl +114 -0
- package/src/uniforms.ts +218 -0
- package/types/CascadedShadowMaps.d.ts +52 -0
- package/types/CloudLayer.d.ts +26 -0
- package/types/CloudLayers.d.ts +21 -0
- package/types/CloudShape.d.ts +5 -0
- package/types/CloudShapeDetail.d.ts +5 -0
- package/types/CloudsEffect.d.ts +170 -0
- package/types/CloudsMaterial.d.ts +86 -0
- package/types/CloudsPass.d.ts +44 -0
- package/types/CloudsResolveMaterial.d.ts +30 -0
- package/types/DensityProfile.d.ts +12 -0
- package/types/LocalWeather.d.ts +5 -0
- package/types/PassBase.d.ts +14 -0
- package/types/Procedural3DTexture.d.ts +20 -0
- package/types/ProceduralTexture.d.ts +24 -0
- package/types/ShaderArrayPass.d.ts +7 -0
- package/types/ShadowMaterial.d.ts +34 -0
- package/types/ShadowPass.d.ts +34 -0
- package/types/ShadowResolveMaterial.d.ts +20 -0
- package/types/Turbulence.d.ts +5 -0
- package/types/bayer.d.ts +4 -0
- package/types/constants.d.ts +6 -0
- package/types/helpers/FrustumCorners.d.ts +18 -0
- package/types/helpers/setArrayRenderTargetLayers.d.ts +3 -0
- package/types/helpers/splitFrustum.d.ts +9 -0
- package/types/index.d.ts +13 -0
- package/types/qualityPresets.d.ts +46 -0
- package/types/r3f/CloudLayer.d.ts +7 -0
- package/types/r3f/CloudLayers.d.ts +15 -0
- package/types/r3f/Clouds.d.ts +16 -0
- package/types/r3f/index.d.ts +2 -0
- package/types/uniforms.d.ts +66 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/Procedural3DTexture.ts","../src/shaders/cloudShape.frag?raw","../src/shaders/perlin.glsl?raw","../src/shaders/tileableNoise.glsl?raw","../src/CloudShape.ts","../src/shaders/cloudShapeDetail.frag?raw","../src/CloudShapeDetail.ts","../src/ProceduralTexture.ts","../src/shaders/localWeather.frag?raw","../src/LocalWeather.ts","../src/shaders/turbulence.frag?raw","../src/Turbulence.ts"],"sourcesContent":null,"names":["Procedural3DTextureBase","size","fragmentShader","Camera","RawShaderMaterial","GLSL3","Uniform","Mesh","PlaneGeometry","WebGL3DRenderTarget","RedFormat","texture","LinearFilter","RepeatWrapping","NoColorSpace","renderer","deltaTime","renderTarget","layer","fragmentShader$3","perlin","tileableNoise","CloudShape","CLOUD_SHAPE_TEXTURE_SIZE","resolveIncludes","math","fragmentShader$2","CloudShapeDetail","CLOUD_SHAPE_DETAIL_TEXTURE_SIZE","ProceduralTextureBase","WebGLRenderTarget","RGBAFormat","LinearMipMapLinearFilter","fragmentShader$1","LocalWeather","Turbulence"],"mappings":";;;;;AAyBO,MAAMA,EAAuD;AAAA,EASlE,YAAY,EAAE,MAAAC,GAAM,gBAAAC,KAAqD;AAP3D,SAAA,cAAA,IAKG,KAAA,SAAS,IAAIC,EAAO,GAGnC,KAAK,OAAOF,GACP,KAAA,WAAW,IAAIG,EAAkB;AAAA,MACpC,aAAaC;AAAA,MACb;AAAA;AAAA,QAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQzB,gBAAAH;AAAA,MACA,UAAU;AAAA,QACR,OAAO,IAAII,EAAQ,CAAC;AAAA,MAAA;AAAA,IACtB,CACD,GACI,KAAA,OAAO,IAAIC,EAAK,IAAIC,EAAc,GAAG,CAAC,GAAG,KAAK,QAAQ,GAE3D,KAAK,eAAe,IAAIC,EAAoBR,GAAMA,GAAMA,GAAM;AAAA,MAC5D,aAAa;AAAA,MACb,eAAe;AAAA,MACf,QAAQS;AAAA,IAAA,CACT;AACK,UAAAC,IAAU,KAAK,aAAa;AAClC,IAAAA,EAAQ,YAAYC,GACpBD,EAAQ,YAAYC,GACpBD,EAAQ,QAAQE,GAChBF,EAAQ,QAAQE,GAChBF,EAAQ,QAAQE,GAChBF,EAAQ,aAAaG,GACrBH,EAAQ,cAAc;AAAA,EAAA;AAAA,EAGxB,UAAgB;AACd,SAAK,aAAa,QAAQ,GAC1B,KAAK,SAAS,QAAQ;AAAA,EAAA;AAAA,EAGxB,OAAOI,GAAyBC,GAA0B;AACpD,QAAA,CAAC,KAAK;AACR;AAEF,SAAK,cAAc;AAIb,UAAAC,IAAeF,EAAS,gBAAgB;AAC9C,aAASG,IAAQ,GAAGA,IAAQ,KAAK,MAAM,EAAEA;AACvC,WAAK,SAAS,SAAS,MAAM,QAAQA,IAAQ,KAAK,MACzCH,EAAA,gBAAgB,KAAK,cAAcG,CAAK,GACjDH,EAAS,OAAO,KAAK,MAAM,KAAK,MAAM;AAExC,IAAAA,EAAS,gBAAgBE,CAAY;AAAA,EAAA;AAAA,EAGvC,IAAI,UAAyB;AAC3B,WAAO,KAAK,aAAa;AAAA,EAAA;AAE7B;AC7FA,MAAeE,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA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"}
|
package/build/r3f.cjs
ADDED
@@ -0,0 +1,2 @@
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react/jsx-runtime"),m=require("@react-three/fiber"),P=require("@react-three/postprocessing"),t=require("react"),i=require("three"),g=require("@takram/three-atmosphere/r3f"),E=require("@takram/three-geospatial"),l=require("./shared.cjs"),A=t.createContext(null),W=({layers:e,disableDefault:o=!1,children:d})=>{const[a,f]=t.useState();return t.useLayoutEffect(()=>{e.set(o?Array(4).fill(l.CloudLayer.DEFAULT):l.CloudLayers.DEFAULT),f({layers:e,indexPool:[0,1,2,3],disableDefault:o})},[e,o]),a!=null&&y.jsx(A.Provider,{value:a,children:d})};function w(e,o){const[d,a]=t.useState(typeof e!="string"?e:null);return t.useEffect(()=>{if(typeof e=="string"){const f=new i.TextureLoader;(async()=>{const r=await f.loadAsync(e);r.minFilter=i.LinearMipMapLinearFilter,r.magFilter=i.LinearFilter,r.wrapS=i.RepeatWrapping,r.wrapT=i.RepeatWrapping,r.colorSpace=i.NoColorSpace,r.needsUpdate=!0,o.initTexture(r),a(r)})().catch(r=>{console.error(r)})}else a(e)},[e,o]),d}function D(e,o){const[d,a]=t.useState(typeof e!="string"?e:null);return t.useEffect(()=>{if(typeof e=="string"){const f=E.createData3DTextureLoaderClass(E.parseUint8Array,{width:o,height:o,depth:o,format:i.RedFormat,minFilter:i.LinearFilter,magFilter:i.LinearFilter,wrapS:i.RepeatWrapping,wrapT:i.RepeatWrapping,wrapR:i.RepeatWrapping,colorSpace:i.NoColorSpace}),r=new f;(async()=>{a(await r.loadAsync(e))})().catch(p=>{console.error(p)})}else a(e)},[e,o]),d}function j(e){const[o,d]=t.useState(typeof e!="string"?e:null);return t.useEffect(()=>{if(typeof e=="string"){const a=new E.STBNLoader;(async()=>{d(await a.loadAsync(e))})().catch(f=>{console.error(f)})}else d(e)},[e]),o}const I=t.forwardRef(function({disableDefaultLayers:o=!1,localWeatherTexture:d=l.DEFAULT_LOCAL_WEATHER_URL,shapeTexture:a=l.DEFAULT_SHAPE_URL,shapeDetailTexture:f=l.DEFAULT_SHAPE_DETAIL_URL,turbulenceTexture:r=l.DEFAULT_TURBULENCE_URL,stbnTexture:p=E.DEFAULT_STBN_URL,children:L,...c},h){const{textures:u,transientStates:s,...T}=t.useContext(g.AtmosphereContext),[U,F]=g.separateProps({...l.cloudsPassOptionsDefaults,...T,...u,...c}),n=t.useMemo(()=>new l.CloudsEffect,[]);t.useEffect(()=>()=>{n.dispose()},[n]),m.useFrame(()=>{s!=null&&(n.sunDirection.copy(s.sunDirection),n.ellipsoidCenter.copy(s.ellipsoidCenter),n.ellipsoidMatrix.copy(s.ellipsoidMatrix))}),t.useEffect(()=>{if(s!=null)return s.overlay=n.atmosphereOverlay,s.shadow=n.atmosphereShadow,s.shadowLength=n.atmosphereShadowLength,()=>{s.overlay=null,s.shadow=null,s.shadowLength=null}},[n,s]);const x=t.useCallback(C=>{if(s!=null)switch(C.property){case"atmosphereOverlay":s.overlay=n.atmosphereOverlay;break;case"atmosphereShadow":s.shadow=n.atmosphereShadow;break;case"atmosphereShadowLength":s.shadowLength=n.atmosphereShadowLength;break}},[n,s]);t.useEffect(()=>(n.events.addEventListener("change",x),()=>{n.events.removeEventListener("change",x)}),[n,x]);const S=m.useThree(({gl:C})=>C),_=w(d,S),v=D(a,l.CLOUD_SHAPE_TEXTURE_SIZE),R=D(f,l.CLOUD_SHAPE_DETAIL_TEXTURE_SIZE),b=w(r,S),O=j(p),{camera:q}=t.useContext(P.EffectComposerContext);return y.jsxs(y.Fragment,{children:[y.jsx("primitive",{ref:h,object:n,mainCamera:q,...U,localWeatherTexture:_,shapeTexture:v,shapeDetailTexture:R,turbulenceTexture:b,stbnTexture:O,...F}),y.jsx(W,{layers:n.cloudLayers,disableDefault:o,children:L})]})}),M=t.forwardRef(function({index:o,...d},a){const f=t.useContext(A);if(f==null)throw new Error("CloudLayer can only be used within the Clouds component!");const{layers:r,indexPool:p,disableDefault:L}=f,[c,h]=t.useState();if(t.useLayoutEffect(()=>{if(o!=null){const u=p.indexOf(o);if(u!==-1)return p.splice(u,1),h(o),()=>{p.push(o),h(void 0)}}else{const u=p.sort((s,T)=>s-T).shift();if(u!=null)return h(u),()=>{p.push(u),h(void 0)}}},[o,r,p]),t.useLayoutEffect(()=>{if(c==null)return;const u=r[c];return()=>{u.copy(L?l.CloudLayer.DEFAULT:l.CloudLayers.DEFAULT[c])}},[r,c,L]),t.useEffect(()=>{c!=null&&(typeof a=="function"?a(r[c]):a!=null&&(a.current=r[c]))},[a,r,c]),c!=null){const u=r[c];u.copy(L?l.CloudLayer.DEFAULT:l.CloudLayers.DEFAULT[c]),u.set(d)}return null});exports.CloudLayer=M;exports.Clouds=I;
|
2
|
+
//# sourceMappingURL=r3f.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"r3f.cjs","sources":["../src/r3f/CloudLayers.tsx","../src/r3f/Clouds.tsx","../src/r3f/CloudLayer.tsx"],"sourcesContent":null,"names":["CloudLayersContext","CloudLayers","layers","disableDefault","children","context","setContext","useState","useLayoutEffect","CloudLayer","CloudLayersImpl","jsx","useTextureState","input","gl","data","setData","useEffect","loader","TextureLoader","texture","LinearMipMapLinearFilter","LinearFilter","RepeatWrapping","NoColorSpace","error","use3DTextureState","size","Loader","createData3DTextureLoaderClass","parseUint8Array","RedFormat","useSTBNTextureState","STBNLoader","Clouds","forwardRef","disableDefaultLayers","localWeatherTextureProp","DEFAULT_LOCAL_WEATHER_URL","shapeTextureProp","DEFAULT_SHAPE_URL","shapeDetailTextureProp","DEFAULT_SHAPE_DETAIL_URL","turbulenceTextureProp","DEFAULT_TURBULENCE_URL","stbnTextureProp","DEFAULT_STBN_URL","props","forwardedRef","textures","transientStates","contextProps","useContext","AtmosphereContext","atmosphereParameters","others","separateProps","cloudsPassOptionsDefaults","effect","useMemo","CloudsEffect","useFrame","handleChange","useCallback","event","useThree","localWeatherTexture","shapeTexture","CLOUD_SHAPE_TEXTURE_SIZE","shapeDetailTexture","CLOUD_SHAPE_DETAIL_TEXTURE_SIZE","turbulenceTexture","stbnTexture","camera","EffectComposerContext","jsxs","Fragment","indexProp","indexPool","index","setIndex","poolIndex","a","b","layer","CloudLayerImpl"],"mappings":"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"}
|
package/build/r3f.js
ADDED
@@ -0,0 +1,205 @@
|
|
1
|
+
import { jsx as x, jsxs as k, Fragment as B } from "react/jsx-runtime";
|
2
|
+
import { useFrame as W, useThree as j } from "@react-three/fiber";
|
3
|
+
import { EffectComposerContext as X } from "@react-three/postprocessing";
|
4
|
+
import { createContext as Z, useState as L, useLayoutEffect as E, forwardRef as F, useContext as C, useMemo as $, useEffect as h, useCallback as q } from "react";
|
5
|
+
import { TextureLoader as G, LinearMipMapLinearFilter as J, LinearFilter as D, RepeatWrapping as f, NoColorSpace as _, RedFormat as K } from "three";
|
6
|
+
import { AtmosphereContext as Q, separateProps as V } from "@takram/three-atmosphere/r3f";
|
7
|
+
import { DEFAULT_STBN_URL as Y, createData3DTextureLoaderClass as z, parseUint8Array as ee, STBNLoader as te } from "@takram/three-geospatial";
|
8
|
+
import { c as w, b as A, d as re, e as oe, D as ae, f as se, g as ne, h as le, a as ce, C as ue } from "./shared.js";
|
9
|
+
const v = /* @__PURE__ */ Z(null), ie = ({
|
10
|
+
layers: e,
|
11
|
+
disableDefault: r = !1,
|
12
|
+
children: c
|
13
|
+
}) => {
|
14
|
+
const [a, u] = L();
|
15
|
+
return E(() => {
|
16
|
+
e.set(
|
17
|
+
r ? Array(4).fill(A.DEFAULT) : w.DEFAULT
|
18
|
+
), u({
|
19
|
+
layers: e,
|
20
|
+
indexPool: [0, 1, 2, 3],
|
21
|
+
disableDefault: r
|
22
|
+
});
|
23
|
+
}, [e, r]), a != null && /* @__PURE__ */ x(v.Provider, { value: a, children: c });
|
24
|
+
};
|
25
|
+
function U(e, r) {
|
26
|
+
const [c, a] = L(typeof e != "string" ? e : null);
|
27
|
+
return h(() => {
|
28
|
+
if (typeof e == "string") {
|
29
|
+
const u = new G();
|
30
|
+
(async () => {
|
31
|
+
const t = await u.loadAsync(e);
|
32
|
+
t.minFilter = J, t.magFilter = D, t.wrapS = f, t.wrapT = f, t.colorSpace = _, t.needsUpdate = !0, r.initTexture(t), a(t);
|
33
|
+
})().catch((t) => {
|
34
|
+
console.error(t);
|
35
|
+
});
|
36
|
+
} else
|
37
|
+
a(e);
|
38
|
+
}, [e, r]), c;
|
39
|
+
}
|
40
|
+
function g(e, r) {
|
41
|
+
const [c, a] = L(typeof e != "string" ? e : null);
|
42
|
+
return h(() => {
|
43
|
+
if (typeof e == "string") {
|
44
|
+
const u = z(ee, {
|
45
|
+
width: r,
|
46
|
+
height: r,
|
47
|
+
depth: r,
|
48
|
+
format: K,
|
49
|
+
minFilter: D,
|
50
|
+
magFilter: D,
|
51
|
+
wrapS: f,
|
52
|
+
wrapT: f,
|
53
|
+
wrapR: f,
|
54
|
+
colorSpace: _
|
55
|
+
}), t = new u();
|
56
|
+
(async () => {
|
57
|
+
a(await t.loadAsync(e));
|
58
|
+
})().catch((i) => {
|
59
|
+
console.error(i);
|
60
|
+
});
|
61
|
+
} else
|
62
|
+
a(e);
|
63
|
+
}, [e, r]), c;
|
64
|
+
}
|
65
|
+
function he(e) {
|
66
|
+
const [r, c] = L(typeof e != "string" ? e : null);
|
67
|
+
return h(() => {
|
68
|
+
if (typeof e == "string") {
|
69
|
+
const a = new te();
|
70
|
+
(async () => {
|
71
|
+
c(await a.loadAsync(e));
|
72
|
+
})().catch((u) => {
|
73
|
+
console.error(u);
|
74
|
+
});
|
75
|
+
} else
|
76
|
+
c(e);
|
77
|
+
}, [e]), r;
|
78
|
+
}
|
79
|
+
const Ee = /* @__PURE__ */ F(
|
80
|
+
function({
|
81
|
+
disableDefaultLayers: r = !1,
|
82
|
+
localWeatherTexture: c = ae,
|
83
|
+
shapeTexture: a = se,
|
84
|
+
shapeDetailTexture: u = ne,
|
85
|
+
turbulenceTexture: t = le,
|
86
|
+
stbnTexture: i = Y,
|
87
|
+
children: p,
|
88
|
+
...n
|
89
|
+
}, d) {
|
90
|
+
const { textures: l, transientStates: o, ...m } = C(Q), [b, R] = V({
|
91
|
+
...re,
|
92
|
+
...m,
|
93
|
+
...l,
|
94
|
+
...n
|
95
|
+
}), s = $(() => new oe(), []);
|
96
|
+
h(() => () => {
|
97
|
+
s.dispose();
|
98
|
+
}, [s]), W(() => {
|
99
|
+
o != null && (s.sunDirection.copy(o.sunDirection), s.ellipsoidCenter.copy(o.ellipsoidCenter), s.ellipsoidMatrix.copy(o.ellipsoidMatrix));
|
100
|
+
}), h(() => {
|
101
|
+
if (o != null)
|
102
|
+
return o.overlay = s.atmosphereOverlay, o.shadow = s.atmosphereShadow, o.shadowLength = s.atmosphereShadowLength, () => {
|
103
|
+
o.overlay = null, o.shadow = null, o.shadowLength = null;
|
104
|
+
};
|
105
|
+
}, [s, o]);
|
106
|
+
const T = q(
|
107
|
+
(y) => {
|
108
|
+
if (o != null)
|
109
|
+
switch (y.property) {
|
110
|
+
case "atmosphereOverlay":
|
111
|
+
o.overlay = s.atmosphereOverlay;
|
112
|
+
break;
|
113
|
+
case "atmosphereShadow":
|
114
|
+
o.shadow = s.atmosphereShadow;
|
115
|
+
break;
|
116
|
+
case "atmosphereShadowLength":
|
117
|
+
o.shadowLength = s.atmosphereShadowLength;
|
118
|
+
break;
|
119
|
+
}
|
120
|
+
},
|
121
|
+
[s, o]
|
122
|
+
);
|
123
|
+
h(() => (s.events.addEventListener("change", T), () => {
|
124
|
+
s.events.removeEventListener("change", T);
|
125
|
+
}), [s, T]);
|
126
|
+
const S = j(({ gl: y }) => y), O = U(c, S), P = g(
|
127
|
+
a,
|
128
|
+
ue
|
129
|
+
), I = g(
|
130
|
+
u,
|
131
|
+
ce
|
132
|
+
), H = U(t, S), M = he(i), { camera: N } = C(X);
|
133
|
+
return /* @__PURE__ */ k(B, { children: [
|
134
|
+
/* @__PURE__ */ x(
|
135
|
+
"primitive",
|
136
|
+
{
|
137
|
+
ref: d,
|
138
|
+
object: s,
|
139
|
+
mainCamera: N,
|
140
|
+
...b,
|
141
|
+
localWeatherTexture: O,
|
142
|
+
shapeTexture: P,
|
143
|
+
shapeDetailTexture: I,
|
144
|
+
turbulenceTexture: H,
|
145
|
+
stbnTexture: M,
|
146
|
+
...R
|
147
|
+
}
|
148
|
+
),
|
149
|
+
/* @__PURE__ */ x(
|
150
|
+
ie,
|
151
|
+
{
|
152
|
+
layers: s.cloudLayers,
|
153
|
+
disableDefault: r,
|
154
|
+
children: p
|
155
|
+
}
|
156
|
+
)
|
157
|
+
] });
|
158
|
+
}
|
159
|
+
), Ce = F(
|
160
|
+
function({ index: r, ...c }, a) {
|
161
|
+
const u = C(v);
|
162
|
+
if (u == null)
|
163
|
+
throw new Error(
|
164
|
+
"CloudLayer can only be used within the Clouds component!"
|
165
|
+
);
|
166
|
+
const { layers: t, indexPool: i, disableDefault: p } = u, [n, d] = L();
|
167
|
+
if (E(() => {
|
168
|
+
if (r != null) {
|
169
|
+
const l = i.indexOf(r);
|
170
|
+
if (l !== -1)
|
171
|
+
return i.splice(l, 1), d(r), () => {
|
172
|
+
i.push(r), d(void 0);
|
173
|
+
};
|
174
|
+
} else {
|
175
|
+
const l = i.sort((o, m) => o - m).shift();
|
176
|
+
if (l != null)
|
177
|
+
return d(l), () => {
|
178
|
+
i.push(l), d(void 0);
|
179
|
+
};
|
180
|
+
}
|
181
|
+
}, [r, t, i]), E(() => {
|
182
|
+
if (n == null)
|
183
|
+
return;
|
184
|
+
const l = t[n];
|
185
|
+
return () => {
|
186
|
+
l.copy(
|
187
|
+
p ? A.DEFAULT : w.DEFAULT[n]
|
188
|
+
);
|
189
|
+
};
|
190
|
+
}, [t, n, p]), h(() => {
|
191
|
+
n != null && (typeof a == "function" ? a(t[n]) : a != null && (a.current = t[n]));
|
192
|
+
}, [a, t, n]), n != null) {
|
193
|
+
const l = t[n];
|
194
|
+
l.copy(
|
195
|
+
p ? A.DEFAULT : w.DEFAULT[n]
|
196
|
+
), l.set(c);
|
197
|
+
}
|
198
|
+
return null;
|
199
|
+
}
|
200
|
+
);
|
201
|
+
export {
|
202
|
+
Ce as CloudLayer,
|
203
|
+
Ee as Clouds
|
204
|
+
};
|
205
|
+
//# sourceMappingURL=r3f.js.map
|
package/build/r3f.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"r3f.js","sources":["../src/r3f/CloudLayers.tsx","../src/r3f/Clouds.tsx","../src/r3f/CloudLayer.tsx"],"sourcesContent":null,"names":["CloudLayersContext","CloudLayers","layers","disableDefault","children","context","setContext","useState","useLayoutEffect","CloudLayer","CloudLayersImpl","jsx","useTextureState","input","gl","data","setData","useEffect","loader","TextureLoader","texture","LinearMipMapLinearFilter","LinearFilter","RepeatWrapping","NoColorSpace","error","use3DTextureState","size","Loader","createData3DTextureLoaderClass","parseUint8Array","RedFormat","useSTBNTextureState","STBNLoader","Clouds","forwardRef","disableDefaultLayers","localWeatherTextureProp","DEFAULT_LOCAL_WEATHER_URL","shapeTextureProp","DEFAULT_SHAPE_URL","shapeDetailTextureProp","DEFAULT_SHAPE_DETAIL_URL","turbulenceTextureProp","DEFAULT_TURBULENCE_URL","stbnTextureProp","DEFAULT_STBN_URL","props","forwardedRef","textures","transientStates","contextProps","useContext","AtmosphereContext","atmosphereParameters","others","separateProps","cloudsPassOptionsDefaults","effect","useMemo","CloudsEffect","useFrame","handleChange","useCallback","event","useThree","localWeatherTexture","shapeTexture","CLOUD_SHAPE_TEXTURE_SIZE","shapeDetailTexture","CLOUD_SHAPE_DETAIL_TEXTURE_SIZE","turbulenceTexture","stbnTexture","camera","EffectComposerContext","jsxs","Fragment","indexProp","indexPool","index","setIndex","poolIndex","a","b","layer","CloudLayerImpl"],"mappings":"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"}
|