@takram/three-clouds 0.7.0 → 0.7.2
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 +12 -0
- package/build/shared.cjs +10 -15
- package/build/shared.cjs.map +1 -1
- package/build/shared.js +40 -45
- package/build/shared.js.map +1 -1
- package/package.json +4 -4
- package/src/shaders/clouds.frag +4 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.7.2] - 2026-03-23
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
|
|
7
|
+
- Fixed depth test when logarithmic depth is used with `postprocessing >= 6.38.0`, [#100](https://github.com/takram-design-engineering/three-geospatial/issues/100).
|
|
8
|
+
|
|
9
|
+
## [0.7.1] - 2026-03-10
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- Fixed clouds not appearing when logarithmic depth is used, [#102](https://github.com/takram-design-engineering/three-geospatial/pull/102).
|
|
14
|
+
|
|
3
15
|
## [0.7.0] - 2026-03-09
|
|
4
16
|
|
|
5
17
|
### Changed
|
package/build/shared.cjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
"use strict";const w=require("postprocessing"),n=require("three"),z=require("@takram/three-atmosphere"),h=require("@takram/three-geospatial"),P=require("@takram/three-atmosphere/shaders/bruneton"),g=require("@takram/three-geospatial/shaders");class b{constructor(e=0,t=0,a=0,i=0){this.expTerm=e,this.exponent=t,this.linearTerm=a,this.constantTerm=i}set(e=0,t=0,a=0,i=0){return this.expTerm=e,this.exponent=t,this.linearTerm=a,this.constantTerm=i,this}clone(){return new b(this.expTerm,this.exponent,this.linearTerm,this.constantTerm)}copy(e){return this.expTerm=e.expTerm,this.exponent=e.exponent,this.linearTerm=e.linearTerm,this.constantTerm=e.constantTerm,this}}const me=["channel","altitude","height","densityScale","shapeAmount","shapeDetailAmount","weatherExponent","shapeAlteringBias","coverageFilterWidth","shadow","densityProfile"];function ve(o,e){if(e!=null)for(const t of me){const a=e[t];a!=null&&(o[t]instanceof b?o[t].copy(a):o[t]=a)}}const M=class M{constructor(e){this.channel="r",this.altitude=0,this.height=0,this.densityScale=.2,this.shapeAmount=1,this.shapeDetailAmount=1,this.weatherExponent=1,this.shapeAlteringBias=.35,this.coverageFilterWidth=.6,this.densityProfile=new b(0,0,.75,.25),this.shadow=!1,this.set(e)}set(e){return ve(this,e),this}clone(){return new M(this)}copy(e){return this.channel=e.channel,this.altitude=e.altitude,this.height=e.height,this.densityScale=e.densityScale,this.shapeAmount=e.shapeAmount,this.shapeDetailAmount=e.shapeDetailAmount,this.weatherExponent=e.weatherExponent,this.shapeAlteringBias=e.shapeAlteringBias,this.coverageFilterWidth=e.coverageFilterWidth,this.densityProfile.copy(e.densityProfile),this.shadow=e.shadow,this}};M.DEFAULT=new M;let S=M;const O=Array.from({length:8},()=>({value:0,flag:0})),L=Array.from({length:3},()=>({min:0,max:0}));function ge(o,e){return o.value!==e.value?o.value-e.value:o.flag-e.flag}const I=class I extends Array{constructor(e){super(new S(e?.[0]),new S(e?.[1]),new S(e?.[2]),new S(e?.[3]))}set(e){return this[0].set(e?.[0]),this[1].set(e?.[1]),this[2].set(e?.[2]),this[3].set(e?.[3]),this}reset(){return this[0].copy(S.DEFAULT),this[1].copy(S.DEFAULT),this[2].copy(S.DEFAULT),this[3].copy(S.DEFAULT),this}clone(){return new I(this)}copy(e){return this[0].copy(e[0]),this[1].copy(e[1]),this[2].copy(e[2]),this[3].copy(e[3]),this}get localWeatherChannels(){return this[0].channel+this[1].channel+this[2].channel+this[3].channel}packValues(e,t){return t.set(this[0][e],this[1][e],this[2][e],this[3][e])}packSums(e,t,a){return a.set(this[0][e]+this[0][t],this[1][e]+this[1][t],this[2][e]+this[2][t],this[3][e]+this[3][t])}packDensityProfiles(e,t){return t.set(this[0].densityProfile[e],this[1].densityProfile[e],this[2].densityProfile[e],this[3].densityProfile[e])}packIntervalHeights(e,t){for(let s=0;s<4;++s){const l=this[s];let u=O[s];u.value=l.altitude,u.flag=0,u=O[s+4],u.value=l.altitude+l.height,u.flag=1}O.sort(ge);let a=0,i=0;for(let s=0;s<O.length;++s){const{value:l,flag:u}=O[s];if(i===0&&s>0){const d=L[a++];d.min=O[s-1].value,d.max=l}i+=u===0?1:-1}for(;a<3;++a){const s=L[a];s.min=0,s.max=0}let r=L[0];e.x=r.min,t.x=r.max,r=L[1],e.y=r.min,t.y=r.max,r=L[2],e.z=r.min,t.z=r.max}};I.DEFAULT=new I([{channel:"r",altitude:750,height:650,densityScale:.2,shapeAmount:1,shapeDetailAmount:1,weatherExponent:1,shapeAlteringBias:.35,coverageFilterWidth:.6,shadow:!0},{channel:"g",altitude:1e3,height:1200,densityScale:.2,shapeAmount:1,shapeDetailAmount:1,weatherExponent:1,shapeAlteringBias:.35,coverageFilterWidth:.6,shadow:!0},{channel:"b",altitude:7500,height:500,densityScale:.003,shapeAmount:.4,shapeDetailAmount:0,weatherExponent:1,shapeAlteringBias:.35,coverageFilterWidth:.5},{channel:"a"}]);let W=I;var Se=process.env.NODE_ENV==="production",J="Invariant failed";function D(o,e){if(!o){if(Se)throw new Error(J);var t=J;throw new Error(t)}}class N{constructor(e,t){this.near=[new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3],this.far=[new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3],e!=null&&t!=null&&this.setFromCamera(e,t)}clone(){return new N().copy(this)}copy(e){for(let t=0;t<4;++t)this.near[t].copy(e.near[t]),this.far[t].copy(e.far[t]);return this}setFromCamera(e,t){const a=e.isOrthographicCamera===!0,i=e.projectionMatrixInverse;this.near[0].set(1,1,-1),this.near[1].set(1,-1,-1),this.near[2].set(-1,-1,-1),this.near[3].set(-1,1,-1);for(let r=0;r<4;++r)this.near[r].applyMatrix4(i);this.far[0].set(1,1,1),this.far[1].set(1,-1,1),this.far[2].set(-1,-1,1),this.far[3].set(-1,1,1);for(let r=0;r<4;++r){const s=this.far[r];s.applyMatrix4(i);const l=Math.abs(s.z);a?s.z*=Math.min(t/l,1):s.multiplyScalar(Math.min(t/l,1))}return this}split(e,t=[]){for(let a=0;a<e.length;++a){const i=t[a]??=new N;if(a===0)for(let r=0;r<4;++r)i.near[r].copy(this.near[r]);else for(let r=0;r<4;++r)i.near[r].lerpVectors(this.near[r],this.far[r],e[a-1]);if(a===e.length-1)for(let r=0;r<4;++r)i.far[r].copy(this.far[r]);else for(let r=0;r<4;++r)i.far[r].lerpVectors(this.near[r],this.far[r],e[a])}return t.length=e.length,t}applyMatrix4(e){for(let t=0;t<4;++t)this.near[t].applyMatrix4(e),this.far[t].applyMatrix4(e);return this}}const xe={uniform:(o,e,t,a,i=[])=>{for(let r=0;r<o;++r)i[r]=(e+(t-e)*(r+1)/o)/t;return i.length=o,i},logarithmic:(o,e,t,a,i=[])=>{for(let r=0;r<o;++r)i[r]=e*(t/e)**((r+1)/o)/t;return i.length=o,i},practical:(o,e,t,a=.5,i=[])=>{for(let r=0;r<o;++r){const s=(e+(t-e)*(r+1)/o)/t,l=e*(t/e)**((r+1)/o)/t;i[r]=h.lerp(s,l,a)}return i.length=o,i}};function ye(o,e,t,a,i,r=[]){return xe[o](e,t,a,i,r)}const Q=new n.Vector3,ee=new n.Vector3,we=new n.Matrix4,te=new n.Matrix4,Ce=new N,Te=new n.Box3,De={maxFar:null,farScale:1,splitMode:"practical",splitLambda:.5,margin:0,fade:!0};class Ee{constructor(e){this.cascades=[],this.mapSize=new n.Vector2,this.cameraFrustum=new N,this.frusta=[],this.splits=[],this._far=0;const{cascadeCount:t,mapSize:a,maxFar:i,farScale:r,splitMode:s,splitLambda:l,margin:u,fade:d}={...De,...e};this.cascadeCount=t,this.mapSize.copy(a),this.maxFar=i,this.farScale=r,this.splitMode=s,this.splitLambda=l,this.margin=u,this.fade=d}get cascadeCount(){return this.cascades.length}set cascadeCount(e){if(e!==this.cascadeCount){for(let t=0;t<e;++t)this.cascades[t]??={interval:new n.Vector2,matrix:new n.Matrix4,inverseMatrix:new n.Matrix4,projectionMatrix:new n.Matrix4,inverseProjectionMatrix:new n.Matrix4,viewMatrix:new n.Matrix4,inverseViewMatrix:new n.Matrix4};this.cascades.length=e}}get far(){return this._far}updateIntervals(e){const t=this.cascadeCount,a=this.splits,i=this.far;ye(this.splitMode,t,e.near,i,this.splitLambda,a),this.cameraFrustum.setFromCamera(e,i),this.cameraFrustum.split(a,this.frusta);const r=this.cascades;for(let s=0;s<t;++s)r[s].interval.set(a[s-1]??0,a[s]??0)}getFrustumRadius(e,t){const a=t.near,i=t.far;let r=Math.max(i[0].distanceTo(i[2]),i[0].distanceTo(a[2]));if(this.fade){const s=e.near,l=this.far,u=i[0].z/(l-s);r+=.25*u**2*(l-s)}return r*.5}updateMatrices(e,t,a=1){const i=we.lookAt(Q.setScalar(0),ee.copy(t).multiplyScalar(-1),n.Object3D.DEFAULT_UP),r=te.multiplyMatrices(te.copy(i).invert(),e.matrixWorld),s=this.frusta,l=this.cascades;D(s.length===l.length);const u=this.margin,d=this.mapSize;for(let p=0;p<s.length;++p){const f=s[p],x=l[p],C=this.getFrustumRadius(e,s[p]),A=-C,_=C,Z=C,q=-C;x.projectionMatrix.makeOrthographic(A,_,Z,q,-this.margin,C*2+this.margin);const{near:pe,far:fe}=Ce.copy(f).applyMatrix4(r),H=Te.makeEmpty();for(let F=0;F<4;F++)H.expandByPoint(pe[F]),H.expandByPoint(fe[F]);const T=H.getCenter(Q);T.z=H.max.z+u;const
|
|
1
|
+
"use strict";const w=require("postprocessing"),n=require("three"),z=require("@takram/three-atmosphere"),h=require("@takram/three-geospatial"),P=require("@takram/three-atmosphere/shaders/bruneton"),g=require("@takram/three-geospatial/shaders");class b{constructor(e=0,t=0,a=0,i=0){this.expTerm=e,this.exponent=t,this.linearTerm=a,this.constantTerm=i}set(e=0,t=0,a=0,i=0){return this.expTerm=e,this.exponent=t,this.linearTerm=a,this.constantTerm=i,this}clone(){return new b(this.expTerm,this.exponent,this.linearTerm,this.constantTerm)}copy(e){return this.expTerm=e.expTerm,this.exponent=e.exponent,this.linearTerm=e.linearTerm,this.constantTerm=e.constantTerm,this}}const me=["channel","altitude","height","densityScale","shapeAmount","shapeDetailAmount","weatherExponent","shapeAlteringBias","coverageFilterWidth","shadow","densityProfile"];function ve(o,e){if(e!=null)for(const t of me){const a=e[t];a!=null&&(o[t]instanceof b?o[t].copy(a):o[t]=a)}}const M=class M{constructor(e){this.channel="r",this.altitude=0,this.height=0,this.densityScale=.2,this.shapeAmount=1,this.shapeDetailAmount=1,this.weatherExponent=1,this.shapeAlteringBias=.35,this.coverageFilterWidth=.6,this.densityProfile=new b(0,0,.75,.25),this.shadow=!1,this.set(e)}set(e){return ve(this,e),this}clone(){return new M(this)}copy(e){return this.channel=e.channel,this.altitude=e.altitude,this.height=e.height,this.densityScale=e.densityScale,this.shapeAmount=e.shapeAmount,this.shapeDetailAmount=e.shapeDetailAmount,this.weatherExponent=e.weatherExponent,this.shapeAlteringBias=e.shapeAlteringBias,this.coverageFilterWidth=e.coverageFilterWidth,this.densityProfile.copy(e.densityProfile),this.shadow=e.shadow,this}};M.DEFAULT=new M;let S=M;const O=Array.from({length:8},()=>({value:0,flag:0})),L=Array.from({length:3},()=>({min:0,max:0}));function ge(o,e){return o.value!==e.value?o.value-e.value:o.flag-e.flag}const I=class I extends Array{constructor(e){super(new S(e?.[0]),new S(e?.[1]),new S(e?.[2]),new S(e?.[3]))}set(e){return this[0].set(e?.[0]),this[1].set(e?.[1]),this[2].set(e?.[2]),this[3].set(e?.[3]),this}reset(){return this[0].copy(S.DEFAULT),this[1].copy(S.DEFAULT),this[2].copy(S.DEFAULT),this[3].copy(S.DEFAULT),this}clone(){return new I(this)}copy(e){return this[0].copy(e[0]),this[1].copy(e[1]),this[2].copy(e[2]),this[3].copy(e[3]),this}get localWeatherChannels(){return this[0].channel+this[1].channel+this[2].channel+this[3].channel}packValues(e,t){return t.set(this[0][e],this[1][e],this[2][e],this[3][e])}packSums(e,t,a){return a.set(this[0][e]+this[0][t],this[1][e]+this[1][t],this[2][e]+this[2][t],this[3][e]+this[3][t])}packDensityProfiles(e,t){return t.set(this[0].densityProfile[e],this[1].densityProfile[e],this[2].densityProfile[e],this[3].densityProfile[e])}packIntervalHeights(e,t){for(let s=0;s<4;++s){const l=this[s];let u=O[s];u.value=l.altitude,u.flag=0,u=O[s+4],u.value=l.altitude+l.height,u.flag=1}O.sort(ge);let a=0,i=0;for(let s=0;s<O.length;++s){const{value:l,flag:u}=O[s];if(i===0&&s>0){const d=L[a++];d.min=O[s-1].value,d.max=l}i+=u===0?1:-1}for(;a<3;++a){const s=L[a];s.min=0,s.max=0}let r=L[0];e.x=r.min,t.x=r.max,r=L[1],e.y=r.min,t.y=r.max,r=L[2],e.z=r.min,t.z=r.max}};I.DEFAULT=new I([{channel:"r",altitude:750,height:650,densityScale:.2,shapeAmount:1,shapeDetailAmount:1,weatherExponent:1,shapeAlteringBias:.35,coverageFilterWidth:.6,shadow:!0},{channel:"g",altitude:1e3,height:1200,densityScale:.2,shapeAmount:1,shapeDetailAmount:1,weatherExponent:1,shapeAlteringBias:.35,coverageFilterWidth:.6,shadow:!0},{channel:"b",altitude:7500,height:500,densityScale:.003,shapeAmount:.4,shapeDetailAmount:0,weatherExponent:1,shapeAlteringBias:.35,coverageFilterWidth:.5},{channel:"a"}]);let W=I;var Se=process.env.NODE_ENV==="production",J="Invariant failed";function D(o,e){if(!o){if(Se)throw new Error(J);var t=J;throw new Error(t)}}class N{constructor(e,t){this.near=[new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3],this.far=[new n.Vector3,new n.Vector3,new n.Vector3,new n.Vector3],e!=null&&t!=null&&this.setFromCamera(e,t)}clone(){return new N().copy(this)}copy(e){for(let t=0;t<4;++t)this.near[t].copy(e.near[t]),this.far[t].copy(e.far[t]);return this}setFromCamera(e,t){const a=e.isOrthographicCamera===!0,i=e.projectionMatrixInverse;this.near[0].set(1,1,-1),this.near[1].set(1,-1,-1),this.near[2].set(-1,-1,-1),this.near[3].set(-1,1,-1);for(let r=0;r<4;++r)this.near[r].applyMatrix4(i);this.far[0].set(1,1,1),this.far[1].set(1,-1,1),this.far[2].set(-1,-1,1),this.far[3].set(-1,1,1);for(let r=0;r<4;++r){const s=this.far[r];s.applyMatrix4(i);const l=Math.abs(s.z);a?s.z*=Math.min(t/l,1):s.multiplyScalar(Math.min(t/l,1))}return this}split(e,t=[]){for(let a=0;a<e.length;++a){const i=t[a]??=new N;if(a===0)for(let r=0;r<4;++r)i.near[r].copy(this.near[r]);else for(let r=0;r<4;++r)i.near[r].lerpVectors(this.near[r],this.far[r],e[a-1]);if(a===e.length-1)for(let r=0;r<4;++r)i.far[r].copy(this.far[r]);else for(let r=0;r<4;++r)i.far[r].lerpVectors(this.near[r],this.far[r],e[a])}return t.length=e.length,t}applyMatrix4(e){for(let t=0;t<4;++t)this.near[t].applyMatrix4(e),this.far[t].applyMatrix4(e);return this}}const xe={uniform:(o,e,t,a,i=[])=>{for(let r=0;r<o;++r)i[r]=(e+(t-e)*(r+1)/o)/t;return i.length=o,i},logarithmic:(o,e,t,a,i=[])=>{for(let r=0;r<o;++r)i[r]=e*(t/e)**((r+1)/o)/t;return i.length=o,i},practical:(o,e,t,a=.5,i=[])=>{for(let r=0;r<o;++r){const s=(e+(t-e)*(r+1)/o)/t,l=e*(t/e)**((r+1)/o)/t;i[r]=h.lerp(s,l,a)}return i.length=o,i}};function ye(o,e,t,a,i,r=[]){return xe[o](e,t,a,i,r)}const Q=new n.Vector3,ee=new n.Vector3,we=new n.Matrix4,te=new n.Matrix4,Ce=new N,Te=new n.Box3,De={maxFar:null,farScale:1,splitMode:"practical",splitLambda:.5,margin:0,fade:!0};class Ee{constructor(e){this.cascades=[],this.mapSize=new n.Vector2,this.cameraFrustum=new N,this.frusta=[],this.splits=[],this._far=0;const{cascadeCount:t,mapSize:a,maxFar:i,farScale:r,splitMode:s,splitLambda:l,margin:u,fade:d}={...De,...e};this.cascadeCount=t,this.mapSize.copy(a),this.maxFar=i,this.farScale=r,this.splitMode=s,this.splitLambda=l,this.margin=u,this.fade=d}get cascadeCount(){return this.cascades.length}set cascadeCount(e){if(e!==this.cascadeCount){for(let t=0;t<e;++t)this.cascades[t]??={interval:new n.Vector2,matrix:new n.Matrix4,inverseMatrix:new n.Matrix4,projectionMatrix:new n.Matrix4,inverseProjectionMatrix:new n.Matrix4,viewMatrix:new n.Matrix4,inverseViewMatrix:new n.Matrix4};this.cascades.length=e}}get far(){return this._far}updateIntervals(e){const t=this.cascadeCount,a=this.splits,i=this.far;ye(this.splitMode,t,e.near,i,this.splitLambda,a),this.cameraFrustum.setFromCamera(e,i),this.cameraFrustum.split(a,this.frusta);const r=this.cascades;for(let s=0;s<t;++s)r[s].interval.set(a[s-1]??0,a[s]??0)}getFrustumRadius(e,t){const a=t.near,i=t.far;let r=Math.max(i[0].distanceTo(i[2]),i[0].distanceTo(a[2]));if(this.fade){const s=e.near,l=this.far,u=i[0].z/(l-s);r+=.25*u**2*(l-s)}return r*.5}updateMatrices(e,t,a=1){const i=we.lookAt(Q.setScalar(0),ee.copy(t).multiplyScalar(-1),n.Object3D.DEFAULT_UP),r=te.multiplyMatrices(te.copy(i).invert(),e.matrixWorld),s=this.frusta,l=this.cascades;D(s.length===l.length);const u=this.margin,d=this.mapSize;for(let p=0;p<s.length;++p){const f=s[p],x=l[p],C=this.getFrustumRadius(e,s[p]),A=-C,_=C,Z=C,q=-C;x.projectionMatrix.makeOrthographic(A,_,Z,q,-this.margin,C*2+this.margin);const{near:pe,far:fe}=Ce.copy(f).applyMatrix4(r),H=Te.makeEmpty();for(let F=0;F<4;F++)H.expandByPoint(pe[F]),H.expandByPoint(fe[F]);const T=H.getCenter(Q);T.z=H.max.z+u;const X=(_-A)/d.width,K=(Z-q)/d.height;T.x=Math.round(T.x/X)*X,T.y=Math.round(T.y/K)*K,T.applyMatrix4(i);const $=ee.copy(t).multiplyScalar(a).add(T);x.inverseViewMatrix.lookAt(T,$,n.Object3D.DEFAULT_UP).setPosition($)}}update(e,t,a){this._far=this.maxFar!=null?Math.min(this.maxFar,e.far*this.farScale):e.far*this.farScale,this.updateIntervals(e),this.updateMatrices(e,t,a);const i=this.cascades,r=this.cascadeCount;for(let s=0;s<r;++s){const{matrix:l,inverseMatrix:u,projectionMatrix:d,inverseProjectionMatrix:p,viewMatrix:f,inverseViewMatrix:x}=i[s];p.copy(d).invert(),f.copy(x).invert(),l.copy(d).multiply(f),u.copy(x).multiply(p)}}}const ne=[0,8,2,10,12,4,14,6,3,11,1,9,15,7,13,5],ie=ne.reduce((o,e,t)=>{const a=new n.Vector2;for(let i=0;i<16;++i)if(ne[i]===t){a.set((i%4+.5)/4,(Math.floor(i/4)+.5)/4);break}return[...o,a]},[]),Ae={resolutionScale:1,lightShafts:!0,shapeDetail:!0,turbulence:!0,haze:!0,clouds:{multiScatteringOctaves:8,accurateSunSkyLight:!0,accuratePhaseFunction:!1,maxIterationCount:500,minStepSize:50,maxStepSize:1e3,maxRayDistance:2e5,perspectiveStepScale:1.01,minDensity:1e-5,minExtinction:1e-5,minTransmittance:.01,maxIterationCountToGround:3,maxIterationCountToSun:2,minSecondaryStepSize:100,secondaryStepScale:2,maxShadowLengthIterationCount:500,minShadowLengthStepSize:50,maxShadowLengthRayDistance:2e5},shadow:{cascadeCount:3,mapSize:new n.Vector2(512,512),maxIterationCount:50,minStepSize:100,maxStepSize:1e3,minDensity:1e-5,minExtinction:1e-5,minTransmittance:1e-4}},c=Ae,_e={low:{...c,lightShafts:!1,shapeDetail:!1,turbulence:!1,clouds:{...c.clouds,accurateSunSkyLight:!1,maxIterationCount:200,minStepSize:100,maxRayDistance:1e5,minDensity:1e-4,minExtinction:1e-4,minTransmittance:.1,maxIterationCountToGround:0,maxIterationCountToSun:1},shadow:{...c.shadow,maxIterationCount:25,minDensity:1e-4,minExtinction:1e-4,minTransmittance:.01,cascadeCount:2,mapSize:new n.Vector2(256,256)}},medium:{...c,lightShafts:!1,turbulence:!1,clouds:{...c.clouds,minDensity:1e-4,minExtinction:1e-4,accurateSunSkyLight:!1,maxIterationCountToSun:2,maxIterationCountToGround:1},shadow:{...c.shadow,minDensity:1e-4,minExtinction:1e-4,mapSize:new n.Vector2(256,256)}},high:c,ultra:{...c,clouds:{...c.clouds,minStepSize:10},shadow:{...c.shadow,mapSize:new n.Vector2(1024,1024)}}},Pe=`precision highp float;
|
|
2
2
|
precision highp sampler3D;
|
|
3
3
|
precision highp sampler2DArray;
|
|
4
4
|
|
|
5
5
|
#include <common>
|
|
6
6
|
#include <packing>
|
|
7
7
|
|
|
8
|
+
#include "core/depth"
|
|
8
9
|
#include "core/math"
|
|
9
10
|
#include "core/turbo"
|
|
10
11
|
#include "core/generators"
|
|
@@ -97,14 +98,6 @@ layout(location = 1) out vec3 outputDepthVelocity;
|
|
|
97
98
|
layout(location = 2) out float outputShadowLength;
|
|
98
99
|
#endif // SHADOW_LENGTH
|
|
99
100
|
|
|
100
|
-
float readDepth(const vec2 uv) {
|
|
101
|
-
#if DEPTH_PACKING == 3201
|
|
102
|
-
return unpackRGBAToDepth(texture(depthBuffer, uv));
|
|
103
|
-
#else // DEPTH_PACKING == 3201
|
|
104
|
-
return texture(depthBuffer, uv).r;
|
|
105
|
-
#endif // DEPTH_PACKING == 3201
|
|
106
|
-
}
|
|
107
|
-
|
|
108
101
|
float getViewZ(const float depth) {
|
|
109
102
|
#ifdef PERSPECTIVE_CAMERA
|
|
110
103
|
return perspectiveDepthToViewZ(depth, cameraNear, cameraFar);
|
|
@@ -817,8 +810,10 @@ vec2 getHazeRayNearFar(const IntersectionResult intersections) {
|
|
|
817
810
|
#endif // HAZE
|
|
818
811
|
|
|
819
812
|
float getRayDistanceToScene(const vec3 rayDirection, out float viewZ) {
|
|
820
|
-
float depth =
|
|
813
|
+
float depth = readDepthValue(depthBuffer, vUv * targetUvScale + temporalJitter);
|
|
814
|
+
depth = reverseLogDepth(depth, cameraNear, cameraFar);
|
|
821
815
|
if (depth < 1.0 - 1e-7) {
|
|
816
|
+
depth = reverseLogDepth(depth, cameraNear, cameraFar);
|
|
822
817
|
viewZ = getViewZ(depth);
|
|
823
818
|
return -viewZ / dot(rayDirection, vCameraDirection);
|
|
824
819
|
}
|
|
@@ -1776,7 +1771,7 @@ vec4 varianceClipping(
|
|
|
1776
1771
|
) {
|
|
1777
1772
|
return varianceClipping(inputBuffer, coord, current, history, 1.0);
|
|
1778
1773
|
}
|
|
1779
|
-
`;var be=Object.defineProperty,ce=(o,e,t,a)=>{for(var i=void 0,r=o.length-1,s;r>=0;r--)(s=o[r])&&(i=s(e,t,i)||i);return i&&be(e,t,i),i};class Y extends n.RawShaderMaterial{constructor({colorBuffer:e=null,depthVelocityBuffer:t=null,shadowLengthBuffer:a=null,colorHistoryBuffer:i=null,shadowLengthHistoryBuffer:r=null}={}){super({name:"CloudsResolveMaterial",glslVersion:n.GLSL3,vertexShader:Ne,fragmentShader:h.unrollLoops(h.resolveIncludes(Ie,{core:{turbo:g.turbo},catmullRomSampling:Me,varianceClipping:se})),uniforms:{colorBuffer:new n.Uniform(e),depthVelocityBuffer:new n.Uniform(t),shadowLengthBuffer:new n.Uniform(a),colorHistoryBuffer:new n.Uniform(i),shadowLengthHistoryBuffer:new n.Uniform(r),texelSize:new n.Uniform(new n.Vector2),frame:new n.Uniform(0),jitterOffset:new n.Uniform(new n.Vector2),varianceGamma:new n.Uniform(2),temporalAlpha:new n.Uniform(.1)}}),this.temporalUpscale=!0,this.shadowLength=!0}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}onBeforeRender(e,t,a,i,r,s){const u=this.uniforms.frame.value%16,d=ie[u],p=(d.x-.5)*4,f=(d.y-.5)*4;this.uniforms.jitterOffset.value.set(p,f)}}ce([h.define("TEMPORAL_UPSCALE")],Y.prototype,"temporalUpscale");ce([h.define("SHADOW_LENGTH")],Y.prototype,"shadowLength");class le extends w.Pass{constructor(e,t){super(e),this._mainCamera=new n.Camera;const{shadow:a}=t;this.shadow=a}get mainCamera(){return this._mainCamera}set mainCamera(e){this._mainCamera=e}}function
|
|
1774
|
+
`;var be=Object.defineProperty,ce=(o,e,t,a)=>{for(var i=void 0,r=o.length-1,s;r>=0;r--)(s=o[r])&&(i=s(e,t,i)||i);return i&&be(e,t,i),i};class Y extends n.RawShaderMaterial{constructor({colorBuffer:e=null,depthVelocityBuffer:t=null,shadowLengthBuffer:a=null,colorHistoryBuffer:i=null,shadowLengthHistoryBuffer:r=null}={}){super({name:"CloudsResolveMaterial",glslVersion:n.GLSL3,vertexShader:Ne,fragmentShader:h.unrollLoops(h.resolveIncludes(Ie,{core:{turbo:g.turbo},catmullRomSampling:Me,varianceClipping:se})),uniforms:{colorBuffer:new n.Uniform(e),depthVelocityBuffer:new n.Uniform(t),shadowLengthBuffer:new n.Uniform(a),colorHistoryBuffer:new n.Uniform(i),shadowLengthHistoryBuffer:new n.Uniform(r),texelSize:new n.Uniform(new n.Vector2),frame:new n.Uniform(0),jitterOffset:new n.Uniform(new n.Vector2),varianceGamma:new n.Uniform(2),temporalAlpha:new n.Uniform(.1)}}),this.temporalUpscale=!0,this.shadowLength=!0}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}onBeforeRender(e,t,a,i,r,s){const u=this.uniforms.frame.value%16,d=ie[u],p=(d.x-.5)*4,f=(d.y-.5)*4;this.uniforms.jitterOffset.value.set(p,f)}}ce([h.define("TEMPORAL_UPSCALE")],Y.prototype,"temporalUpscale");ce([h.define("SHADOW_LENGTH")],Y.prototype,"shadowLength");class le extends w.Pass{constructor(e,t){super(e),this._mainCamera=new n.Camera;const{shadow:a}=t;this.shadow=a}get mainCamera(){return this._mainCamera}set mainCamera(e){this._mainCamera=e}}function B(o,{depthVelocity:e,shadowLength:t}){const a=new n.WebGLRenderTarget(1,1,{depthBuffer:!1,type:n.HalfFloatType});a.texture.minFilter=n.LinearFilter,a.texture.magFilter=n.LinearFilter,a.texture.name=o;let i;e&&(i=a.texture.clone(),i.isRenderTargetTexture=!0,a.depthVelocity=i,a.textures.push(i));let r;return t&&(r=a.texture.clone(),r.isRenderTargetTexture=!0,r.format=n.RedFormat,a.shadowLength=r,a.textures.push(r)),Object.assign(a,{depthVelocity:i??null,shadowLength:r??null})}class He extends le{constructor({parameterUniforms:e,layerUniforms:t,atmosphereUniforms:a,...i},r){super("CloudsPass",i),this.atmosphere=r,this.width=0,this.height=0,this.currentMaterial=new m({parameterUniforms:e,layerUniforms:t,atmosphereUniforms:a},r),this.currentPass=new w.ShaderPass(this.currentMaterial),this.resolveMaterial=new Y,this.resolvePass=new w.ShaderPass(this.resolveMaterial),this.initRenderTargets({depthVelocity:!0,shadowLength:c.lightShafts})}copyCameraSettings(e){this.currentMaterial.copyCameraSettings(e)}initialize(e,t,a){this.currentPass.initialize(e,t,a),this.resolvePass.initialize(e,t,a)}initRenderTargets(e){this.currentRenderTarget?.dispose(),this.resolveRenderTarget?.dispose(),this.historyRenderTarget?.dispose();const t=B("Clouds",e),a=B("Clouds.A",{...e,depthVelocity:!1}),i=B("Clouds.B",{...e,depthVelocity:!1});this.currentRenderTarget=t,this.resolveRenderTarget=a,this.historyRenderTarget=i;const r=this.resolveMaterial.uniforms;r.colorBuffer.value=t.texture,r.depthVelocityBuffer.value=t.depthVelocity,r.shadowLengthBuffer.value=t.shadowLength,r.colorHistoryBuffer.value=i.texture,r.shadowLengthHistoryBuffer.value=i.shadowLength}copyShadow(){const e=this.shadow,t=this.currentMaterial.uniforms;for(let a=0;a<e.cascadeCount;++a){const i=e.cascades[a];t.shadowIntervals.value[a].copy(i.interval),t.shadowMatrices.value[a].copy(i.matrix)}t.shadowFar.value=e.far}copyReprojection(){this.currentMaterial.copyReprojectionMatrix(this.mainCamera)}swapBuffers(){const e=this.historyRenderTarget,t=this.resolveRenderTarget;this.resolveRenderTarget=e,this.historyRenderTarget=t;const a=this.resolveMaterial.uniforms;a.colorHistoryBuffer.value=t.texture,a.shadowLengthHistoryBuffer.value=t.shadowLength}update(e,t,a){this.currentMaterial.uniforms.frame.value=t,this.resolveMaterial.uniforms.frame.value=t,this.copyCameraSettings(this.mainCamera),this.copyShadow(),this.currentPass.render(e,null,this.currentRenderTarget),this.resolvePass.render(e,null,this.resolveRenderTarget),this.copyReprojection(),this.swapBuffers()}setSize(e,t){if(this.width=e,this.height=t,this.temporalUpscale){const a=Math.ceil(e/4),i=Math.ceil(t/4);this.currentRenderTarget.setSize(a,i),this.currentMaterial.setSize(a*4,i*4,e,t)}else this.currentRenderTarget.setSize(e,t),this.currentMaterial.setSize(e,t);this.resolveRenderTarget.setSize(e,t),this.resolveMaterial.setSize(e,t),this.historyRenderTarget.setSize(e,t)}setShadowSize(e,t,a){this.currentMaterial.shadowCascadeCount=a,this.currentMaterial.setShadowSize(e,t)}setDepthTexture(e,t){this.currentMaterial.depthBuffer=e,this.currentMaterial.depthPacking=t??0}get outputBuffer(){return this.historyRenderTarget.texture}get shadowBuffer(){return this.currentMaterial.uniforms.shadowBuffer.value}set shadowBuffer(e){this.currentMaterial.uniforms.shadowBuffer.value=e}get shadowLengthBuffer(){return this.historyRenderTarget.shadowLength}get temporalUpscale(){return this.currentMaterial.temporalUpscale}set temporalUpscale(e){e!==this.temporalUpscale&&(this.currentMaterial.temporalUpscale=e,this.resolveMaterial.temporalUpscale=e,this.setSize(this.width,this.height))}get lightShafts(){return this.currentMaterial.shadowLength}set lightShafts(e){e!==this.lightShafts&&(this.currentMaterial.shadowLength=e,this.resolveMaterial.shadowLength=e,this.initRenderTargets({depthVelocity:!0,shadowLength:e}),this.setSize(this.width,this.height))}}function Fe(o,e){const a=o.properties.get(e.texture).__webglTexture,i=o.getContext();D(i instanceof WebGL2RenderingContext),o.setRenderTarget(e);const r=[];if(a!=null)for(let s=0;s<e.depth;++s)i.framebufferTextureLayer(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0+s,a,0,s),r.push(i.COLOR_ATTACHMENT0+s);i.drawBuffers(r)}class ae extends w.ShaderPass{render(e,t,a,i,r){const s=this.fullscreenMaterial.uniforms;t!==null&&s?.[this.input]!=null&&(s[this.input].value=t.texture),Fe(e,a),e.render(this.scene,this.camera)}}const ze=`precision highp float;
|
|
1780
1775
|
precision highp sampler3D;
|
|
1781
1776
|
|
|
1782
1777
|
#include <common>
|
|
@@ -1979,7 +1974,7 @@ void main() {
|
|
|
1979
1974
|
vUv = position.xy * 0.5 + 0.5;
|
|
1980
1975
|
gl_Position = vec4(position.xy, 1.0, 1.0);
|
|
1981
1976
|
}
|
|
1982
|
-
`,
|
|
1977
|
+
`,Ve=`// Implements Structured Volume Sampling in fragment shader:
|
|
1983
1978
|
// https://github.com/huwb/volsample
|
|
1984
1979
|
// Implementation reference:
|
|
1985
1980
|
// https://www.shadertoy.com/view/ttVfDc
|
|
@@ -2080,7 +2075,7 @@ void intersectStructuredPlanes(
|
|
|
2080
2075
|
stepOffset += stepSize;
|
|
2081
2076
|
}
|
|
2082
2077
|
}
|
|
2083
|
-
`;var
|
|
2078
|
+
`;var Be=Object.defineProperty,R=(o,e,t,a)=>{for(var i=void 0,r=o.length-1,s;r>=0;r--)(s=o[r])&&(i=s(e,t,i)||i);return i&&Be(e,t,i),i};class E extends n.RawShaderMaterial{constructor({parameterUniforms:e,layerUniforms:t,atmosphereUniforms:a}){super({name:"ShadowMaterial",glslVersion:n.GLSL3,vertexShader:We,fragmentShader:h.unrollLoops(h.resolveIncludes(ze,{core:{math:g.math,raySphereIntersection:g.raySphereIntersection},types:j,parameters:oe,structuredSampling:Ve,clouds:re})),uniforms:{...e,...t,...a,inverseShadowMatrices:new n.Uniform(Array.from({length:4},()=>new n.Matrix4)),reprojectionMatrices:new n.Uniform(Array.from({length:4},()=>new n.Matrix4)),resolution:new n.Uniform(new n.Vector2),frame:new n.Uniform(0),stbnTexture:new n.Uniform(null),maxIterationCount:new n.Uniform(c.shadow.maxIterationCount),minStepSize:new n.Uniform(c.shadow.minStepSize),maxStepSize:new n.Uniform(c.shadow.maxStepSize),minDensity:new n.Uniform(c.shadow.minDensity),minExtinction:new n.Uniform(c.shadow.minExtinction),minTransmittance:new n.Uniform(c.shadow.minTransmittance),opticalDepthTailScale:new n.Uniform(2)},defines:{SHADOW:"1",TEMPORAL_PASS:"1",TEMPORAL_JITTER:"1"}}),this.localWeatherChannels="rgba",this.cascadeCount=c.shadow.cascadeCount,this.temporalPass=!0,this.temporalJitter=!0,this.shapeDetail=c.shapeDetail,this.turbulence=c.turbulence,this.cascadeCount=c.shadow.cascadeCount}setSize(e,t){this.uniforms.resolution.value.set(e,t)}}R([h.defineExpression("LOCAL_WEATHER_CHANNELS",{validate:o=>/^[rgba]{4}$/.test(o)})],E.prototype,"localWeatherChannels");R([h.defineInt("CASCADE_COUNT",{min:1,max:4})],E.prototype,"cascadeCount");R([h.define("TEMPORAL_PASS")],E.prototype,"temporalPass");R([h.define("TEMPORAL_JITTER")],E.prototype,"temporalJitter");R([h.define("SHAPE_DETAIL")],E.prototype,"shapeDetail");R([h.define("TURBULENCE")],E.prototype,"turbulence");const Ge=`precision highp float;
|
|
2084
2079
|
precision highp sampler2DArray;
|
|
2085
2080
|
|
|
2086
2081
|
#define VARIANCE_9_SAMPLES 1
|
|
@@ -2166,7 +2161,7 @@ void main() {
|
|
|
2166
2161
|
vUv = position.xy * 0.5 + 0.5;
|
|
2167
2162
|
gl_Position = vec4(position.xy, 1.0, 1.0);
|
|
2168
2163
|
}
|
|
2169
|
-
`;var je=Object.defineProperty,Ye=(o,e,t,a)=>{for(var i=void 0,r=o.length-1,s;r>=0;r--)(s=o[r])&&(i=s(e,t,i)||i);return i&&je(e,t,i),i};class he extends n.RawShaderMaterial{constructor({inputBuffer:e=null,historyBuffer:t=null}={}){super({name:"ShadowResolveMaterial",glslVersion:n.GLSL3,vertexShader:ke,fragmentShader:h.unrollLoops(h.resolveIncludes(
|
|
2164
|
+
`;var je=Object.defineProperty,Ye=(o,e,t,a)=>{for(var i=void 0,r=o.length-1,s;r>=0;r--)(s=o[r])&&(i=s(e,t,i)||i);return i&&je(e,t,i),i};class he extends n.RawShaderMaterial{constructor({inputBuffer:e=null,historyBuffer:t=null}={}){super({name:"ShadowResolveMaterial",glslVersion:n.GLSL3,vertexShader:ke,fragmentShader:h.unrollLoops(h.resolveIncludes(Ge,{varianceClipping:se})),uniforms:{inputBuffer:new n.Uniform(e),historyBuffer:new n.Uniform(t),texelSize:new n.Uniform(new n.Vector2),varianceGamma:new n.Uniform(1),temporalAlpha:new n.Uniform(.01)},defines:{}}),this.cascadeCount=c.shadow.cascadeCount}setSize(e,t){this.uniforms.texelSize.value.set(1/e,1/t)}}Ye([h.defineInt("CASCADE_COUNT",{min:1,max:4})],he.prototype,"cascadeCount");function G(o){const e=new n.WebGLArrayRenderTarget(1,1,1,{depthBuffer:!1});return e.texture.type=n.HalfFloatType,e.texture.minFilter=n.LinearFilter,e.texture.magFilter=n.LinearFilter,e.texture.name=o,e}class Ze extends le{constructor({parameterUniforms:e,layerUniforms:t,atmosphereUniforms:a,...i}){super("ShadowPass",i),this.width=0,this.height=0,this.currentMaterial=new E({parameterUniforms:e,layerUniforms:t,atmosphereUniforms:a}),this.currentPass=new ae(this.currentMaterial),this.resolveMaterial=new he,this.resolvePass=new ae(this.resolveMaterial),this.initRenderTargets()}initialize(e,t,a){this.currentPass.initialize(e,t,a),this.resolvePass.initialize(e,t,a)}initRenderTargets(){this.currentRenderTarget?.dispose(),this.resolveRenderTarget?.dispose(),this.historyRenderTarget?.dispose();const e=G("Shadow"),t=this.temporalPass?G("Shadow.A"):null,a=this.temporalPass?G("Shadow.B"):null;this.currentRenderTarget=e,this.resolveRenderTarget=t,this.historyRenderTarget=a;const i=this.resolveMaterial.uniforms;i.inputBuffer.value=e.texture,i.historyBuffer.value=a?.texture??null}copyShadow(){const e=this.shadow,t=this.currentMaterial.uniforms;for(let a=0;a<e.cascadeCount;++a){const i=e.cascades[a];t.inverseShadowMatrices.value[a].copy(i.inverseMatrix)}}copyReprojection(){const e=this.shadow,t=this.currentMaterial.uniforms;for(let a=0;a<e.cascadeCount;++a){const i=e.cascades[a];t.reprojectionMatrices.value[a].copy(i.matrix)}}swapBuffers(){D(this.historyRenderTarget!=null),D(this.resolveRenderTarget!=null);const e=this.historyRenderTarget,t=this.resolveRenderTarget;this.resolveRenderTarget=e,this.historyRenderTarget=t,this.resolveMaterial.uniforms.historyBuffer.value=t.texture}update(e,t,a){this.currentMaterial.uniforms.frame.value=t,this.copyShadow(),this.currentPass.render(e,null,this.currentRenderTarget),this.temporalPass&&(D(this.resolveRenderTarget!=null),this.resolvePass.render(e,null,this.resolveRenderTarget),this.copyReprojection(),this.swapBuffers())}setSize(e,t,a=this.shadow.cascadeCount){this.width=e,this.height=t,this.currentMaterial.cascadeCount=a,this.resolveMaterial.cascadeCount=a,this.currentMaterial.setSize(e,t),this.resolveMaterial.setSize(e,t),this.currentRenderTarget.setSize(e,t,this.temporalPass?a*2:a),this.resolveRenderTarget?.setSize(e,t,a),this.historyRenderTarget?.setSize(e,t,a)}get outputBuffer(){return this.temporalPass?(D(this.historyRenderTarget!=null),this.historyRenderTarget.texture):this.currentRenderTarget.texture}get temporalPass(){return this.currentMaterial.temporalPass}set temporalPass(e){e!==this.temporalPass&&(this.currentMaterial.temporalPass=e,this.initRenderTargets(),this.setSize(this.width,this.height))}}function qe(o){return{scatteringCoefficient:new n.Uniform(1),absorptionCoefficient:new n.Uniform(0),coverage:new n.Uniform(.3),localWeatherTexture:new n.Uniform(o.localWeatherTexture),localWeatherRepeat:new n.Uniform(o.localWeatherRepeat),localWeatherOffset:new n.Uniform(o.localWeatherOffset),shapeTexture:new n.Uniform(o.shapeTexture),shapeRepeat:new n.Uniform(o.shapeRepeat),shapeOffset:new n.Uniform(o.shapeOffset),shapeDetailTexture:new n.Uniform(o.shapeDetailTexture),shapeDetailRepeat:new n.Uniform(o.shapeDetailRepeat),shapeDetailOffset:new n.Uniform(o.shapeDetailOffset),turbulenceTexture:new n.Uniform(o.turbulenceTexture),turbulenceRepeat:new n.Uniform(o.turbulenceRepeat),turbulenceDisplacement:new n.Uniform(350)}}function Xe(){return{minLayerHeights:new n.Uniform(new n.Vector4),maxLayerHeights:new n.Uniform(new n.Vector4),minIntervalHeights:new n.Uniform(new n.Vector3),maxIntervalHeights:new n.Uniform(new n.Vector3),densityScales:new n.Uniform(new n.Vector4),shapeAmounts:new n.Uniform(new n.Vector4),shapeDetailAmounts:new n.Uniform(new n.Vector4),weatherExponents:new n.Uniform(new n.Vector4),shapeAlteringBiases:new n.Uniform(new n.Vector4),coverageFilterWidths:new n.Uniform(new n.Vector4),minHeight:new n.Uniform(0),maxHeight:new n.Uniform(0),shadowTopHeight:new n.Uniform(0),shadowBottomHeight:new n.Uniform(0),shadowLayerMask:new n.Uniform(new n.Vector4),densityProfile:new n.Uniform({expTerms:new n.Vector4,exponents:new n.Vector4,linearTerms:new n.Vector4,constantTerms:new n.Vector4})}}const k=[0,0,0,0];function Ke(o,e){e.packValues("altitude",o.minLayerHeights.value),e.packSums("altitude","height",o.maxLayerHeights.value),e.packIntervalHeights(o.minIntervalHeights.value,o.maxIntervalHeights.value),e.packValues("densityScale",o.densityScales.value),e.packValues("shapeAmount",o.shapeAmounts.value),e.packValues("shapeDetailAmount",o.shapeDetailAmounts.value),e.packValues("weatherExponent",o.weatherExponents.value),e.packValues("shapeAlteringBias",o.shapeAlteringBiases.value),e.packValues("coverageFilterWidth",o.coverageFilterWidths.value);const t=o.densityProfile.value;e.packDensityProfiles("expTerm",t.expTerms),e.packDensityProfiles("exponent",t.exponents),e.packDensityProfiles("linearTerm",t.linearTerms),e.packDensityProfiles("constantTerm",t.constantTerms);let a=1/0,i=0,r=1/0,s=0;k.fill(0);for(let l=0;l<e.length;++l){const{altitude:u,height:d,shadow:p}=e[l],f=u+d;d>0&&(u<a&&(a=u),p&&u<r&&(r=u),f>i&&(i=f),p&&f>s&&(s=f)),k[l]=p?1:0}a!==1/0?(o.minHeight.value=a,o.maxHeight.value=i):(D(i===0),o.minHeight.value=0),r!==1/0?(o.shadowBottomHeight.value=r,o.shadowTopHeight.value=s):(D(s===0),o.shadowBottomHeight.value=0),o.shadowLayerMask.value.fromArray(k)}function $e(o,e){return{bottomRadius:new n.Uniform(o.bottomRadius),topRadius:new n.Uniform(o.topRadius),worldToECEFMatrix:new n.Uniform(e.worldToECEFMatrix),ecefToWorldMatrix:new n.Uniform(e.ecefToWorldMatrix),altitudeCorrection:new n.Uniform(e.altitudeCorrection),sunDirection:new n.Uniform(e.sunDirection)}}const Je=`uniform sampler2D cloudsBuffer;
|
|
2170
2165
|
|
|
2171
2166
|
void mainImage(const vec4 inputColor, const vec2 uv, out vec4 outputColor) {
|
|
2172
2167
|
#ifdef SKIP_RENDERING
|
|
@@ -2177,5 +2172,5 @@ void mainImage(const vec4 inputColor, const vec2 uv, out vec4 outputColor) {
|
|
|
2177
2172
|
outputColor.a = inputColor.a * (1.0 - clouds.a) + clouds.a;
|
|
2178
2173
|
#endif // SKIP_RENDERING
|
|
2179
2174
|
}
|
|
2180
|
-
`;var Qe=Object.defineProperty,et=(o,e,t,a)=>{for(var i=void 0,r=o.length-1,s;r>=0;r--)(s=o[r])&&(i=s(e,t,i)||i);return i&&Qe(e,t,i),i};const U=new n.Vector3,tt=new n.Vector2,nt=new n.Matrix3,at=["maxIterationCount","minStepSize","maxStepSize","maxRayDistance","perspectiveStepScale","minDensity","minExtinction","minTransmittance","maxIterationCountToSun","maxIterationCountToGround","minSecondaryStepSize","secondaryStepScale","maxShadowFilterRadius","maxShadowLengthIterationCount","minShadowLengthStepSize","maxShadowLengthRayDistance","hazeDensityScale","hazeExponent","hazeScatteringCoefficient","hazeAbsorptionCoefficient"],it=["multiScatteringOctaves","accurateSunSkyLight","accuratePhaseFunction"],rt=["maxIterationCount","minStepSize","maxStepSize","minDensity","minExtinction","minTransmittance","opticalDepthTailScale"],ot=["temporalJitter"],st=["temporalPass"],ct=["cascadeCount","mapSize","maxFar","farScale","splitMode","splitLambda"],y={type:"change"},ue={resolutionScale:c.resolutionScale,width:w.Resolution.AUTO_SIZE,height:w.Resolution.AUTO_SIZE};class de extends w.Effect{constructor(e=new n.Camera,t,a=z.AtmosphereParameters.DEFAULT){super("CloudsEffect",Je,{attributes:w.EffectAttribute.DEPTH,uniforms:new Map([["cloudsBuffer",new n.Uniform(null)]])}),this.camera=e,this.atmosphere=a,this.cloudLayers=W.DEFAULT.clone(),this.correctAltitude=!0,this.localWeatherRepeat=new n.Vector2().setScalar(100),this.localWeatherOffset=new n.Vector2,this.shapeRepeat=new n.Vector3().setScalar(3e-4),this.shapeOffset=new n.Vector3,this.shapeDetailRepeat=new n.Vector3().setScalar(.006),this.shapeDetailOffset=new n.Vector3,this.turbulenceRepeat=new n.Vector2().setScalar(20),this.worldToECEFMatrix=new n.Matrix4,this.ecefToWorldMatrix=new n.Matrix4,this.altitudeCorrection=new n.Vector3,this.sunDirection=new n.Vector3,this.localWeatherVelocity=new n.Vector2,this.shapeVelocity=new n.Vector3,this.shapeDetailVelocity=new n.Vector3,this._atmosphereOverlay=null,this._atmosphereShadow=null,this._atmosphereShadowLength=null,this.events=new n.EventDispatcher,this.frame=0,this.shadowCascadeCount=0,this.shadowMapSize=new n.Vector2,this.onResolutionChange=()=>{this.setSize(this.resolution.baseWidth,this.resolution.baseHeight)},this.skipRendering=!0;const{resolutionScale:i,width:r,height:s,resolutionX:l=r,resolutionY:u=s}={...ue,...t};this.shadowMaps=new Ee({cascadeCount:c.shadow.cascadeCount,mapSize:c.shadow.mapSize,splitLambda:.6}),this.parameterUniforms=qe({localWeatherTexture:this.proceduralLocalWeather?.texture??null,localWeatherRepeat:this.localWeatherRepeat,localWeatherOffset:this.localWeatherOffset,shapeTexture:this.proceduralShape?.texture??null,shapeRepeat:this.shapeRepeat,shapeOffset:this.shapeOffset,shapeDetailTexture:this.proceduralShapeDetail?.texture??null,shapeDetailRepeat:this.shapeDetailRepeat,shapeDetailOffset:this.shapeDetailOffset,turbulenceTexture:this.proceduralTurbulence?.texture??null,turbulenceRepeat:this.turbulenceRepeat}),this.layerUniforms=Ke(),this.atmosphereUniforms=$e(a,{worldToECEFMatrix:this.worldToECEFMatrix,ecefToWorldMatrix:this.ecefToWorldMatrix,altitudeCorrection:this.altitudeCorrection,sunDirection:this.sunDirection});const d={shadow:this.shadowMaps,parameterUniforms:this.parameterUniforms,layerUniforms:this.layerUniforms,atmosphereUniforms:this.atmosphereUniforms};this.shadowPass=new Ze(d),this.shadowPass.mainCamera=e,this.cloudsPass=new He(d,a),this.cloudsPass.mainCamera=e,this.clouds=h.definePropertyShorthand(h.defineUniformShorthand({},this.cloudsPass.currentMaterial,at),this.cloudsPass.currentMaterial,it),this.shadow=h.definePropertyShorthand(h.defineUniformShorthand({},this.shadowPass.currentMaterial,rt),this.shadowPass.currentMaterial,ot,this.shadowPass,st,this.shadowMaps,ct),this.resolution=new w.Resolution(this,l,u,i),this.resolution.addEventListener("change",this.onResolutionChange)}get mainCamera(){return this.camera}set mainCamera(e){this.camera=e,this.shadowPass.mainCamera=e,this.cloudsPass.mainCamera=e}initialize(e,t,a){this.shadowPass.initialize(e,t,a),this.cloudsPass.initialize(e,t,a)}updateSharedUniforms(e){Xe(this.layerUniforms,this.cloudLayers);const{parameterUniforms:t}=this;t.localWeatherOffset.value.add(tt.copy(this.localWeatherVelocity).multiplyScalar(e)),t.shapeOffset.value.add(U.copy(this.shapeVelocity).multiplyScalar(e)),t.shapeDetailOffset.value.add(U.copy(this.shapeDetailVelocity).multiplyScalar(e));const a=this.worldToECEFMatrix;this.ecefToWorldMatrix.copy(a).invert();const i=this.camera.getWorldPosition(U).applyMatrix4(this.worldToECEFMatrix),r=this.altitudeCorrection;this.correctAltitude?z.getAltitudeCorrectionOffset(i,this.atmosphere.bottomRadius,this.ellipsoid,r):r.setScalar(0);const s=this.ellipsoid.getSurfaceNormal(i,U),l=this.sunDirection.dot(s),u=h.lerp(1e6,1e3,l),d=nt.setFromMatrix4(a).transpose();this.shadowMaps.update(this.camera,U.copy(this.sunDirection).applyMatrix3(d),u)}updateWeatherTextureChannels(){const e=this.cloudLayers.localWeatherChannels;this.cloudsPass.currentMaterial.localWeatherChannels=e,this.shadowPass.currentMaterial.localWeatherChannels=e}updateAtmosphereComposition(){const{shadowMaps:e,shadowPass:t,cloudsPass:a}=this,i=t.currentMaterial.uniforms,r=a.currentMaterial.uniforms,s=this._atmosphereOverlay,l=Object.assign(this._atmosphereOverlay??{},{map:a.outputBuffer});s!==l&&(this._atmosphereOverlay=l,y.target=this,y.property="atmosphereOverlay",this.events.dispatchEvent(y));const u=this._atmosphereShadow,d=Object.assign(this._atmosphereShadow??{},{map:t.outputBuffer,mapSize:e.mapSize,cascadeCount:e.cascadeCount,intervals:r.shadowIntervals.value,matrices:r.shadowMatrices.value,inverseMatrices:i.inverseShadowMatrices.value,far:e.far,topHeight:r.shadowTopHeight.value});u!==d&&(this._atmosphereShadow=d,y.target=this,y.property="atmosphereShadow",this.events.dispatchEvent(y));const p=this._atmosphereShadowLength,f=a.shadowLengthBuffer!=null?Object.assign(this._atmosphereShadowLength??{},{map:a.shadowLengthBuffer}):null;p!==f&&(this._atmosphereShadowLength=f,y.target=this,y.property="atmosphereShadowLength",this.events.dispatchEvent(y))}update(e,t,a=0){const{shadowMaps:i,shadowPass:r,cloudsPass:s}=this;if(i.cascadeCount!==this.shadowCascadeCount||!i.mapSize.equals(this.shadowMapSize)){const{width:l,height:u}=i.mapSize,d=i.cascadeCount;this.shadowMapSize.set(l,u),this.shadowCascadeCount=d,r.setSize(l,u,d),s.setShadowSize(l,u,d)}this.proceduralLocalWeather?.render(e,a),this.proceduralShape?.render(e,a),this.proceduralShapeDetail?.render(e,a),this.proceduralTurbulence?.render(e,a),++this.frame,this.updateSharedUniforms(a),this.updateWeatherTextureChannels(),r.update(e,this.frame,a),s.shadowBuffer=r.outputBuffer,s.update(e,this.frame,a),this.updateAtmosphereComposition(),this.uniforms.get("cloudsBuffer").value=this.cloudsPass.outputBuffer}setSize(e,t){const{resolution:a}=this;a.setBaseSize(e,t);const{width:i,height:r}=a;this.cloudsPass.setSize(i,r)}setDepthTexture(e,t){this.shadowPass.setDepthTexture(e,t),this.cloudsPass.setDepthTexture(e,t)}set qualityPreset(e){const{clouds:t,shadow:a,...i}=_e[e];Object.assign(this,i),Object.assign(this.clouds,t),Object.assign(this.shadow,a)}get localWeatherTexture(){return this.proceduralLocalWeather??this.parameterUniforms.localWeatherTexture.value}set localWeatherTexture(e){e instanceof n.Texture||e==null?(this.proceduralLocalWeather=void 0,this.parameterUniforms.localWeatherTexture.value=e):(this.proceduralLocalWeather=e,this.parameterUniforms.localWeatherTexture.value=e.texture)}get shapeTexture(){return this.proceduralShape??this.parameterUniforms.shapeTexture.value}set shapeTexture(e){e instanceof n.Data3DTexture||e==null?(this.proceduralShape=void 0,this.parameterUniforms.shapeTexture.value=e):(this.proceduralShape=e,this.parameterUniforms.shapeTexture.value=e.texture)}get shapeDetailTexture(){return this.proceduralShapeDetail??this.parameterUniforms.shapeDetailTexture.value}set shapeDetailTexture(e){e instanceof n.Data3DTexture||e==null?(this.proceduralShapeDetail=void 0,this.parameterUniforms.shapeDetailTexture.value=e):(this.proceduralShapeDetail=e,this.parameterUniforms.shapeDetailTexture.value=e.texture)}get turbulenceTexture(){return this.proceduralTurbulence??this.parameterUniforms.turbulenceTexture.value}set turbulenceTexture(e){e instanceof n.Texture||e==null?(this.proceduralTurbulence=void 0,this.parameterUniforms.turbulenceTexture.value=e):(this.proceduralTurbulence=e,this.parameterUniforms.turbulenceTexture.value=e.texture)}get stbnTexture(){return this.cloudsPass.currentMaterial.uniforms.stbnTexture.value}set stbnTexture(e){this.cloudsPass.currentMaterial.uniforms.stbnTexture.value=e,this.shadowPass.currentMaterial.uniforms.stbnTexture.value=e}get resolutionScale(){return this.resolution.scale}set resolutionScale(e){this.resolution.scale=e}get temporalUpscale(){return this.cloudsPass.temporalUpscale}set temporalUpscale(e){this.cloudsPass.temporalUpscale=e}get lightShafts(){return this.cloudsPass.lightShafts}set lightShafts(e){this.cloudsPass.lightShafts=e}get shapeDetail(){return this.cloudsPass.currentMaterial.shapeDetail}set shapeDetail(e){this.cloudsPass.currentMaterial.shapeDetail=e,this.shadowPass.currentMaterial.shapeDetail=e}get turbulence(){return this.cloudsPass.currentMaterial.turbulence}set turbulence(e){this.cloudsPass.currentMaterial.turbulence=e,this.shadowPass.currentMaterial.turbulence=e}get haze(){return this.cloudsPass.currentMaterial.haze}set haze(e){this.cloudsPass.currentMaterial.haze=e}get scatteringCoefficient(){return this.parameterUniforms.scatteringCoefficient.value}set scatteringCoefficient(e){this.parameterUniforms.scatteringCoefficient.value=e}get absorptionCoefficient(){return this.parameterUniforms.absorptionCoefficient.value}set absorptionCoefficient(e){this.parameterUniforms.absorptionCoefficient.value=e}get coverage(){return this.parameterUniforms.coverage.value}set coverage(e){this.parameterUniforms.coverage.value=e}get turbulenceDisplacement(){return this.parameterUniforms.turbulenceDisplacement.value}set turbulenceDisplacement(e){this.parameterUniforms.turbulenceDisplacement.value=e}get scatterAnisotropy1(){return this.cloudsPass.currentMaterial.scatterAnisotropy1}set scatterAnisotropy1(e){this.cloudsPass.currentMaterial.scatterAnisotropy1=e}get scatterAnisotropy2(){return this.cloudsPass.currentMaterial.scatterAnisotropy2}set scatterAnisotropy2(e){this.cloudsPass.currentMaterial.scatterAnisotropy2=e}get scatterAnisotropyMix(){return this.cloudsPass.currentMaterial.scatterAnisotropyMix}set scatterAnisotropyMix(e){this.cloudsPass.currentMaterial.scatterAnisotropyMix=e}get skyLightScale(){return this.cloudsPass.currentMaterial.uniforms.skyLightScale.value}set skyLightScale(e){this.cloudsPass.currentMaterial.uniforms.skyLightScale.value=e}get groundBounceScale(){return this.cloudsPass.currentMaterial.uniforms.groundBounceScale.value}set groundBounceScale(e){this.cloudsPass.currentMaterial.uniforms.groundBounceScale.value=e}get powderScale(){return this.cloudsPass.currentMaterial.uniforms.powderScale.value}set powderScale(e){this.cloudsPass.currentMaterial.uniforms.powderScale.value=e}get powderExponent(){return this.cloudsPass.currentMaterial.uniforms.powderExponent.value}set powderExponent(e){this.cloudsPass.currentMaterial.uniforms.powderExponent.value=e}get atmosphereOverlay(){return this._atmosphereOverlay}get atmosphereShadow(){return this._atmosphereShadow}get atmosphereShadowLength(){return this._atmosphereShadowLength}get irradianceTexture(){return this.cloudsPass.currentMaterial.irradianceTexture}set irradianceTexture(e){this.cloudsPass.currentMaterial.irradianceTexture=e}get scatteringTexture(){return this.cloudsPass.currentMaterial.scatteringTexture}set scatteringTexture(e){this.cloudsPass.currentMaterial.scatteringTexture=e}get transmittanceTexture(){return this.cloudsPass.currentMaterial.transmittanceTexture}set transmittanceTexture(e){this.cloudsPass.currentMaterial.transmittanceTexture=e}get singleMieScatteringTexture(){return this.cloudsPass.currentMaterial.singleMieScatteringTexture}set singleMieScatteringTexture(e){this.cloudsPass.currentMaterial.singleMieScatteringTexture=e}get higherOrderScatteringTexture(){return this.cloudsPass.currentMaterial.higherOrderScatteringTexture}set higherOrderScatteringTexture(e){this.cloudsPass.currentMaterial.higherOrderScatteringTexture=e}get ellipsoid(){return this.cloudsPass.currentMaterial.ellipsoid}set ellipsoid(e){this.cloudsPass.currentMaterial.ellipsoid=e}get sunAngularRadius(){return this.cloudsPass.currentMaterial.sunAngularRadius}set sunAngularRadius(e){this.cloudsPass.currentMaterial.sunAngularRadius=e}}et([h.define("SKIP_RENDERING")],de.prototype,"skipRendering");const lt=128,ht=32,B="45a1c6c1bb9fd38b3680fd120795ff4c32df68ff",ut=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${B}/packages/clouds/assets/local_weather.png`,dt=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${B}/packages/clouds/assets/shape.bin`,pt=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${B}/packages/clouds/assets/shape_detail.bin`,ft=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${B}/packages/clouds/assets/turbulence.png`;exports.CLOUD_SHAPE_DETAIL_TEXTURE_SIZE=ht;exports.CLOUD_SHAPE_TEXTURE_SIZE=lt;exports.CloudLayer=S;exports.CloudLayers=W;exports.CloudsEffect=de;exports.DEFAULT_LOCAL_WEATHER_URL=ut;exports.DEFAULT_SHAPE_DETAIL_URL=pt;exports.DEFAULT_SHAPE_URL=dt;exports.DEFAULT_TURBULENCE_URL=ft;exports.DensityProfile=b;exports.cloudsPassOptionsDefaults=ue;
|
|
2175
|
+
`;var Qe=Object.defineProperty,et=(o,e,t,a)=>{for(var i=void 0,r=o.length-1,s;r>=0;r--)(s=o[r])&&(i=s(e,t,i)||i);return i&&Qe(e,t,i),i};const U=new n.Vector3,tt=new n.Vector2,nt=new n.Matrix3,at=["maxIterationCount","minStepSize","maxStepSize","maxRayDistance","perspectiveStepScale","minDensity","minExtinction","minTransmittance","maxIterationCountToSun","maxIterationCountToGround","minSecondaryStepSize","secondaryStepScale","maxShadowFilterRadius","maxShadowLengthIterationCount","minShadowLengthStepSize","maxShadowLengthRayDistance","hazeDensityScale","hazeExponent","hazeScatteringCoefficient","hazeAbsorptionCoefficient"],it=["multiScatteringOctaves","accurateSunSkyLight","accuratePhaseFunction"],rt=["maxIterationCount","minStepSize","maxStepSize","minDensity","minExtinction","minTransmittance","opticalDepthTailScale"],ot=["temporalJitter"],st=["temporalPass"],ct=["cascadeCount","mapSize","maxFar","farScale","splitMode","splitLambda"],y={type:"change"},ue={resolutionScale:c.resolutionScale,width:w.Resolution.AUTO_SIZE,height:w.Resolution.AUTO_SIZE};class de extends w.Effect{constructor(e=new n.Camera,t,a=z.AtmosphereParameters.DEFAULT){super("CloudsEffect",Je,{attributes:w.EffectAttribute.DEPTH,uniforms:new Map([["cloudsBuffer",new n.Uniform(null)]])}),this.camera=e,this.atmosphere=a,this.cloudLayers=W.DEFAULT.clone(),this.correctAltitude=!0,this.localWeatherRepeat=new n.Vector2().setScalar(100),this.localWeatherOffset=new n.Vector2,this.shapeRepeat=new n.Vector3().setScalar(3e-4),this.shapeOffset=new n.Vector3,this.shapeDetailRepeat=new n.Vector3().setScalar(.006),this.shapeDetailOffset=new n.Vector3,this.turbulenceRepeat=new n.Vector2().setScalar(20),this.worldToECEFMatrix=new n.Matrix4,this.ecefToWorldMatrix=new n.Matrix4,this.altitudeCorrection=new n.Vector3,this.sunDirection=new n.Vector3,this.localWeatherVelocity=new n.Vector2,this.shapeVelocity=new n.Vector3,this.shapeDetailVelocity=new n.Vector3,this._atmosphereOverlay=null,this._atmosphereShadow=null,this._atmosphereShadowLength=null,this.events=new n.EventDispatcher,this.frame=0,this.shadowCascadeCount=0,this.shadowMapSize=new n.Vector2,this.onResolutionChange=()=>{this.setSize(this.resolution.baseWidth,this.resolution.baseHeight)},this.skipRendering=!0;const{resolutionScale:i,width:r,height:s,resolutionX:l=r,resolutionY:u=s}={...ue,...t};this.shadowMaps=new Ee({cascadeCount:c.shadow.cascadeCount,mapSize:c.shadow.mapSize,splitLambda:.6}),this.parameterUniforms=qe({localWeatherTexture:this.proceduralLocalWeather?.texture??null,localWeatherRepeat:this.localWeatherRepeat,localWeatherOffset:this.localWeatherOffset,shapeTexture:this.proceduralShape?.texture??null,shapeRepeat:this.shapeRepeat,shapeOffset:this.shapeOffset,shapeDetailTexture:this.proceduralShapeDetail?.texture??null,shapeDetailRepeat:this.shapeDetailRepeat,shapeDetailOffset:this.shapeDetailOffset,turbulenceTexture:this.proceduralTurbulence?.texture??null,turbulenceRepeat:this.turbulenceRepeat}),this.layerUniforms=Xe(),this.atmosphereUniforms=$e(a,{worldToECEFMatrix:this.worldToECEFMatrix,ecefToWorldMatrix:this.ecefToWorldMatrix,altitudeCorrection:this.altitudeCorrection,sunDirection:this.sunDirection});const d={shadow:this.shadowMaps,parameterUniforms:this.parameterUniforms,layerUniforms:this.layerUniforms,atmosphereUniforms:this.atmosphereUniforms};this.shadowPass=new Ze(d),this.shadowPass.mainCamera=e,this.cloudsPass=new He(d,a),this.cloudsPass.mainCamera=e,this.clouds=h.definePropertyShorthand(h.defineUniformShorthand({},this.cloudsPass.currentMaterial,at),this.cloudsPass.currentMaterial,it),this.shadow=h.definePropertyShorthand(h.defineUniformShorthand({},this.shadowPass.currentMaterial,rt),this.shadowPass.currentMaterial,ot,this.shadowPass,st,this.shadowMaps,ct),this.resolution=new w.Resolution(this,l,u,i),this.resolution.addEventListener("change",this.onResolutionChange)}get mainCamera(){return this.camera}set mainCamera(e){this.camera=e,this.shadowPass.mainCamera=e,this.cloudsPass.mainCamera=e}initialize(e,t,a){this.shadowPass.initialize(e,t,a),this.cloudsPass.initialize(e,t,a)}updateSharedUniforms(e){Ke(this.layerUniforms,this.cloudLayers);const{parameterUniforms:t}=this;t.localWeatherOffset.value.add(tt.copy(this.localWeatherVelocity).multiplyScalar(e)),t.shapeOffset.value.add(U.copy(this.shapeVelocity).multiplyScalar(e)),t.shapeDetailOffset.value.add(U.copy(this.shapeDetailVelocity).multiplyScalar(e));const a=this.worldToECEFMatrix;this.ecefToWorldMatrix.copy(a).invert();const i=this.camera.getWorldPosition(U).applyMatrix4(this.worldToECEFMatrix),r=this.altitudeCorrection;this.correctAltitude?z.getAltitudeCorrectionOffset(i,this.atmosphere.bottomRadius,this.ellipsoid,r):r.setScalar(0);const s=this.ellipsoid.getSurfaceNormal(i,U),l=this.sunDirection.dot(s),u=h.lerp(1e6,1e3,l),d=nt.setFromMatrix4(a).transpose();this.shadowMaps.update(this.camera,U.copy(this.sunDirection).applyMatrix3(d),u)}updateWeatherTextureChannels(){const e=this.cloudLayers.localWeatherChannels;this.cloudsPass.currentMaterial.localWeatherChannels=e,this.shadowPass.currentMaterial.localWeatherChannels=e}updateAtmosphereComposition(){const{shadowMaps:e,shadowPass:t,cloudsPass:a}=this,i=t.currentMaterial.uniforms,r=a.currentMaterial.uniforms,s=this._atmosphereOverlay,l=Object.assign(this._atmosphereOverlay??{},{map:a.outputBuffer});s!==l&&(this._atmosphereOverlay=l,y.target=this,y.property="atmosphereOverlay",this.events.dispatchEvent(y));const u=this._atmosphereShadow,d=Object.assign(this._atmosphereShadow??{},{map:t.outputBuffer,mapSize:e.mapSize,cascadeCount:e.cascadeCount,intervals:r.shadowIntervals.value,matrices:r.shadowMatrices.value,inverseMatrices:i.inverseShadowMatrices.value,far:e.far,topHeight:r.shadowTopHeight.value});u!==d&&(this._atmosphereShadow=d,y.target=this,y.property="atmosphereShadow",this.events.dispatchEvent(y));const p=this._atmosphereShadowLength,f=a.shadowLengthBuffer!=null?Object.assign(this._atmosphereShadowLength??{},{map:a.shadowLengthBuffer}):null;p!==f&&(this._atmosphereShadowLength=f,y.target=this,y.property="atmosphereShadowLength",this.events.dispatchEvent(y))}update(e,t,a=0){const{shadowMaps:i,shadowPass:r,cloudsPass:s}=this;if(i.cascadeCount!==this.shadowCascadeCount||!i.mapSize.equals(this.shadowMapSize)){const{width:l,height:u}=i.mapSize,d=i.cascadeCount;this.shadowMapSize.set(l,u),this.shadowCascadeCount=d,r.setSize(l,u,d),s.setShadowSize(l,u,d)}this.proceduralLocalWeather?.render(e,a),this.proceduralShape?.render(e,a),this.proceduralShapeDetail?.render(e,a),this.proceduralTurbulence?.render(e,a),++this.frame,this.updateSharedUniforms(a),this.updateWeatherTextureChannels(),r.update(e,this.frame,a),s.shadowBuffer=r.outputBuffer,s.update(e,this.frame,a),this.updateAtmosphereComposition(),this.uniforms.get("cloudsBuffer").value=this.cloudsPass.outputBuffer}setSize(e,t){const{resolution:a}=this;a.setBaseSize(e,t);const{width:i,height:r}=a;this.cloudsPass.setSize(i,r)}setDepthTexture(e,t){this.shadowPass.setDepthTexture(e,t),this.cloudsPass.setDepthTexture(e,t)}set qualityPreset(e){const{clouds:t,shadow:a,...i}=_e[e];Object.assign(this,i),Object.assign(this.clouds,t),Object.assign(this.shadow,a)}get localWeatherTexture(){return this.proceduralLocalWeather??this.parameterUniforms.localWeatherTexture.value}set localWeatherTexture(e){e instanceof n.Texture||e==null?(this.proceduralLocalWeather=void 0,this.parameterUniforms.localWeatherTexture.value=e):(this.proceduralLocalWeather=e,this.parameterUniforms.localWeatherTexture.value=e.texture)}get shapeTexture(){return this.proceduralShape??this.parameterUniforms.shapeTexture.value}set shapeTexture(e){e instanceof n.Data3DTexture||e==null?(this.proceduralShape=void 0,this.parameterUniforms.shapeTexture.value=e):(this.proceduralShape=e,this.parameterUniforms.shapeTexture.value=e.texture)}get shapeDetailTexture(){return this.proceduralShapeDetail??this.parameterUniforms.shapeDetailTexture.value}set shapeDetailTexture(e){e instanceof n.Data3DTexture||e==null?(this.proceduralShapeDetail=void 0,this.parameterUniforms.shapeDetailTexture.value=e):(this.proceduralShapeDetail=e,this.parameterUniforms.shapeDetailTexture.value=e.texture)}get turbulenceTexture(){return this.proceduralTurbulence??this.parameterUniforms.turbulenceTexture.value}set turbulenceTexture(e){e instanceof n.Texture||e==null?(this.proceduralTurbulence=void 0,this.parameterUniforms.turbulenceTexture.value=e):(this.proceduralTurbulence=e,this.parameterUniforms.turbulenceTexture.value=e.texture)}get stbnTexture(){return this.cloudsPass.currentMaterial.uniforms.stbnTexture.value}set stbnTexture(e){this.cloudsPass.currentMaterial.uniforms.stbnTexture.value=e,this.shadowPass.currentMaterial.uniforms.stbnTexture.value=e}get resolutionScale(){return this.resolution.scale}set resolutionScale(e){this.resolution.scale=e}get temporalUpscale(){return this.cloudsPass.temporalUpscale}set temporalUpscale(e){this.cloudsPass.temporalUpscale=e}get lightShafts(){return this.cloudsPass.lightShafts}set lightShafts(e){this.cloudsPass.lightShafts=e}get shapeDetail(){return this.cloudsPass.currentMaterial.shapeDetail}set shapeDetail(e){this.cloudsPass.currentMaterial.shapeDetail=e,this.shadowPass.currentMaterial.shapeDetail=e}get turbulence(){return this.cloudsPass.currentMaterial.turbulence}set turbulence(e){this.cloudsPass.currentMaterial.turbulence=e,this.shadowPass.currentMaterial.turbulence=e}get haze(){return this.cloudsPass.currentMaterial.haze}set haze(e){this.cloudsPass.currentMaterial.haze=e}get scatteringCoefficient(){return this.parameterUniforms.scatteringCoefficient.value}set scatteringCoefficient(e){this.parameterUniforms.scatteringCoefficient.value=e}get absorptionCoefficient(){return this.parameterUniforms.absorptionCoefficient.value}set absorptionCoefficient(e){this.parameterUniforms.absorptionCoefficient.value=e}get coverage(){return this.parameterUniforms.coverage.value}set coverage(e){this.parameterUniforms.coverage.value=e}get turbulenceDisplacement(){return this.parameterUniforms.turbulenceDisplacement.value}set turbulenceDisplacement(e){this.parameterUniforms.turbulenceDisplacement.value=e}get scatterAnisotropy1(){return this.cloudsPass.currentMaterial.scatterAnisotropy1}set scatterAnisotropy1(e){this.cloudsPass.currentMaterial.scatterAnisotropy1=e}get scatterAnisotropy2(){return this.cloudsPass.currentMaterial.scatterAnisotropy2}set scatterAnisotropy2(e){this.cloudsPass.currentMaterial.scatterAnisotropy2=e}get scatterAnisotropyMix(){return this.cloudsPass.currentMaterial.scatterAnisotropyMix}set scatterAnisotropyMix(e){this.cloudsPass.currentMaterial.scatterAnisotropyMix=e}get skyLightScale(){return this.cloudsPass.currentMaterial.uniforms.skyLightScale.value}set skyLightScale(e){this.cloudsPass.currentMaterial.uniforms.skyLightScale.value=e}get groundBounceScale(){return this.cloudsPass.currentMaterial.uniforms.groundBounceScale.value}set groundBounceScale(e){this.cloudsPass.currentMaterial.uniforms.groundBounceScale.value=e}get powderScale(){return this.cloudsPass.currentMaterial.uniforms.powderScale.value}set powderScale(e){this.cloudsPass.currentMaterial.uniforms.powderScale.value=e}get powderExponent(){return this.cloudsPass.currentMaterial.uniforms.powderExponent.value}set powderExponent(e){this.cloudsPass.currentMaterial.uniforms.powderExponent.value=e}get atmosphereOverlay(){return this._atmosphereOverlay}get atmosphereShadow(){return this._atmosphereShadow}get atmosphereShadowLength(){return this._atmosphereShadowLength}get irradianceTexture(){return this.cloudsPass.currentMaterial.irradianceTexture}set irradianceTexture(e){this.cloudsPass.currentMaterial.irradianceTexture=e}get scatteringTexture(){return this.cloudsPass.currentMaterial.scatteringTexture}set scatteringTexture(e){this.cloudsPass.currentMaterial.scatteringTexture=e}get transmittanceTexture(){return this.cloudsPass.currentMaterial.transmittanceTexture}set transmittanceTexture(e){this.cloudsPass.currentMaterial.transmittanceTexture=e}get singleMieScatteringTexture(){return this.cloudsPass.currentMaterial.singleMieScatteringTexture}set singleMieScatteringTexture(e){this.cloudsPass.currentMaterial.singleMieScatteringTexture=e}get higherOrderScatteringTexture(){return this.cloudsPass.currentMaterial.higherOrderScatteringTexture}set higherOrderScatteringTexture(e){this.cloudsPass.currentMaterial.higherOrderScatteringTexture=e}get ellipsoid(){return this.cloudsPass.currentMaterial.ellipsoid}set ellipsoid(e){this.cloudsPass.currentMaterial.ellipsoid=e}get sunAngularRadius(){return this.cloudsPass.currentMaterial.sunAngularRadius}set sunAngularRadius(e){this.cloudsPass.currentMaterial.sunAngularRadius=e}}et([h.define("SKIP_RENDERING")],de.prototype,"skipRendering");const lt=128,ht=32,V="45a1c6c1bb9fd38b3680fd120795ff4c32df68ff",ut=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${V}/packages/clouds/assets/local_weather.png`,dt=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${V}/packages/clouds/assets/shape.bin`,pt=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${V}/packages/clouds/assets/shape_detail.bin`,ft=`https://media.githubusercontent.com/media/takram-design-engineering/three-geospatial/${V}/packages/clouds/assets/turbulence.png`;exports.CLOUD_SHAPE_DETAIL_TEXTURE_SIZE=ht;exports.CLOUD_SHAPE_TEXTURE_SIZE=lt;exports.CloudLayer=S;exports.CloudLayers=W;exports.CloudsEffect=de;exports.DEFAULT_LOCAL_WEATHER_URL=ut;exports.DEFAULT_SHAPE_DETAIL_URL=pt;exports.DEFAULT_SHAPE_URL=dt;exports.DEFAULT_TURBULENCE_URL=ft;exports.DensityProfile=b;exports.cloudsPassOptionsDefaults=ue;
|
|
2181
2176
|
//# sourceMappingURL=shared.cjs.map
|
package/build/shared.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.cjs","sources":["../src/DensityProfile.ts","../src/CloudLayer.ts","../src/CloudLayers.ts","../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/helpers/FrustumCorners.ts","../src/helpers/splitFrustum.ts","../src/CascadedShadowMaps.ts","../src/bayer.ts","../src/qualityPresets.ts","../src/shaders/clouds.frag?raw","../src/shaders/clouds.glsl?raw","../src/shaders/clouds.vert?raw","../src/shaders/parameters.glsl?raw","../src/shaders/types.glsl?raw","../src/CloudsMaterial.ts","../src/shaders/catmullRomSampling.glsl?raw","../src/shaders/cloudsResolve.frag?raw","../src/shaders/cloudsResolve.vert?raw","../src/shaders/varianceClipping.glsl?raw","../src/CloudsResolveMaterial.ts","../src/PassBase.ts","../src/CloudsPass.ts","../src/helpers/setArrayRenderTargetLayers.ts","../src/ShaderArrayPass.ts","../src/shaders/shadow.frag?raw","../src/shaders/shadow.vert?raw","../src/shaders/structuredSampling.glsl?raw","../src/ShadowMaterial.ts","../src/shaders/shadowResolve.frag?raw","../src/shaders/shadowResolve.vert?raw","../src/ShadowResolveMaterial.ts","../src/ShadowPass.ts","../src/uniforms.ts","../src/shaders/cloudsEffect.frag?raw","../src/CloudsEffect.ts","../src/constants.ts"],"names":["DensityProfile","expTerm","exponent","linearTerm","constantTerm","other","paramKeys","applyOptions","target","params","key","value","_CloudLayer","options","CloudLayer","entriesScratch","intervalsScratch","compareEntries","a","b","_CloudLayers","result","minIntervals","maxIntervals","i","layer","entry","intervalIndex","balance","entryIndex","flag","interval","CloudLayers","isProduction","prefix","invariant","condition","message","FrustumCorners","camera","far","Vector3","isOrthographic","inverseProjectionMatrix","corner","absZ","clipDepths","index","frustum","matrix","modes","count","near","_","lambda","uniform","logarithmic","lerp","splitFrustum","mode","vectorScratch1","vectorScratch2","matrixScratch1","Matrix4","matrixScratch2","frustumScratch","boxScratch","Box3","cascadedShadowMapsDefaults","CascadedShadowMaps","Vector2","cascadeCount","mapSize","maxFar","farScale","splitMode","splitLambda","margin","fade","splits","cascades","nearCorners","farCorners","diagonalLength","distance","sunDirection","lightOrientationMatrix","Object3D","cameraToLightMatrix","frusta","cascade","radius","left","right","top","bottom","bbox","j","center","texelWidth","texelHeight","position","inverseMatrix","projectionMatrix","viewMatrix","inverseViewMatrix","bayerIndices","bayerOffsets","offset","values","defaults","qualityPresets","fragmentShader$4","clouds","vertexShader$3","parameters","types","vectorScratch","geodeticScratch","Geodetic","CloudsMaterial","AtmosphereMaterialBase","parameterUniforms","layerUniforms","atmosphereUniforms","atmosphere","AtmosphereParameters","GLSL3","resolveIncludes","vertexShader","common","definitions","runtime","unrollLoops","fragmentShader","depth","math","turbo","generators","raySphereIntersection","cascadedShadowMaps","interleavedGradientNoise","vogelDisk","Uniform","Vector4","renderer","scene","geometry","object","group","prevLogarithmicDepthBuffer","nextLogarithmicDepthBuffer","prevPowder","nextPowder","prevGroundIrradiance","uniforms","previousProjectionMatrix","previousViewMatrix","reprojectionMatrix","viewReprojectionMatrix","frame","resolution","dx","dy","reinterpretType","cameraPosition","cameraPositionECEF","width","height","targetWidth","targetHeight","__decorateClass","defineInt","defineExpression","define","defineFloat","catmullRomSampling","fragmentShader$3","vertexShader$2","varianceClipping","CloudsResolveMaterial","RawShaderMaterial","colorBuffer","depthVelocityBuffer","shadowLengthBuffer","colorHistoryBuffer","shadowLengthHistoryBuffer","PassBase","Pass","name","Camera","shadow","createRenderTarget","depthVelocity","shadowLength","renderTarget","WebGLRenderTarget","HalfFloatType","LinearFilter","RedFormat","CloudsPass","ShaderPass","alpha","frameBufferType","current","resolve","history","resolveUniforms","currentUniforms","nextResolve","nextHistory","deltaTime","lowResWidth","lowResHeight","depthTexture","depthPacking","setArrayRenderTargetLayers","outputBuffer","glTexture","gl","drawBuffers","ShaderArrayPass","inputBuffer","stencilTest","fragmentShader$2","vertexShader$1","structuredSampling","ShadowMaterial","fragmentShader$1","ShadowResolveMaterial","historyBuffer","WebGLArrayRenderTarget","ShadowPass","createCloudParameterUniforms","instances","createCloudLayerUniforms","shadowLayerMask","updateCloudLayerUniforms","layers","densityProfile","totalMinHeight","totalMaxHeight","shadowBottomHeight","shadowTopHeight","altitude","maxHeight","createAtmosphereUniforms","vector3Scratch","vector2Scratch","rotationScratch","Matrix3","cloudsUniformKeys","cloudsMaterialParameterKeys","shadowUniformKeys","shadowMaterialParameterKeys","shadowPassParameterKeys","shadowMapsParameterKeys","changeEvent","cloudsPassOptionsDefaults","Resolution","CloudsEffect","Effect","EffectAttribute","EventDispatcher","resolutionScale","resolutionX","resolutionY","passOptions","definePropertyShorthand","defineUniformShorthand","worldToECEFMatrix","altitudeCorrection","getAltitudeCorrectionOffset","surfaceNormal","zenithAngle","ecefToWorldRotation","shadowMaps","shadowPass","cloudsPass","shadowUniforms","cloudsUniforms","prevOverlay","nextOverlay","prevShadow","nextShadow","prevShadowLength","nextShadowLength","baseWidth","baseHeight","props","Texture","Data3DTexture","CLOUD_SHAPE_TEXTURE_SIZE","CLOUD_SHAPE_DETAIL_TEXTURE_SIZE","ref","DEFAULT_LOCAL_WEATHER_URL","DEFAULT_SHAPE_URL","DEFAULT_SHAPE_DETAIL_URL","DEFAULT_TURBULENCE_URL"],"mappings":"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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;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;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;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;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;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,ECAfC,GAAe;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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,GAAe;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;AAA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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,ECAfC,GAAe;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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","x_google_ignoreList":[3]}
|
|
1
|
+
{"version":3,"file":"shared.cjs","sources":["../src/DensityProfile.ts","../src/CloudLayer.ts","../src/CloudLayers.ts","../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/helpers/FrustumCorners.ts","../src/helpers/splitFrustum.ts","../src/CascadedShadowMaps.ts","../src/bayer.ts","../src/qualityPresets.ts","../src/shaders/clouds.frag?raw","../src/shaders/clouds.glsl?raw","../src/shaders/clouds.vert?raw","../src/shaders/parameters.glsl?raw","../src/shaders/types.glsl?raw","../src/CloudsMaterial.ts","../src/shaders/catmullRomSampling.glsl?raw","../src/shaders/cloudsResolve.frag?raw","../src/shaders/cloudsResolve.vert?raw","../src/shaders/varianceClipping.glsl?raw","../src/CloudsResolveMaterial.ts","../src/PassBase.ts","../src/CloudsPass.ts","../src/helpers/setArrayRenderTargetLayers.ts","../src/ShaderArrayPass.ts","../src/shaders/shadow.frag?raw","../src/shaders/shadow.vert?raw","../src/shaders/structuredSampling.glsl?raw","../src/ShadowMaterial.ts","../src/shaders/shadowResolve.frag?raw","../src/shaders/shadowResolve.vert?raw","../src/ShadowResolveMaterial.ts","../src/ShadowPass.ts","../src/uniforms.ts","../src/shaders/cloudsEffect.frag?raw","../src/CloudsEffect.ts","../src/constants.ts"],"names":["DensityProfile","expTerm","exponent","linearTerm","constantTerm","other","paramKeys","applyOptions","target","params","key","value","_CloudLayer","options","CloudLayer","entriesScratch","intervalsScratch","compareEntries","a","b","_CloudLayers","result","minIntervals","maxIntervals","i","layer","entry","intervalIndex","balance","entryIndex","flag","interval","CloudLayers","isProduction","prefix","invariant","condition","message","FrustumCorners","camera","far","Vector3","isOrthographic","inverseProjectionMatrix","corner","absZ","clipDepths","index","frustum","matrix","modes","count","near","_","lambda","uniform","logarithmic","lerp","splitFrustum","mode","vectorScratch1","vectorScratch2","matrixScratch1","Matrix4","matrixScratch2","frustumScratch","boxScratch","Box3","cascadedShadowMapsDefaults","CascadedShadowMaps","Vector2","cascadeCount","mapSize","maxFar","farScale","splitMode","splitLambda","margin","fade","splits","cascades","nearCorners","farCorners","diagonalLength","distance","sunDirection","lightOrientationMatrix","Object3D","cameraToLightMatrix","frusta","cascade","radius","left","right","top","bottom","bbox","j","center","texelWidth","texelHeight","position","inverseMatrix","projectionMatrix","viewMatrix","inverseViewMatrix","bayerIndices","bayerOffsets","offset","values","defaults","qualityPresets","fragmentShader$4","clouds","vertexShader$3","parameters","types","vectorScratch","geodeticScratch","Geodetic","CloudsMaterial","AtmosphereMaterialBase","parameterUniforms","layerUniforms","atmosphereUniforms","atmosphere","AtmosphereParameters","GLSL3","resolveIncludes","vertexShader","common","definitions","runtime","unrollLoops","fragmentShader","depth","math","turbo","generators","raySphereIntersection","cascadedShadowMaps","interleavedGradientNoise","vogelDisk","Uniform","Vector4","renderer","scene","geometry","object","group","prevLogarithmicDepthBuffer","nextLogarithmicDepthBuffer","prevPowder","nextPowder","prevGroundIrradiance","uniforms","previousProjectionMatrix","previousViewMatrix","reprojectionMatrix","viewReprojectionMatrix","frame","resolution","dx","dy","reinterpretType","cameraPosition","cameraPositionECEF","width","height","targetWidth","targetHeight","__decorateClass","defineInt","defineExpression","define","defineFloat","catmullRomSampling","fragmentShader$3","vertexShader$2","varianceClipping","CloudsResolveMaterial","RawShaderMaterial","colorBuffer","depthVelocityBuffer","shadowLengthBuffer","colorHistoryBuffer","shadowLengthHistoryBuffer","PassBase","Pass","name","Camera","shadow","createRenderTarget","depthVelocity","shadowLength","renderTarget","WebGLRenderTarget","HalfFloatType","LinearFilter","RedFormat","CloudsPass","ShaderPass","alpha","frameBufferType","current","resolve","history","resolveUniforms","currentUniforms","nextResolve","nextHistory","deltaTime","lowResWidth","lowResHeight","depthTexture","depthPacking","setArrayRenderTargetLayers","outputBuffer","glTexture","gl","drawBuffers","ShaderArrayPass","inputBuffer","stencilTest","fragmentShader$2","vertexShader$1","structuredSampling","ShadowMaterial","fragmentShader$1","ShadowResolveMaterial","historyBuffer","WebGLArrayRenderTarget","ShadowPass","createCloudParameterUniforms","instances","createCloudLayerUniforms","shadowLayerMask","updateCloudLayerUniforms","layers","densityProfile","totalMinHeight","totalMaxHeight","shadowBottomHeight","shadowTopHeight","altitude","maxHeight","createAtmosphereUniforms","vector3Scratch","vector2Scratch","rotationScratch","Matrix3","cloudsUniformKeys","cloudsMaterialParameterKeys","shadowUniformKeys","shadowMaterialParameterKeys","shadowPassParameterKeys","shadowMapsParameterKeys","changeEvent","cloudsPassOptionsDefaults","Resolution","CloudsEffect","Effect","EffectAttribute","EventDispatcher","resolutionScale","resolutionX","resolutionY","passOptions","definePropertyShorthand","defineUniformShorthand","worldToECEFMatrix","altitudeCorrection","getAltitudeCorrectionOffset","surfaceNormal","zenithAngle","ecefToWorldRotation","shadowMaps","shadowPass","cloudsPass","shadowUniforms","cloudsUniforms","prevOverlay","nextOverlay","prevShadow","nextShadow","prevShadowLength","nextShadowLength","baseWidth","baseHeight","props","Texture","Data3DTexture","CLOUD_SHAPE_TEXTURE_SIZE","CLOUD_SHAPE_DETAIL_TEXTURE_SIZE","ref","DEFAULT_LOCAL_WEATHER_URL","DEFAULT_SHAPE_URL","DEFAULT_SHAPE_DETAIL_URL","DEFAULT_TURBULENCE_URL"],"mappings":"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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;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;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;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;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;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,ECAfC,GAAe;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;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAfC,GAAe;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;AAA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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,ECAfC,GAAe;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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","x_google_ignoreList":[3]}
|